Recreate warm standby after a failover
After a failover, the previous warm standby is now a standalone primary instance of Splunk SOAR (On-premises) and the previous primary is offline or otherwise unavailable. A Splunk SOAR (On-premises) administrator can reconfigure these two instances into a new warm standby pair.
For the rest of this topic the two Splunk SOAR (On-premises) instances will be referred to as either instance A or instance B.
Instance A
The original primary Splunk SOAR (On-premises) instance.
Instance B
The original warm standby instance of Splunk SOAR (On-premises).
Configure instance B as the primary and instance A as the warm standby
This is the easiest way to reconfigure the instances for warm standby after a failover.
The initial states for your instances must be:
- Instance A, the original primary is online but Splunk SOAR (On-premises) services are not running.
- Instance B, the former warm standby is now a stand alone Splunk SOAR (On-premises) instance.
Do these steps as the phantom user.
- SSH to instance A.
SSH <username>@<instance_A_hostname>
- Start PostgreSQL.
/<PHANTOM_HOME>/bin/phsvc start postgresql-15
- Start pgbouncer.
/<PHANTOM_HOME>/bin/phsvc start pgbouncer
- Turn off primary mode
phenv python /<PHANTOM_HOME>/bin/setup_warm_standby.pyc --primary-mode --off
- Start PostgreSQL.
- SSH to instance B.
SSH <username>@<instance_B_hostname>
- Configure instance B as the new primary.
phenv python /<PHANTOM_HOME>/bin/setup_warm_standby.pyc --primary-mode --configure --primary-ip <primary_ip> --standby-ip <standby_ip>
- Configure instance B as the new primary.
- SSH to instance A.
SSH <username>@<instance_A_hostname>
- Configure instance A as the new warm standby.
phenv python /<PHANTOM_HOME>/bin/setup_warm_standby.pyc --standby-mode --configure --primary-ip <primary_ip> --standby-ip <standby_ip>
- Configure instance A as the new warm standby.
Now the two instances are configured for warm standby. Instance B is now the primary and instance A is now the warm standby.
Configure instance A as the primary and instance B as the warm standby
This option returns the instances to the same roles they served before the failover. This can be done after you have configured the instance B as the primary using the steps in the earlier section.
The initial states for your instances must be:
- Instance B, the former warm standby is now a stand alone Splunk SOAR (On-premises) instance. All Splunk SOAR (On-premises) services are running.
- Instance A, the original primary is configured as the warm standby. All Splunk SOAR (On-premises) services are running.
- SSH to instance B.
SSH <username>@<instance_B_hostname>
- Stop Splunk SOAR (On-premises) services.
/<PHANTOM_HOME>/bin/stop_phantom.sh
- Stop Splunk SOAR (On-premises) services.
- SSH to instance A.
SSH <username>@<instance_A_hostname>
- Configure instance A as the primary.
Warm standby is disabled. Instance A is a standalone Splunk SOAR (On-premises) instance, while instance B is idle and all Splunk SOAR (On-premises) services have been shut down.phenv python /<PHANTOM_HOME>/bin/setup_warm_standby.pyc --standby-mode --convert-to-primary
CAUTION: If the Splunk SOAR (On-premises) instances are not in the described states, stop. Check for and do any steps which have been missed before proceeding.
- Configure instance A as the primary.
- SSH to instance B.
SSH <username>@<instance_B_hostname>
- Start PostgreSQL.
/<PHANTOM_HOME>/bin/phsvc start postgresql-15
- Start pgbouncer.
/<PHANTOM_HOME>/bin/phsvc start pgbouncer
- Turn off primary mode
phenv python /<PHANTOM_HOME>/bin/setup_warm_standby.pyc --primary-mode --off
- Start PostgreSQL.
- SSH to instance A.
SSH <username>@<instance_A_hostname>
- Configure instance A as primary.
phenv python /<PHANTOM_HOME>/bin/setup_warm_standby.pyc --primary-mode --configure --primary-ip <primary_ip> --standby-ip <standby_ip>
- Configure instance A as primary.
- SSH to instance B.
SSH <username>@<instance_B_hostname>
- Configure instance B as the warm standby.
phenv python /<PHANTOM_HOME>/bin/setup_warm_standby.pyc --standby-mode --configure --primary-ip <primary_ip> --standby-ip <standby_ip>
- Configure instance B as the warm standby.
Instance A and B are configured as a warm standby pair. Instance A is the primary, and instance B is the warm standby.