...
This table describes the systems expected status under fully redundant operation. Redundant components are active on VM-Host 1 and on standby at VM-Host 2.
VM-Host | machine | Active |
---|---|---|
1 | acd-tel1 | Yes |
2 | acd-tel2 | Yes |
1 | acd-jb1 | Yes |
1 | acd-jb2 | Yes |
1 | acd-jb3 | Yes |
2 | acd-jb4 | Yes |
2 | acd-jb5 | Yes |
2 | acd-jb6 | Yes |
1 | acd-chat1 | Yes |
2 | acd-chat2 | Yes |
1 | acd-api1 | Yes |
2 | acd-api2 | Yes |
1 | acd-dbs1/dbr1 | Yes |
2 | acd-dbs2/dbr2 | Yes |
1 | acd-dbm1 | Yes |
2 | acd-dbm2 | Standby |
1 | acd-lb1 | Yes |
2 | acd-lb2 | Standby |
1 | acd-store1 | Yes |
2 | acd-store2 | Standby |
...
Step 1 - Backups
At least a backup of database on the active database, in this case acd-dbm1 is required. If the capacity on your VM-Hosts is enough, snapshots of critical machines are also beneficial to add additional safety, but not required. The critical machines are:
...
Machine(s) | Stop what | It is installed if you are using | How to stop |
---|---|---|---|
acd-tel1+2 | 8-Server | ACD / IVR | X the cmd file starter window. For service installations, stop the robot5 service. |
Platform UDP Listener | ACD / IVR | X the cmd file starter window. For service installations, stop the jtel Platform UDP Listener service. | |
Presence Aggregator | A PBX or presence connector which uses the presence aggregator:
| X the cmd file starter window. For service installations, stop the jtel Presence Aggregator service. | |
Telephony Connector | A PBX which uses a custom connector:
| X the cmd file starter window. For service installations, stop the service, for example the jtel TAPI service or jtel Innovaphone Service. | |
Exchange Connector | E-Mail with an Exchange or Office 365 Server | Stop the jtelEWSMailService service. | |
IMAP Connector | E-Mail with an IMAP(S) Server | Stop the jtelIMAPMailService service. | |
acd-jb1-6 | Wildfly | Anything | sudo systemctl stop wildfly For installations not using systemctl: sudo service wildfly stop |
acd-chat1+2 | Chat Server | CHAT | sudo systemctl stop jtel-clientmessenger For installations not using systemctl: sudo service jtel-clientmessenger stop |
acd-api1+2 | REST API | REST | sudo systemctl stop jtelrest For installations not using systemctl: sudo service jtelrest stop |
acd-dbm1+2 | Platform UDP Listener | SOAP | sudo systemctl stop jtel-listener For installations not using systemctl: sudo service jtel-listener stop |
...
Checking can either be done on the HaProxy admin page on acd-lb1, by checking the current session activity on count for acd-dbm1, or it can be done on acd-dbm1 within the MySQL terminal, by typing the following command:
...
Warning |
---|
Only continue when no sessions are active. If this step is 3 and 4 are not properly executed, this procedure might fail at Step 5 or 6. |
Step 5 - Manual Failover to acd-store2
...
Info |
---|
Note: On older pcs versions, 'node' will have to be replaced with 'cluster' in the following commands. Example: pcs cluster standby acd-store2 |
Code Block |
---|
# Set acd-store1 to standby pcs node standby acd-store1 # Check if acd-store2 was switched to primary pcs status # Set acd-store1 back to unstandby pcs node unstandby acd-store1 # Check if acd-store2 is primary, and acd-store1 is secondary pcs status |
...
Access the HaProxy admin page for both acd-lb1 and acd-lb2. The primarily important machine to configure is acd-lb2, but doing it on both HaProxys will ensure that the configuration will be is the same in case an accidental fail-over happens before the machines on VM-Host 1 are shutdown.
Configure the status "MAINT" for all machines on VM-Host 1
Warning |
---|
When the machine, in this case acd-lb1 is booted and the HaProxy on acd-lb1 starts again, all "MAINT" statuses will be reset to default ,and the status of each machine will be in the default statemachines will reconnect with the cluster and be set to the status "READY" by default. |
Step 8 - Check the AcdGroupDistribute Daemon
...
Code Block |
---|
# acd-store2 -> The DRBD will not be synchronized/disconnected | acd-store2 should be primary, and acd-store1 should be offline pcs status # acd-lb2 -> acd-lb2 should be primary, and acd-lb1 should be offline pcs status # acd-dbm2 -> The replication should be in status "connecting" SHOW SLAVE STATUS \G # acd-dbs2 -> The replication to acd-dbm1 should be in status "connecting" SHOW SLAVE STATUS \G |
...
Machine(s) | Start what | It is installed if you are using | How to stop |
---|---|---|---|
acd-tel2 | 8-Server | ACD / IVR | Explorer to shell:startup - start the link to startup_launcher.cmd For service installations, start the robot5 service. |
Platform UDP Listener | ACD / IVR | Explorer to shell:startup - start the link to startListener.bat For service installations, start the jtel Platform UDP Listener service. | |
Presence Aggregator | A PBX or presence connector which uses the presence aggregator:
| Explorer to shell:startup - start the link to start-presence-aggregator.cmd For service installations, start the jtel Presence Aggregator service. | |
Telephony Connector | A PBX which uses a custom connector:
| Explorer to shell:startup - start the link to JTELInnovaphonePBXService.exe or jtelTAPIMonitorService.exe For service installations, start the service, for example the jtel TAPI service or jtel Innovaphone Service. | |
Exchange Connector | E-Mail with an Exchange or Office 365 Server | Start the jtelEWSMailService service. | |
IMAP Connector | E-Mail with an IMAP(S) Server | Start the jtelIMAPMailService service. | |
acd-jb4-6 | Wildfly | Anything | sudo systemctl start wildfly For installations not using systemctl: sudo service wildfly start |
acd-chat2 | Chat Server | CHAT | sudo systemctl start jtel-clientmessenger For installations not using systemctl: sudo service jtel-clientmessenger start |
acd-api2 | REST API | REST | sudo systemctl start jtelrest For installations not using systemctl: sudo service jtelrest start |
acd-dbm2 | Platform UDP Listener | SOAP | sudo systemctl start jtel-listener For installations not using systemctl: sudo service jtel-listener start |
Step 11 - Reactivate monitoring Ensure system functionality
Information can be found here: System Health Check
Step 12 - Reactivate monitoring
The monitoring is now The monitoring is now reactivated on all machines on VM-Host 2
Step 12 - Ensure system functionality
Information can be found here: System Health Check
If all tests are successful, the system is now running only on VM Host 2 and fully operational.
...
The following steps assume that VM Host 1 has been bootedstarted, and all jtel VMs on the server stayed turned off. If the jtel vms were mistakenly automatically turned on, problems in the cluster might have occured as a result, and a different may be required.
Info |
---|
This part of the procedure is not designed to be standalone and directly correlates to the previous shutdown steps above, as it is part of the example. |
...
Warning |
---|
Only continue when no sessions are active - . If this step is 3 and 4 are not properly executed, this procedure will might fail. |
Step 5 - Start all virtual machines on VM-Host 1
...
Code Block |
---|
# acd-store1 -> The DRBD should be synchronized | acd-store2 should still be primary, and acd-store1 should be secondary # acd-store2 -> The DRBD should be synchronized | acd-store2 should still be primary, and acd-store1 should be secondary cat /proc/drbd pcs status # acd-lb1 -> acd-lb2 should still be primary, and acd-lb1 should be secondary # acd-lb2 -> acd-lb2 should still be primary, and acd-lb1 should be secondary pcs status # acd-dbm1 -> The replication should be started and synchronized SHOW SLAVE STATUS \G # acd-dbm2 -> The replication shouldbeshould be started and synchronized SHOW SLAVE STATUS \G # acd-dbs1 -> The replication should shouldbebe started and synchronized SHOW SLAVE STATUS \G # acd-dbs2 -> The replication should be started and synchronized SHOW SLAVE STATUS \G |
...
Access the HaProxy admin page for acd-lb2. The configuration will only be done on acd-lb2, because the machines on status of all cluster members on VM-Host 1 are still was set to "MAINT" theredefault after the boot.
On acd-lb2, remove the status "MAINT" for all machines on VM-Host 1 and set them to "READY". Ensure the correct status before continuing.
Warning |
---|
When Be sure that the machine is booted and the HaProxy on acd-lb1 starts again, all "MAINT" statuses will be reset to default ,and the status of each machine will be in the default statecluster is 100% operational before continuing with step 8. If any members of the cluster are not functioning properly and the software is started, problems will occur. |
Step 8 - Start Software on all machines
...
Since acd-tel1 is active again, if the Daemon AcdGroupDistribute.r5 is was running on acd-tel1 before, it must be stopped on acd-tel2 to ensure that calls to acd-groups will still be routed properly by the routing-algorithm.
Info |
---|
Optional: The daemon can also be kept on acd-tel2, since it will operate the same way independent of where it is running. |
Step 11 - Reactivate monitoring
...