Red Hat Training

A Red Hat training course is available for Red Hat CloudForms

Installing Red Hat CloudForms on Red Hat OpenStack Platform

Red Hat CloudForms 4.7

How to install and configure Red Hat CloudForms on a Red Hat OpenStack Platform environment

Red Hat CloudForms Documentation Team


This guide provides instructions on how to install and configure Red Hat CloudForms on a Red Hat OpenStack Platform environment.
If you have a suggestion for improving this guide or have found an error, please submit a Bugzilla report at against Red Hat CloudForms Management Engine for the Documentation component. Please provide specific details, such as the section number, guide name, and CloudForms version so we can easily locate the content.

Chapter 1. Installing Red Hat CloudForms

Installing Red Hat CloudForms consists of the following steps:

  1. Downloading the appliance for your environment as a virtual machine image template.
  2. Setting up a virtual machine based on the appliance.
  3. Configuring the CloudForms appliance.

After you have completed all the procedures in this guide, you will have a working environment on which additional customizations and configurations can be performed.

1.1. Obtaining the Appliance

  1. Go to and log in to the Red Hat Customer Portal using your customer account details.
  2. Click Downloads in the menu bar.
  3. Click A-Z to sort the product downloads alphabetically.
  4. Click Red Hat CloudForms to access the product download page.
  5. From the list of installers and images, click the Download Now link for CFME OpenStack Virtual Appliance.

1.2. Uploading the Appliance on OpenStack

Log in to your OpenStack dashboard to upload your Red Hat CloudForms appliance.

  1. Log in to the OpenStack dashboard.
  2. In the Project tab, navigate to ComputeImages.
  3. Click Create Image.
  4. In Name, enter a name for the image.
  5. From Image Source list, select Image Location. Note that currently only images available via an HTTP URL are supported.
  6. In Image Location, add an external (HTTP) URL to load the image from. For example,
  7. From the Format list, select the image format. For example, ISO - Optical Disk Image.
  8. Specify the Architecture. For example, i386 for a 32-bit architecture or x86-64 for a 64-bit architecture.
  9. Leave the Minimum Disk (GB) and Minimum RAM (MB) fields empty.
  10. Check the Public box to make the appliance available to all users.
  11. Check the Protected box to protect the image from being accidentally deleted.
  12. Click Create Image.

You have successfully uploaded the Red Hat CloudForms appliance.

The appliance image is placed in a queue to be uploaded. It may take some time before the Status of the image changes from Queued to Active.

1.3. Adding a Rule to a Security Group

Security groups specify what IP traffic is allowed to reach an instance on its public IP address. Security group rules are processed before network traffic reaches firewall rules defined within the guest itself.


In the default configuration, the default security group accepts all connections from the default source; all instances within the default group can talk to each other on any port.

  1. From the OpenStack dashboard, navigate to ProjectComputeAccess & Security.
  2. Navigate to Security GroupsManage Rules on the row for the default security group. 7216
  3. Click Add Rule. 4941
  4. Configure the rule.

    1. Select RuleCustom TCP Rule.
    2. Select DirectionIngress.
    3. Select Port from the Open Port list.
    4. Specify 443 in the Port field.
    5. Select CIDR from the Remote list.
    6. Specify in the CIDR field.
    7. Click Add.

1.4. Creating a Custom Flavor

A flavor is a resource allocation profile that specifies, for example, how many virtual CPUs and how much RAM can be allocated to an instance. You can, for example, run Red Hat CloudForms on a Red Hat OpenStack m1.large flavor, which specifies a virtual machine with 4 cores, 12 GB RAM, and 80 GB disk space. Creating a flavor to run Red Hat CloudForms is optional.

The following procedure demonstrates creating a flavor with the minimum requirements (4 cores, 12 GB RAM, 44 GB disk space) for Red Hat CloudForms. For more information about flavors, see the Red Hat OpenStack Platform Administration User Guide.

  1. Log in to the OpenStack dashboard as admin.
  2. In the Admin tab, navigate to SystemFlavors.
  3. Click Create Flavor to display the Create Flavor dialog.
  4. Configure the settings to define a flavor that meets Red Hat CloudForms system requirements.

    1. Enter a name for the flavor.
    2. Enter the following settings:

      • VCPUs: 4
      • RAM MB: 12288
      • Root Disk GB: 70
      • Ephemeral Disk GB: 0
      • Swap Disk MB: 0
  5. Click Create Flavor.

A new flavor specific to Red Hat CloudForms is created.

1.5. Launching the Instance

  1. From the OpenStack dashboard, navigate to ProjectComputeInstances.
  2. Click Launch Instance.
  3. Enter a name for the instance.
  4. Select the custom flavor for your instance. The flavor selection determines the computing resources available to your instance. The resources used by the flavor are displayed in the Flavor Details pane.
  5. Enter 1 in the Instance Count field.
  6. Select a boot option from the Instance Boot Source list:

    • Boot from image - displays a new field for Image Name. Select the image from the drop-down list.
    • Boot from snapshot - displays a new field for Instance Snapshot. Select the snapshot from the drop-down list.
    • Boot from volume - displays a new field for Volume. Select the volume from the drop-down list.
    • Boot from image (creates a new volume) - boot from an image and create a volume by choosing Device Size and Device Name for your volume. Some volumes can be persistent. To ensure the volume is deleted when the instance is deleted, select Delete on Terminate.
    • Boot from volume snapshot (creates a new volume) - boot from volume snapshot and create a new volume by choosing Volume Snapshot from the drop-down list and adding a Device Name for your volume. Some volumes can be persistent. To ensure the volume is deleted when the instance is deleted, select Delete on Terminate.
  7. Click Networking and select a network for the instance by clicking the + (plus) button for the network from Available Networks.
  8. Click Launch.

1.6. Adding a Floating IP Address

When you create an instance, Red Hat OpenStack Platform automatically assigns it a fixed IP address in the network to which the instance belongs. This IP address is permanently associated with the instance until the instance is terminated.

In addition to the fixed address, you can also assign a floating IP address to an instance. Unlike fixed IP addresses, you can modify floating IP addresses associations at any time, regardless of the state of the instances involved.

  1. At the command-line on your RHEL OpenStack Platform host, create a pool of floating IP addresses using the nova-manage floating create command. Replace IP_BLOCK with the desired block of IP addresses expressed in CIDR notation.

    $ nova-manage floating create IP_BLOCK
  2. In the Project tab, navigate to ComputeAccess & Security.
  3. Click Floating IPsAllocate IP To Project. The Allocate Floating IP window is displayed. 7218
  4. Click Allocate IP to allocate a floating IP from the pool. The allocated IP address appears in the Floating IPs table.
  5. Select the newly allocated IP address from the Floating IPs table. Click Associate to assign the IP address to a specific instance. 7217
  6. Select an instance with which to associate the floating IP Address.
  7. Click Associate to associate the IP address with the selected instance.

To disassociate a floating IP address from an instance when it is no longer required, click Release Floating IPs.

Chapter 2. Logging In After Installing Red Hat CloudForms

Once Red Hat CloudForms is installed, you can log in and perform administration tasks.

Log in to Red Hat CloudForms for the first time after installing by:

  1. Navigate to the URL for the login screen. (https://xx.xx.xx.xx on the virtual machine instance)
  2. Enter the default credentials (Username: admin | Password: smartvm) for the initial login.
  3. Click Login.

2.1. Changing the Default Login Password

Change your password to ensure more private and secure access to Red Hat CloudForms.

  1. Navigate to the URL for the login screen. (https://xx.xx.xx.xx on the virtual machine instance)
  2. Click Update Password beneath the Username and Password text fields.
  3. Enter your current Username and Password in the text fields.
  4. Input a new password in the New Password field.
  5. Repeat your new password in the Verify Password field.
  6. Click Login.

Appendix A. Appendix

A.1. Appliance Console Command-Line Interface (CLI)

Currently, the appliance_console_cli feature is a subset of the full functionality of the appliance_console itself, and covers functions most likely to be scripted using the command-line interface (CLI).

  1. After starting the Red Hat CloudForms appliance, log in with a user name of root and the default password of smartvm. This displays the Bash prompt for the root user.
  2. Enter the appliance_console_cli or appliance_console_cli --help command to see a list of options available with the command, or simply enter appliance_console_cli --option <argument> directly to use a specific option.

Table A.1. Database Configuration Options


--region (-r)

region number (create a new region in the database - requires database credentials passed)

--internal (-i)

internal database (create a database on the current appliance)


database disk device path (for configuring an internal database)

--hostname (-h)

database hostname


database port (defaults to 5432)

--username (-U)

database username (defaults to root)

--password (-p)

database password

--dbname (-d)

database name (defaults to vmdb_production)

Table A.2. v2_key Options


--key (-k)

create a new v2_key

--fetch-key (-K)

fetch the v2_key from the given host

--force-key (-f)

create or fetch the key even if one exists


ssh username for fetching the v2_key (defaults to root)


ssh password for fetching the v2_key

Table A.3. IPA Server Options


--host (-H)

set the appliance hostname to the given name

--ipaserver (-e)

IPA server FQDN

--ipaprincipal (-n)

IPA server principal (default: admin)

--ipapassword (-w)

IPA server password

--ipadomain (-o)

IPA server domain (optional). Will be based on the appliance domain name if not specified.

--iparealm (-l)

IPA server realm (optional). Will be based on the domain name of the ipaserver if not specified.

--uninstall-ipa (-u)

uninstall IPA client

  • In order to configure authentication through an IPA server, in addition to using Configure External Authentication (httpd) in the appliance_console, external authentication can be optionally configured via the appliance_console_cli (command-line interface).
  • Specifying --host will update the hostname of the appliance. If this step was already performed via the appliance_console and the necessary updates made to /etc/hosts if DNS is not properly configured, the --host option can be omitted.

Table A.4. Certificate Options


--ca (-c)

CA name used for certmonger (default: ipa)

--postgres-client-cert (-g)

install certs for postgres client


install certs for postgres server


install certs for http server (to create certs/httpd* values for a unique key)

--extauth-opts (-x)

external authentication options


The certificate options augment the functionality of the certmonger tool and enable creating a certificate signing request (CSR), and specifying certmonger the directories to store the keys.

Table A.5. Other Options


--logdisk (-l)

log disk path


initialize the given device for temp storage (volume mounted at /var/www/miq_tmp)

--verbose (-v)

print more debugging info

Example Usage

$ ssh

To create a new database locally on the server using /dev/sdb:

# appliance_console_cli --internal --dbdisk /dev/sdb --region 0 --password smartvm

To copy the v2_key from a host to local machine:

# appliance_console_cli --fetch-key --sshlogin root --sshpassword smartvm

You could combine the two to join a region where is the appliance hosting the database:

# appliance_console_cli --fetch-key --sshlogin root --sshpassword smartvm --hostname --password mydatabasepassword

To configure external authentication:

# appliance_console_cli --host
                        --iparealm TEST.COMPANY.COM
                        --ipaprincipal admin
                        --ipapassword smartvm1

To uninstall external authentication:

# appliance_console_cli  --uninstall-ipa