Chapter 13. Provisioning Cloud Instances on Red Hat OpenStack Platform
Red Hat OpenStack Platform provides the foundation to build a private or public Infrastructure-as-a-Service (IaaS) cloud. It offers a massively scalable, fault-tolerant platform for the development of cloud-enabled workloads. In Red Hat Satellite 6, you can interact with Red Hat OpenStack Platform REST API to create cloud instances and control their power management states.
Prerequisites
- Synchronized content repositories for Red Hat Enterprise Linux. For more information, see Synchronizing Red Hat Repositories in the Content Management Guide.
- An activation key for host registration. For more information, see Creating An Activation Key in the Content Management guide.
- A Capsule Server managing a network in your OpenStack environment. For more information, see Chapter 3, Configuring Networking.
- An image added to OpenStack Image Storage (glance) service for image-based provisioning. For more information, see the Red Hat OpenStack Platform Instances and Images Guide.
Procedure Overview
- Section 13.1, “Adding the Red Hat OpenStack Platform Connection to Satellite Server”.
- Section 13.2, “Adding Red Hat OpenStack Platform Images to Satellite Server”.
- Section 13.3, “Adding Red Hat OpenStack Platform Details to a Compute Profile”.
- Section 13.4, “Creating Image-based Hosts on Red Hat OpenStack Platform”.
13.1. Adding the Red Hat OpenStack Platform Connection to Satellite Server
Use this procedure to add Red Hat OpenStack Platform as a compute resource in Satellite.
Procedure
- In the Satellite web UI, navigate to Infrastructure > Compute Resources and click Create Compute Resource.
- In the Name field, enter a name for the new compute resource.
- From the Provider list, select RHEL OpenStack Platform.
- In the Description field, enter a description for the compute resource.
-
In the URL field, enter the URL for the OpenStack Authentication keystone service’s API at the
tokens
resource. Use the following format:http://openstack.example.com:5000/v3.0/tokens
. - In the User and Password fields, enter the authentication user and password for Satellite to access the environment.
- In the Domain field, enter the domain for V3 authentication.
- From the Tenant list, select the tenant or project for Satellite Server to manage.
- To use external networks as primary networks for hosts, select the Allow external network as main network check box.
- Click the Locations and Organizations tabs and verify that the location and organization that you want to use are set to your current context. Add any additional contexts that you want to these tabs.
- Click Submit to save the Red Hat OpenStack Platform connection.
For CLI Users
To create a compute resource, enter the
hammer compute-resource create
command:# hammer compute-resource create --name "My_OpenStack" \ --provider "OpenStack" \ --description "My OpenStack environment at openstack.example.com" \ --url "http://openstack.example.com:5000/v3.0/tokens" --user "My_Username" \ --password "My_Password" --tenant "openstack" --locations "New York" \ --organizations "My_Organization"
13.2. Adding Red Hat OpenStack Platform Images to Satellite Server
To create hosts using image-based provisioning, you must add information about the image, such as access details and the image location, to your Satellite Server.
Procedure
- In the Satellite web UI, navigate to Infrastructure > Compute Resources and click the name of the Red Hat OpenStack Platform connection.
- Click Create Image.
- In the Name field, enter a name for the image.
- From the Operating System list, select the image’s base operating system.
- From the Architecture list, select the operating system architecture.
-
In the Username field, enter the SSH user name for image access. This is normally the
root
user. - In the Password field, enter the SSH password for image access.
- From the Image list, select an image from the Red Hat OpenStack Platform compute resource.
-
Optional: Select the User Data check box if the image supports user data input, such as
cloud-init
data. - Click Submit to save the image details.
For CLI Users
Create the image with the
hammer compute-resource image create
command. Use the--uuid
field to store the full path of the image location on the Red Hat OpenStack Platform server.# hammer compute-resource image create \ --name "OpenStack Image" \ --compute-resource "My_OpenStack_Platform" --operatingsystem "RedHat version" \ --architecture "x86_64" \ --username root \ --user-data true \ --uuid "/path/to/OpenstackImage.qcow2"
13.3. Adding Red Hat OpenStack Platform Details to a Compute Profile
Use this procedure to add Red Hat OpenStack Platform hardware settings to a compute profile. When you create a host on Red Hat OpenStack Platform using this compute profile, these settings are automatically populated.
Procedure
- In the Satellite web UI, navigate to Infrastructure > Compute Profiles.
- In the Compute Profiles window, click the name of an existing compute profile, or click Create Compute Profile, enter a Name, and click Submit.
- Click the name of the Red Hat OpenStack Platform compute resource.
- From the Flavor list, select the hardware profile on Red Hat OpenStack Platform to use for the host.
- From the Availability zone list, select the target cluster to use within the Red Hat OpenStack Platform environment.
- From the Image list, select the image to use for image-based provisioning.
- From the Tenant list, select the tenant or project for the Red Hat OpenStack Platform instance.
- From the Security Group list, select the cloud-based access rules for ports and IP addresses.
- From the Internal network, select the private networks for the host to join.
- From the Floating IP network, select the external networks for the host to join and assign a floating IP address.
- From the Boot from volume, select whether a volume is created from the image. If not selected, the instance boots the image directly.
- In the New boot volume size (GB) field, enter the size, in GB, of the new boot volume.
- Click Submit to save the compute profile.
For CLI Users
The compute profile CLI commands are not yet implemented in Red Hat Satellite 6.9. As an alternative, you can include the same settings directly during the host creation process.
13.4. Creating Image-based Hosts on Red Hat OpenStack Platform
In Satellite, you can use Red Hat OpenStack Platform provisioning to create hosts from an existing image. The new host entry triggers the Red Hat OpenStack Platform server to create the instance using the pre-existing image as a basis for the new volume.
Procedure
- In the Satellite web UI, navigate to Hosts > Create Host.
- In the Name field, enter a name for the host.
- Click the Organization and Location tabs to ensure that the provisioning context is automatically set to the current context.
- From the Host Group list, select the host group that you want to use to populate the form.
- From the Deploy on list, select the Red Hat OpenStack Platform connection.
- From the Compute Profile list, select a profile to use to automatically populate virtual machine settings.
- From the Lifecycle Environment list, select the environment.
- Click the Interfaces tab and click Edit on the host’s interface.
Verify that the fields are automatically populated, particularly the following items:
- The Name from the Host tab becomes the DNS name.
- The MAC address field is blank. Red Hat OpenStack Platform assigns a MAC address to the host during provisioning.
- Satellite Server automatically assigns an IP address for the new host.
- The Managed, Primary, and Provision options are automatically selected for the first interface on the host. If not, select them.
- Click the Operating System tab, and confirm that all fields automatically contain values.
- If you want to change the image that populates automatically from your compute profile, from the Images list, select a different image to base the new host’s root volume on.
- Click Resolve in Provisioning templates to check the new host can identify the right provisioning templates to use.
- Click the Virtual Machine tab and confirm that these settings are populated with details from the host group and compute profile. Modify these settings to suit your needs.
- Click the Parameters tab, and ensure that a parameter exists that provides an activation key. If not, add an activation key.
- Click Submit to save the host entry.
For CLI Users
Create the host with the
hammer host create
command and include--provision-method image
. Replace the values in the following example with the appropriate values for your environment.# hammer host create \ --name "openstack-host1" \ --organization "My_Organization" \ --location "New York" \ --hostgroup "Base" \ --compute-resource "My_OpenStack_Platform" \ --provision-method image \ --image "OpenStack Image" \ --enabled true \ --managed true \ --interface "managed=true,primary=true,provision=true" \ --compute-attributes="flavor_ref=m1.small,tenant_id=openstack,security_groups=default,network=mynetwork"
For more information about additional host creation parameters for this compute resource, enter the hammer host create --help
command.