Parameters

We provide all the parameters required by the OpenStack puppet modules in order to configure the different components with those values.

foreman-setup globals

Hosts Groups

Host Groups are an easy way to group Puppet class modules and parameters. A host, when attached to a Host Group automatically inherits those definitions.
We manage the two OpenStack types of server using Foreman Host Groups.

So, we need to create two Host Groups:

OpenStack-Controller

OpenStack Compute Nodes

foreman-setup hostgroups

Manage Hosts

To make a system part of our OpenStack infrastructure we have to:

Make sure the host follows the Common Core definitions – See RHEL Core: Common definitions section above

Have the host's certificate signed so it's registered with the Management server

Assign the host either the openstack-controller or openstack-compute Host Group

Register Host Certificates

Using Autosign

With autosign option, the hosts can be automatically registered and visible from Foreman by
adding the hostnames to the /etc/puppet/autosign.conf file.

Signing Certificates

If you're not using the autosign option then you will have to sign the host certificate, using either:

Foreman GUI

Get on the Smart Proxies window from the menu "More -> Configuration -> Smart Proxies".
And select the "Certificates" from the drop-down button of the smart-proxy you created:

From there you can manage all the hosts certificates and get them signed.

The Command Line Interface

Assuming the Puppet agent (puppetd) is running on the host, the host certificate would have
been created on the Puppet Master and will be waiting to be signed:
From the Puppet Master host, use the “puppetca” tool with the command “list” to see the waiting
certificates, for example:

To sign a certificate, use the “sign” command and provide the hostame, for example:

puppetca sign host3.example.org

Assign a Host Group

Display the hosts using the “Hosts” button at the top Foreman GUI screen.

Then select the corresponding “Edit Host” drop-down button on the right side of the targeted host.

Assign the right environment and attach the appropriate Host Group to that host in order to make
it a Controller or a Compute node.

Save by hitting the “Submit” button.

Deploy OpenStack Components

We are done!

The OpenStack components will be installed when the Puppet agent synchronises with the
Management server. Effectively, the classes will be applied when the agent retrieves the catalog
from the Master and runs it.

You can also manually trigger the agent to check with the puppetmaster, to do so deactivate the agent on the targeted controller node run:

Red Hat, Red Hat Enterprise Linux, the Shadowman logo, and JBoss are trademarks or registered trademarks of
Red Hat, Inc. or its subsidiaries in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries.
The Fedora Project is maintained and driven by the community and sponsored by Red Hat. This is a community
maintained site. Red Hat is not responsible for content.