Ce contenu n'est pas disponible dans la langue sélectionnée.
Chapter 3. Installing and configuring Instance HA
Instance HA is deployed and configured with the director. However, there are a few additional steps that you need to perform to prepare for the deployment.
This section includes all the steps needed to configure a new Instance HA deployment on a new overcloud with the goal of enabling Instance HA on a subset of Compute nodes with a custom role.
- If you want to enable instance HA in a different environment, such as an existing overcloud using either standard or custom roles, follow only the procedures that are relevant to your deployment and adapt your templates accordingly.
- Compute node host names and Pacemaker remote resource names must comply with the W3C naming conventions. For more information, see Declaring Namespaces and Names and Tokens in the W3C documentation.
-
Instance HA requires Compute nodes to use the same
internal_api
network that Controller nodes use. Therefore, deploying Instance HA in a Spine-Leaf environment is not supported, because that deployment requires a separate network for each leaf. - Disabling Instance HA with the director after installation is not supported. For a workaround to manually remove Instance HA components from your deployment, see the article How can I remove Instance HA components from the controller nodes? . This workaround is provided as-is. You must verify the procedure in a test environment before implementing in production.
For general information on deploying the overcloud, see the Director Installation and Usage guide. For information on custom roles, see Composable Services and Custom Roles.
Configure the Instance HA role, flavor, and profile
Add the
ComputeInstanceHA
role to your roles data file and regenerate the file. For example:openstack overcloud roles generate -o ~/my_roles_data.yaml Controller Compute ComputeInstanceHA
$ openstack overcloud roles generate -o ~/my_roles_data.yaml Controller Compute ComputeInstanceHA
Copy to Clipboard Copied! Toggle word wrap Toggle overflow The
ComputeInstanceHA
role includes all the services in the defaultCompute
role as well as theComputeInstanceHA
and thePacemakerRemote
services. For general information about custom roles and about the roles-data.yaml, see the Roles section in the Advanced Overcloud Customization guide.Create the
compute-instance-ha
flavor to tag Compute nodes that you want to designate for Instance HA. For example:source ~/stackrc openstack flavor create --id auto --ram 6144 --disk 40 --vcpus 4 compute-instance-ha openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="compute-instance-ha" compute-instance-ha
$ source ~/stackrc $ openstack flavor create --id auto --ram 6144 --disk 40 --vcpus 4 compute-instance-ha $ openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="compute-instance-ha" compute-instance-ha
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Tag each Compute node that you want to designate for Instance HA with the
compute-instance-ha
profile.openstack baremetal node set --property capabilities='profile:compute-instance-ha,boot_option:local' <NODE UUID>
$ openstack baremetal node set --property capabilities='profile:compute-instance-ha,boot_option:local' <NODE UUID>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Map the
ComputeInstanceHA
role to thecompute-instance-ha
flavor by creating an environment file with the following content:parameter_defaults: OvercloudComputeInstanceHAFlavor: compute-instance-ha
parameter_defaults: OvercloudComputeInstanceHAFlavor: compute-instance-ha
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Enable fencing
Enable fencing on all Controller and Compute nodes in the overcloud by creating an environment file with fencing information. Make sure to create the environment file in an accessible location, such as ~/templates. For example:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow For more information about fencing and STONITH configuration, see the Fencing Controller Nodes with STONITH section of the High Availability Deployment and Usage guide.
Instance HA uses shared storage by default. If shared storage is not configured for your Compute instance, then add the following parameter to the environment file that you created in the previous step:
parameter_defaults: ExtraConfig: tripleo::instanceha::no_shared_storage: true
parameter_defaults: ExtraConfig: tripleo::instanceha::no_shared_storage: true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow See Section 3.1, “Considerations for Shared Storage” for details on how to boot from an OpenStack Block Storage (cinder) volume rather than configuring shared storage for the disk image of instances.
Deploy the overcloud
Run the openstack overcloud deploy
command with the -e
option for each environment file that you created, as well as the compute-instanceha.yaml environment file. For example:
openstack overcloud deploy --templates \ -e <FLAVOR_ENV_FILE> \ -e <FENCING_ENV_FILE> \ -e /usr/share/openstack-tripleo-heat-templates/environments/compute-instanceha.yaml
$ openstack overcloud deploy --templates \
-e <FLAVOR_ENV_FILE> \
-e <FENCING_ENV_FILE> \
-e /usr/share/openstack-tripleo-heat-templates/environments/compute-instanceha.yaml
- Do not modify the compute-instanceha.yaml environment file.
- Make sure to include the path to each environment file that you want to include in the overcloud deployment.
-
You can configure Instance HA for your overcloud at any time after creating the undercloud. If you already deployed the overcloud, you need to rerun the
overcloud deploy
command with the new Instance HA files.
After the deployment is complete, each Compute node will include a STONITH
device and a GuestNode
service.