High Availability with Red Hat CloudForms Using Multiple Appliances

Updated -

For high availability of your CloudForms Management Engine environment, Red Hat recommends load balancing and isolating traffic by configuring multiple appliances. This can be useful when performing SmartState Analysis on multiple virtual machines at the same time across regions containing multiple zones, when CloudForms Management Engine does heavy processing of virtual events, or when collecting and processing capacity and utilization data.

To balance the work, distribute the work across multiple worker appliances. Worker appliances fulfill certain CFME server roles, but connect to a database that is external to the worker appliance. A database appliance hosts the database and has the database server role enabled.

You will need to do the following:

  1. Configure the worker appliance through the terminal.

  2. Configure the server roles using the CFME user interface.

Configuring a Worker Appliance to connect to a Database on another CloudForms Management Engine Appliance

These steps demonstrate how to join a worker appliance to a CloudForms Management Engine appliance that already has a region configured with a database.

  1. Start up the appliance and open a terminal console from your virtualization or cloud provider. Note that starting the appliance gets the primary service evmserverd running. After installing the CloudForms Management Engine Appliance, this service starts up automatically. You can start the service manually using the service evmserverd start command. This is currently only possible using the command-line interface.

  2. The login screen appears; enter the administration username and password.

    To administer this appliance, browse to https://192.168.0.40/
    
    Username:
    
  3. The status screen appears and displays details about the CloudForms Management Engine Appliance. Press Enter to change to the configuration menu.

  4. Select 8) Configure Database from the menu.

  5. You are prompted to create or fetch a security key. Select the option to fetch the key from the first CFME appliance. All CFME appliances in a multi-region deployment must use the same key.

  6. Choose 1) External Database on another CFME Appliance for the database location.

  7. Enter the database hostname or IP address when prompted.

  8. Enter the database name or leave blank for the default vmdb_production.

  9. Enter the port that you are using for Postgres Database for two way communication. The default port is 5432.

  10. Enter the database user name or leave blank for the default root.

  11. Enter the chosen database user password.

  12. Confirm the configuration if prompted.

You can configure server roles for failover and redundancy on either the region or zone level depending on the role. Regions are used primarily to consolidate multiple virtual machine databases (VMDBs) into one master VMDB for reporting while zones are used to define functional groups of servers. There can be only one region per VMDB, but multiple zones per region (or VMDB). You can also set priorities for the server roles that provide failover.

Configuring the Server Roles Using the CFME User Interface

Server role defines what a server can do. Server roles can be enabled depending on your cloud environment needs. Note that only super administrators can change server roles. Red Hat recommends that Database Operations, Event Monitor, Reporting, Scheduler, SmartState Analysis, User Interface, Provider Inventory, Provider Operations, and Web Services be enabled on at least one server in each zone. These roles are enabled by default on all servers.

server-roles.png

  1. Log in to the CFME user interface using the user name admin and the password smartvm.

  2. Navigate to Configure -> Configuration.

  3. From the accordion menu, click on Settings -> Server.

  4. In the Server Control area, enable the required server roles by selecting the appropriate check boxes from the list.

  5. Click Save.

Comments