3.12.3 Addition of a virtual server (deployment/OS initial setup)
Function
This service template starts an instance from a server image in a KVM environment managed by OpenStack.
The OpenStack-related terms used in this document are names displayed in the OpenStack Dashboard. These terms are as follows:
- Identity
Displayed as "Identity" or "KeyStone".
- Instance type
Displayed as an instance type or flavor.
- Project
Displayed as a project or tenant.
To use this service template, the following servers are required:
- OpenStack server
A server on which OpenStack is installed
- KVM server
A server on which a Kernel-based Virtual Machine is installed
- OpenStack control server
A server that executes REST-API functions on the OpenStack server
- Instance
An instance (a normal virtual server) managed by the OpenStack server and by KVM
The following is an overview of the processing:
(1) An instance is started from a server image.
1. The server image, instance name, instance type, and networks (for management and job execution) are specified. Optionally, key pairs and security groups can also be specified.
2. The OpenStack DHCP function is used to assign an IP address dynamically during OS startup.
3. If the property openstack.floatingIpOption is specified, a floating IP address is assigned.
(2) The OS initial settings are specified.
1. The computer name is specified. Optionally, the time zone and DNS suffix can also be specified.
Note the following regarding the specification of properties:
(1) To assign a floating IP address to an instance, select "yes" from the list for the property openstack.floatingIpOption, and then specify the floating IP address for the property openstack.floatingIpAddress. If you do not specify a floating address, the first floating IP address obtained from the floating IP address pool for the network specified by the property openstack.networkNameExt will be set.
(2) If you omit the property openstack.securityGroupName, "default" is set for the security group name.
(3) Make sure to specify the properties OS.destIPAddress, OS.subnetMaskStaticRoute, and OS.defaultGWStaticRoute. If you omit any of these properties, no static route will be set.
(4) Specifiable time zones are as follows:
America/Adak
America/Anchorage
America/Boise
America/Chicago
America/Denver
America/Detroit
America/Indiana/Indianapolis
America/Indiana/Knox
America/Indiana/Marengo
America/Indiana/Petersburg
America/Indiana/Tell_City
America/Indiana/Vevay
America/Indiana/Vincennes
America/Indiana/Winamac
America/Juneau
America/Kentucky/Monticello
America/Los_Angeles
America/Louisville
America/Menominee
America/Monterrey
America/Montevideo
America/New_York
America/Nome
America/North_Dakota/Beulah
America/North_Dakota/Center
America/North_Dakota/New_Salem
America/Phoenix
America/Shiprock
America/Tijuana
America/Vancouver
America/Yakutat
Asia/Chongqing
Asia/Hong_Kong
Asia/Kolkata
Asia/Macau
Asia/Shanghai
Asia/Singapore
Asia/Tokyo
Etc/UTC
Europe/London
Pacific/Honolulu
If no time zone is specified, the time zone set for the server image is used.
(5) When specifying the property OS.dnsSuffix, make sure to add the DNS suffix to the file /etc/resolv.conf.
Prerequisites
For the most recent information about the prerequisite products for the system, prerequisite products for the system executing the service templates, and the supported OSs for the prerequisite products for the system executing the service templates, see the Release Notes.
Prerequisite products for the system:
JP1/Automatic Operation 12-00 or later
Prerequisite products for the execution-target server:
(1) Prerequisite products for the OpenStack server
- OpenStack
(2) Virtualization environment that manages the instance
- Kernel-based Virtual Machine
- VMware vCenter Server
- VMware vSphere ESXi
(3) OpenStack control server
- Microsoft .Net Framework 3.5 or later
Supported OSs for the prerequisite products for the execution-target server:
(1)Prerequisite OS for the instance
- Red Hat Enterprise Linux Server 6 (32-bit x86) or Red Hat Enterprise Linux Server 6 (64-bit x86_64)
- Red Hat Enterprise Linux Server 7 (64-bit x86_64)
The net-tools package must be installed.
(2)Prerequisite OS for the OpenStack server:
- Windows Server 2008 R2 Standard/Enterprise/Datacenter
- Windows Server 2012 Standard/Datacenter or Windows Server 2012 R2 Standard/Datacenter
Note: Environments where Server Core is installed are excluded.
Conditions for using the prerequisite products on the system executing the service template:
(1) Conditions for using the prerequisite products in the execution-target system:
- In the subnet settings of the network to which the instance is connected, DHCP must be enabled so that an IP address can be assigned dynamically.
- The server image used to start the instance must already be created.
- The instance type used to start the instance must already be created.
- The network used to start the instance must already be created.
- The image name must be unique within the project.
- The instance type name must be unique within the project.
- The network name must be unique within the project.
(2) Conditions related to the server image used to start the instance
- Agentless connection must be possible.
- The firewall must permit ICMP (ECHO) replies.
(3) Conditions related to instances
- The names of instances within the same project must be unique.
(4) Conditions related to this product
- To use an internal network for communication between the local server and an instance, you must first register the certificate information for the IP address to be assigned from the IP address pool to the instance. Make sure the IP address is registered for the agentless connection-destination definition in the [Management] tab.
- To use an external network for communication between the local server and an instance, you must first register the certificate information for the IP address to be assigned from the floating IP address pool to the instance. Make sure the IP address is registered for the agentless connection-destination definition in the [Management] tab.
Cautions
(1) Do not operate an instance during instance startup. If you do so, instance startup might fail. In addition, do not directly operate an instance from the OpenStack server.
(2) To use an external network for communication with the local server, select "yes" from the list for the property openstack.floatingIpOption. If you select "no", the task terminates abnormally, because the local server cannot access the instance.
(3) If you select "yes" from the list for the property openstack.floatingIpOption, make sure to specify the property openstack.networkNameExt. If you omit the property openstack.networkNameExt, the task terminates abnormally, because the external network from which the floating IP address is to be obtained cannot be identified.
(4) If you select "https" from the list for the property openstack.protocol, make sure the certificate for the OpenStack server is a public certificate. If it is not a public certificate, the task terminates abnormally, because the authenticity of the certificate cannot be verified.
(5) If the instance OS is Red Hat Enterprise Linux 5, you might be unable to set America, North_Dakota, or Beulah for the time zone. Before setting America, North_Dakota, or Beulah for the time zone, check whether they can be set for the instance OS.
Execution privilege
(1) The following authority is required for the user who logs in to the OpenStack server.
Admin privileges
Version
03.00.00
Tags
Add VM,OpenStack
Property list
The following shows the list of the property groups set in the property:
Property group |
Description |
Initial display |
---|---|---|
Cloud platform environment information |
Specify the OpenStack information. |
Y |
Instance information |
Specify the information about the instance to be started. |
Y |
OS information |
Specify the OS information for the instance. |
Y |
Floating IP address information |
Specify information about the floating IP address to be assigned to the instance. |
Y |
Run-time option |
The property for checking the status before starting the instance. Change this option, if necessary. |
N |
The following shows the list of the properties to be displayed in the "Service Definition" window:
- (Legend)
-
R: The property must be specified.
O: The property can be omitted. However, the property might be mandatory depending on what is specified for other properties. See the Description of each property.
Property key |
Property name |
Description |
I/O type |
Shared |
Required |
Property group |
---|---|---|---|---|---|---|
openstack.targetHost |
Host name of the OpenStack control server |
Specify the host name or IP address of the OpenStack control server. Make sure that you do not specify an IPv6 address. |
Input |
Disabled |
R |
Cloud platform environment information |
openstack.identityServerHostName |
Host name of the Identity server |
Specify the host name or IP address of the Identity server. Make sure that you do not specify an IPv6 address. |
Input |
Disabled |
R |
Cloud platform environment information |
openstack.userName |
User name for logging in to the Identity server |
Specify the user name for logging in to the Identity server. |
Input |
Disabled |
R |
Cloud platform environment information |
openstack.password |
Password for logging in to the Identity server |
Specify the password for logging in to the Identity server. |
Input |
Disabled |
R |
Cloud platform environment information |
openstack.protocol |
Identity server connection protocol |
Specify the protocol that is used to connect to the Identity server. |
Input |
Disabled |
R |
Cloud platform environment information |
openstack.portNumber |
Port number for connecting to the Identity server |
Specify the port number for logging in to the Identity server. |
Input |
Disabled |
R |
Cloud platform environment information |
openstack.projectName |
Project name |
Specify the name of the project that starts the instance. |
Input |
Disabled |
R |
Instance information |
OS.destIPAddress |
Destination IP of static route |
Specify the static-route destination IP address. Make sure not to specify an IPv6 address. |
Input |
Disabled |
O |
OS information |
OS.subnetMaskStaticRoute |
Subnet mask (static route) |
Specify the subnet mask for the static route. You cannot specify an IPv6 address. |
Input |
Disabled |
O |
OS information |
OS.defaultGWStaticRoute |
Default gateway (static route) |
Specify the default gateway for the static route. You cannot specify an IPv6 address. |
Input |
Disabled |
O |
OS information |
openstack.checkInstanceStateCount |
Instance status check count |
Specify the maximum number of times the instance status is checked to see whether the instance has been started. This value and the instance status check interval determine the maximum wait time. |
Input |
Disabled |
R |
Run-time option |
openstack.checkInstanceStateInterval |
Instance status check interval |
Specify in seconds the interval at which to check the instance status to see whether the instance has been started. |
Input |
Disabled |
R |
Run-time option |
openstack.checkOSStateWaittime |
OS startup wait time |
Specify in seconds the maximum wait time for checking startup of OS. |
Input |
Disabled |
R |
Run-time option |
The following shows the list of the properties to be displayed on the "Service Definition" window and the "Submit Service" window:
Property key |
Property name |
Description |
I/O type |
Shared |
Required |
Property group |
---|---|---|---|---|---|---|
openstack.instanceName |
Instance name |
Specify the instance name. Note that the name you specify here is the display name of the instance in OpenStack, and is different from a host name in the OS. |
Input |
Disabled |
R |
Instance information |
openstack.imageName |
Server image name |
Specify the name of the server image. |
Input |
Disabled |
R |
Instance information |
openstack.instanceTypeName |
Instance type name |
Specify the instance type name. |
Input |
Disabled |
R |
Instance information |
openstack.keyPairName |
Key pair name |
Specify the name of the key pair. |
Input |
Disabled |
O |
Instance information |
openstack.securityGroupName |
Security group name |
Specify the name of the security group. |
Input |
Disabled |
O |
Instance information |
openstack.networkNameMng |
Network name (for management use) |
Specify the name of the management-use network to be set for the instance. |
Input |
Disabled |
R |
Instance information |
openstack.networkNameBiz |
Network name (for operation use) |
Specify the name of the operation-use network to be set for the instance. |
Input |
Disabled |
O |
Instance information |
OS.computerName |
Host name |
Specify the host name of the OS. |
Input |
Disabled |
R |
OS information |
OS.timeZoneLin |
Time zone |
Specify the time zone to be set for the instance OS. If you do not specify a time zone, the time zone of the server image is used. |
Input |
Disabled |
O |
OS information |
OS.dnsSuffix |
DNS suffix name |
Specify the DNS suffix name. |
Input |
Disabled |
O |
OS information |
openstack.floatingIpOption |
Whether to allocate a floating IP address |
Specify whether to allocate a floating IP address to the instance. If you want to allocate a floating IP address to the instance, select "yes". If you do not want to allocate a floating IP address to the instance, select "no". |
Input |
Disabled |
R |
Floating IP address information |
openstack.networkNameExt |
Network name (for external connection) |
Specify the name of the external network from which the floating IP address is to be obtained. |
Input |
Disabled |
O |
Floating IP address information |
openstack.floatingIpAddress |
Floating IP address |
Specify the floating IP address to be allocated to the instance. Make sure that you do not specify an IPv6 address. |
Input |
Disabled |
O |
Floating IP address information |
The following shows the list of the properties to be displayed in the "Task Details" window only:
Property key |
Property name |
Description |
I/O type |
Shared |
---|---|---|---|---|
openstack.ipAddressMng |
IP address (for management use) |
Stores the IP address allocated to the management-use network of the instance. |
Output |
Disabled |
openstack.ipAddressBiz |
IP address (for operation use) |
Stores the IP address allocated to the operation-use network of the instance. |
Output |
Disabled |
openstack.floatingIpAddressWork |
Floating IP address |
Stores the floating IP address allocated to the instance. |
Output |
Disabled |
The following shows the restrictions on inputs to the properties displayed in the "Service Definition" window:
Property key |
Characters that can be input |
---|---|
openstack.targetHost |
A string that has 256 or fewer single-byte alphanumeric characters, including periods (.) and hyphens (-) |
openstack.identityServerHostName |
A string that has 256 or fewer single-byte alphanumeric characters, including periods (.) and hyphens (-) |
openstack.userName |
A string that has 64 or fewer single-byte alphanumeric characters |
openstack.password |
A string that has 256 or fewer single-byte alphanumeric characters |
openstack.protocol |
Select one of the following values: http,https |
openstack.portNumber |
An integer in the range from 1 to 65,535 |
openstack.projectName |
A string that has 80 or fewer characters. The following symbols cannot be used: < > | ; & ' " * ? [ ] ` % \ |
OS.destIPAddress |
A maximum of 15 characters can be entered. Characters that can be used include alphanumeric characters, as well as . . |
OS.subnetMaskStaticRoute |
A maximum of 15 characters can be entered. Characters that can be used include alphanumeric characters, as well as . . |
OS.defaultGWStaticRoute |
A maximum of 15 characters can be entered. Characters that can be used include alphanumeric characters, as well as . . |
openstack.checkInstanceStateCount |
An integer in the range from 1 to 2,147,483,647 |
openstack.checkInstanceStateInterval |
An integer in the range from 1 to 60 |
openstack.checkOSStateWaittime |
An integer in the range from 1 to 2,147,483,647 |
The following shows the restrictions on inputs to the property displayed on the "Service Definition" window and the "Submit Service" window:
Property key |
Characters that can be input |
---|---|
openstack.instanceName |
A string that has 80 or fewer characters. The following symbols cannot be used: < > | ; & ' " * ? [ ] ` % \ |
openstack.imageName |
A string that has 255 or fewer characters. The following symbols cannot be used: < > | ; & ' " * ? [ ] ` % \ |
openstack.instanceTypeName |
A string that has 25 or fewer single-byte alphanumeric characters, including periods (.), underscores (_) and hyphens (-) |
openstack.keyPairName |
A string that has 20 or fewer single-byte alphanumeric characters, including underscores (_) and hyphens (-) |
openstack.securityGroupName |
A string that has 255 or fewer single-byte alphanumeric characters and symbols. The following symbols cannot be used: < > | ; & ' " * ? [ ] ` % |
openstack.networkNameMng |
A string that has 255 or fewer single-byte alphanumeric characters and symbols. The following symbols cannot be used: < > | ; & ' " * ? [ ] ` % |
openstack.networkNameBiz |
A string that has 255 or fewer single-byte alphanumeric characters and symbols. The following symbols cannot be used: < > | ; & ' " * ? [ ] ` % |
OS.computerName |
A maximum of 63 characters can be entered. Characters that can be used include alphanumeric characters, as well as - . |
OS.timeZoneLin |
Select one of the following values: Asia/Tokyo, Asia/Hong_Kong, Asia/Chongqing, Asia/Shanghai, Etc/UTC, America/Tijuana, America/Vancouver, America/Los_Angeles, America/Detroit, America/New_York, America/Montevideo, America/Louisville, America/Indiana/Indianapolis, America/Indiana/Vevay, America/Indiana/Marengo, America/Indiana/Petersburg, America/Indiana/Vincennes, America/Indiana/Winamac, America/Indiana/Tell_City, America/Indiana/Knox, America/Chicago, America/North_Dakota/Center, America/North_Dakota/New_Salem, America/Kentucky/Monticello, America/Juneau, America/Menominee, America/Monterrey, America/Denver, America/Boise, America/Shiprock, America/Phoenix, America/Yakutat, America/Anchorage, America/Nome, America/Adak, Pacific/Honolulu, Asia/Singapore, Europe/London, Asia/Kolkata, America/North_Dakota/Beulah, Asia/Macau |
OS.dnsSuffix |
A maximum of 63 characters can be entered. Characters that can be used include alphanumeric characters, as well as . and -. |
openstack.floatingIpOption |
Select one of the following values: yes,no |
openstack.networkNameExt |
A string that has 255 or fewer single-byte alphanumeric characters and symbols. The following symbols cannot be used: < > | ; & ' " * ? [ ] ` % |
openstack.floatingIpAddress |
A string that has 15 or fewer single-byte characters, including periods (.) |
Flow specification details
The following table shows the detailed specification of the flow:
Hierarchy |
Display name |
Plug-in |
||
---|---|---|---|---|
Plug-in name |
Description |
Error recovery method |
||
1 |
openstackCreateVM |
Create a virtual server |
Creates a virtual server from an image. (In OpenStack, this is called "starting an instance".) |
After checking the task log and removing the cause of the error, run this service again. If virtual servers were already created for the project, delete the virtual servers, and then run this service again. |
2 |
osSetLinuxInfo |
Initial OS settings (Linux) |
Specifies the initial OS settings (computer name, time zone, and DNS suffix) of an instance. |
Log in to the OpenStack server and check the instance settings. Next, log in to the instance and check the instance settings. Manually set up the instance as needed. Alternatively, check the task log, remove the cause of the error, delete the instance, and then run this service again. |
3 |
osSetStaticRoute |
Flow Plug-in |
Sets a static route on the OS of an instance. |
-- |
3-1 |
Judge Value Plug-in |
-- |
Log in to the OpenStack server and check the instance settings. Next, log in to the instance and check the instance settings. Manually set up the instance as needed. Alternatively, check the task log, remove the cause of the error, delete the instance, and then run this service again. |
|
3-2 |
Set static route |
-- |
Log in to the OpenStack server and check the instance settings. Next, log in to the instance and check the instance settings. Manually set up the instance as needed. Alternatively, check the task log, remove the cause of the error, delete the instance, and then run this service again. |