Configure OpenStack for Cloud Bursting

Create the necessary components in OpenStack that are required for cloud bursting and then create a cloud bursting scenario.

OpenStack is a set of software tools for building and managing cloud computing platforms for public and private clouds. OpenStack software controls large pools of compute, storage, and networking resources throughout a datacenter, managed through a dashboard or through the OpenStack API.

OpenStack cloud bursting is available for sites that have installed their own OpenStack private cloud on their premises and want to manage cloud bursting through Control. Since OpenStack installations can be highly diverse, it is recommended to work with your Altair support team to set up cloud bursting via OpenStack as not all implementations may be supported.

Add an OpenStack Cloud Account

Add an OpenStack Cloud account to Control so that you can create a cloud bursting scenario.

For information about logging into the OpenStack Dashboard see Log in to the dashboard.
Open the OpenStack RC file to get information that is necessary to create an OpenStack Cloud account. This file contains tenant-specific environment variables and environment variables that are necessary to run OpenStack command-line clients.
  1. Login to Control.
  2. Click the Cloud tab.
  3. Click Cloud from the Infrastructure menu located on the left-hand side of the web page.
  4. Click .
  5. For Account name, enter any name for the cloud account.
    The name can be anything meaningful to your organization, e.g., openstack_cloudaccount.
  6. Open a second browser window.
  7. Login to the OpenStack Dashboard as a user with OpenStack admin or member privileges.
  8. Click User Profile > OpenStack RC File.

    Open the OpenStack RC File
    Figure 1. Open the OpenStack RC File
    The contents of the OpenStack RC file are displayed.
  9. Search for the parameter OS_AUTH_URL.
  10. Copy the value of OS_AUTH_URL.
  11. Navigate to the Control browser window.
  12. For Auth (IAM) URL, paste the value of OS_AUTH_URL.
  13. In the OpenStack RC file, search for the parameter OS_USERNAME.
  14. Copy the value of OS_USERNAME.
  15. Navigate to the Control browser window.
  16. For Username, paste the value of OS_USERNAME.
  17. For Password, enter the user's password.
    This is the password the user entered to login to OpenStack.
  18. In the OpenStack RC file, search for the parameter OS_PROJECT_NAME.
  19. Copy the value of OS_PROJECT_NAME.
  20. Navigate to the Control browser window.
  21. For Project name, paste the value of OS_PROJECT_NAME.
  22. Click Create Account.

Prerequisites for OpenStack Cloud Bursting

Components that are necessary to create an OpenStack cloud bursting scenario.

Before a cloud bursting scenario can be created, the following prerequisites must be met:
  1. A virtual network must be created. For more information see Create and manage networks.
    1. A subnet must be created for this network. The subnet’s ID is a value that is required to be entered for the bursting scenario.
    2. If you want the cloud nodes to be accessible from public networks, create a router for this network. Add a gateway interface and attach it to the subnet. Use floating IP addresses for accessing the instance from public networks. For more information about floating IPs see Openstack External Network Settings Example.
  2. A security group must be created. Either create a new security group or use the default security group. The security group’s ID is necessary to create a bursting scenario. For more information see Configure access and security for instances.
    1. Add any inbound/outbound security rules necessary for the security group.
  3. An OS image is necessary to launch a cloud instance. For more information see OpenStack Virtual Machine Image Guide. The OS image ID is necessary for creating a cloud bursting scenario.

Create an OS Image

If your site has not created an OS image for launching cloud instances, there are several options. You can create the image manually on your own system and then upload the image to your cloud. For more information see Create images manually.

A second option is to create and configure a virtual machine and then create a snapshot:
  1. Create a virtual machine. For more information see Launch and manage instances.
    1. Attach the virtual network to the virtual machine.
    2. Assign the security group to the virtual machine.
  2. SSH into the virtual machine. For more information see Connect to your instance by using SSH.
    1. Install the PBS MoM.
    2. Configure the virtual machine for your site's environment such as mounting file systems, connecting it to the authentication service, installing any applications, etc.
    3. Install cloud-init.
    4. Connect the virtual machine to your PBS server and submit a job to ensure it is working as expected.
  3. Create a snapshot of the virtual machine. For more information see Create an instance snapshot.
    Note: Before taking the snapshot, clear user data such as home folders and remove cloud-init logs and artifacts by using the cloud-init clean command.

Create an OpenStack Cloud Bursting Scenario

Create an OpenStack bursting scenario so that PBS execution nodes can be burst in the cloud.

View the prerequisites for creating an OpenStack cloud bursting scenario

A startup script is provided during the creation of the bursting scenario. This script is ran after a cloud node is burst and is used to set up the system environment so that nodes burst in the cloud can communicate with the PBS Server. Use a cloud-init script for the startup script. For more information about writing cloud-init scripts, refer to the Cloudinit Documentation and Cloud Bursting Startup Script.

  1. Login to Control.
  2. Click the Cloud tab.
  3. Click Bursting from the Infrastructure menu located on the left-hand side of the web page.
  4. Click Add Bursting Scenario.
  5. Enter information about the bursting scenario such as name, cloud provider, cloud account, and geographic location.
    1. For Name, enter a name for the cloud bursting scenario.
    2. For Description, enter a description.
    3. For Cloud Account, choose a previously created OpenStack cloud account from the list.
    4. For Region, select the same region associated with the OpenStack virtual network.
  6. Click Next.

Enter information about the OpenStack resources necessary to burst in the cloud.

  1. For Domain name, provide the domain name of your organization for the cloud bursting network.
    altair.com, burst.altair.com
  2. For Hostname prefix, enter a prefix for the names of the burst nodes.
    If "node" is entered , the cloud bursting nodes will be available to PBS Professional as node1, node2, node3, etc.
  3. For Subnet ID, paste the OpenStack subnet ID.

    Subnet ID
    Figure 2. Subnet ID
  4. For Security Group, paste the OpenStack security group's ID.

    Security Group ID
    Figure 3. Security Group ID
  5. For OS Image URI, paste the OpenStack OS image ID.

    OS Image ID
    Figure 4. OS Image ID
  6. If you want the cloud nodes to be accessible from public networks:
    1. For Gateway network name, paste the name of the network from which the floating IPs will be taken.

      This is required in case of a router having several networks attached for floating IPs.


      Gateway Network
      Figure 5. Gateway Network
    2. Enable Add public IP to VMs.
  7. For Cloud-init script, click Browse, browse for the startup script file and select it.
    This script will run after a cloud node is burst.
  8. Add public SSH keys for any users that you want to have access to the burst nodes:
    1. Login to the PBS Professional Server.
    2. Copy the public SSH key for the user.
      Public key files are usually stored in /.ssh in the user's home directory.
    3. Navigate to the Control browser window.
    4. Click Add to add the public key.
    5. For Public SSH keys, paste the public SSH key.
    6. Repeat steps a through e to add additional public SSH keys.
    The public keys are copied to each burst node for secure connectivity.
  9. For Idle time before unbursting, enter the minimum time that a cloud node can be idle before it is unburst.

    It is expressed as an integer whose units are in seconds.

  10. For Tags, enter a key-value pair to add a label to the cloud node and press ENTER.
    A tag is a label that is assigned to a cloud node. Tags enable cloud nodes to be categorized in different ways, for example, by purpose, owner, or environment.
    The key-value pair must be entered as key:value. The key must be less than 36 characters and the value must be less than 43 characters. The length of both the key + value should be less than 80 characters. Valid values are alphanumeric, dash (-) and an underscore ( _ ).
    Once the tag is added, it will appear within its own bubble.

    Key-Value Tag
    Figure 6. Key-Value Tag
  11. Repeat the previous step to add more tags.

    Additional Tags
    Figure 7. Additional Tags
    Tip: To remove a tag click on the 'x' located within the tag bubble.
  12. Click Next.
  13. Click the Select instance types for bursting link.
  14. Select the instance types to enable for the bursting scenario by clicking the Enabled checkbox located to the far right of the instance type name.
  15. Click Save.
  16. Click the Create an API Key/ Token link.
  17. For Name, enter a name for the token.
  18. For Expiration date, use the calendar widget to specify the expiration date.
  19. Click Add Token.
    An API key is generated and displayed.
  20. Copy and save this API key.
    The API key is only displayed once. It is pasted in the configuration file used to configure the cloud bursting hook.
  21. Click Close.
  22. Enable the bursting scenario by clicking the slider at the top next to the scenario title.
    If an attempt is made to burst nodes with a disabled instance type, the node is not burst and the below message is displayed in the PBS Server logs (if bursting through PBS), the Cloud logs and through the Cloud component user interface.
    TYPE is not enabled

    Where TYPE is the instance type used when attempting to burst the node.

Once the scenario created, it is recommended to Add Quotas and Alerts. Quotas define bursting limits such as the maximum number of cloud nodes to burst.