The OSP Director allows to perofrm controller replacement procedure. More details can be found here: https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/13/html/director_installation_and_usage/sect-scaling_the_overcloud#sect-Replacing_Controller_Nodes
cloud-config plugin automates that procedure. Suppose you already have a deployment with more than one controller.
First step is to extend existing deployment with a new controller node. For virtaul deployment the
virsh plugin can be used:
infrared virsh --topology-nodes controller:1 \ --topology-extend True \ --host-address my.hypervisor.address \ --host-key ~/.ssh/id_rsa
Next step is to perform controller replacement procedure using
infrared cloud-config --tasks=replace_controller \ --controller-to-remove=controller-0 \ --controller-to-add=controller-3 \
This will repalce controller-0 with the newly added controller-3 node. Nodes index start from 0.
Currently controller replacement is supported only for OSP13 and above.
In case the controller to be replaced cannot be connected by ssh, the
rc_controller_is_reachable should be set to
This will skip some tasks that should be performed on the controller to be removed:
infrared cloud-config --tasks=replace_controller \ --controller-to-remove=controller-0 \ --controller-to-add=controller-3 \ -e rc_controller_is_reachable=no