Resiliency - Common Procedures - Software Upgrade
This procedure describes how to upgrade a MOVEit DMZ Resiliency cluster from one version of the software to another. (All nodes in the system must be upgraded at once; different nodes cannot run different versions of MOVEit DMZ or MOVEit DMZ Resiliency software.)
NOTE: The appropriate MOVEit DMZ Resiliency upgrade should always be run after a MOVEit DMZ upgrade, even if no new version of the Resiliency software has been released. The Resiliency upgrade makes Resiliency-specific changes to the MOVEit DMZ installation that need to be applied after a MOVEit DMZ upgrade. If the Resiliency upgrade is not run, the cluster may not operate correctly.
- Make sure that node 1 is the Master database node. If it is not, first make sure it is up-to-date with the master, and then switch it to master and switch node 2 to slave.
- Using the MOVEit DMZ Configuration Utility Advanced Resiliency Tasks dialog, stop the "Web/DMZ Resil" and "DB Resil" services on all MOVEit DMZ Resiliency nodes and answer "yes" when prompted to take additional services down. All the services must be down to prevent interlock problems when updating software. (Shut down services on Node 1 LAST to prevent an accidental failover!) Also, after stopping all services, be sure to close the "DMZ Config" program on all nodes before installing any software; if this program is not closed, your installations may require you to reboot the server.
- Run the standard MOVEit DMZ software update program on node 1. Answer Yes to "Do you want to perform the database upgrade?" Do NOT run the InstallChecker after updating the software; wait until all the nodes are updated. If you do run the InstallChecker, it may work normally for node 1, but will definitely fail on other nodes.
- Run the MOVEit DMZ Resiliency software update on node 1. Check the "Launch Config" box when prompted; you will start services through this utility later.
- Run the standard MOVEit DMZ software update program on the remainder of the nodes. Answer No to "Do you want to perform the database upgrade?" Do NOT run the InstallChecker after updating the software; wait until all the nodes are updated. If you do run the InstallChecker, expect to see a "Database down" error and know that none of file transfer tests will work.
- Run the MOVEit DMZ Resiliency software update on the other nodes. Once again, check the "Launch Config" box when prompted; you will start services through this utility later.
- After you have finished updating all resilient nodes with the latest versions of both MOVEit DMZ and MOVEit DMZ Resiliency, go back to node 1 and reopen the MOVEit DMZ Configuration Utility Advanced Resiliency Tasks dialog. Start the MySQL service on node 1 and then press the "Record Replication" button.
- On node 2, start the MySQL service and then press the "Copy Database" button on the Advanced Resiliency Tasks dialog.
- Next, press the "Use Replication Info" button on node 2's Advanced Resiliency Tasks dialog.
- Start the resiliency services (DB Resil and Web Resil) on all nodes, starting with node 1. After these services have run, it is now safe to run the MOVEit InstallChecker on any node; normal results are to be expected on any node which runs the InstallChecker.
Upgrade operations are written to the "C:\MOVEitDMZResil_Install.log" file.
Windows Updates
There are two ways to apply non-MOVEit software upgrades, such as Windows patches, to a MOVEit DMZ Resiliency cluster. Choosing which procedure to follow depends on how much downtime you are willing to accept, as well as how many patches and updates need to be applied.
Procedure 1
This procedure should be used if there are is only a small number of updates to apply, and all can be applied with only a single reboot. It minimizes the amount of downtime the resiliency cluster will encounter, but also limits the number and complexity of the updates that can be applied.
- Leave all nodes running. Apply updates to the slave node(s) and reboot. Depending on how long the nodes take to reboot, the master node may notice the slave nodes have disappeared and send email alerts to the Send Errors To email address. These messages can be safely ignored.
- Once all slave nodes have been updated and rebooted, and the status of the resiliency setup is back to being All OK, apply updates to the master node and reboot. This is where the downtime will occur for this procedure. As soon as the master node shuts down, the resiliency cluster will no longer be available. Depending on how long the node takes to reboot, a slave node may decide to become master. At that point, the resiliency cluster will become available again. Otherwise, it will become available once the master node has booted and its resiliency services have started.
Procedure 2
This procedure should be used if there are a large number of updates to apply, or one or more updates require a reboot before applying other updates (for example, one of the updates is a service pack). This procedure requires more downtime, as the resiliency cluster will need to be completely unavailable between the time the procedure is started, and it is complete. However, it allows much more flexibility in the numbers and types of updates that can be applied.
- Stop the resiliency services on all slave nodes by running the MOVEit DMZ Config program, switching to the Resiliency tab, clicking the Advanced button, and then clicking the Stop button for the DB Resil and Web Resil entries in the Services section. Answer Yes when asked to stop the other services as well. Repeat on the master node.
- Using the Windows Services manager, set the Startup Type for the DMZResil and SQLResil services to Disabled on all nodes. This will prevent the resiliency services from attempting to start after reboots.
- Apply all updates to all servers. The resiliency services will stay down during multiple reboots.
- Once all nodes have been updated and have booted, set the Startup Type for the DMZResil and SQLResil services on the master node to Automatic, and start both services.
- Once the resiliency services on the master node have been started, set the Startup Type for the DMZResil and SQLResil services on all slave nodes to Automatic, and start them.