An operation that relies on redundant servers implies the operation experiences the minimum amount of downtime during a transition between servers. This includes the process of upgrading the servers to different versions of Ignition. This knowledgebase article discusses the process of upgrading redundant Ignition servers from their current version of Ignition to a subsequent version of Ignition.
Ignition 7.7 brought numerous changes to Ignition therefore an Ignition 7.7 server cannot be in a redundant relationship with an Ignition 7.6 server. In this context, planning is important in order execute the upgrade in the minimum amount of time and with the highest probability of success.
The current release of Ignition at the time of this article is 7.7.2. This version of Ignition requires Java SE 8. Previous versions of Ignition did not have this requirement. For example, Ignition 7.6.7 was compatible with Java 7. Therefore focusing on simply upgrading Ignition may result in the inability for the upgraded Ignition server to start due to its incompatibility with the server’s current version of Java.
A method to minimizing the downtime is to perform the upgrade on the master server before upgrading the backup server. In a redundant server system, the master server periodically informs the clients about who the master and the backup servers are. Should the master server fail, the client will automatically seek the backup server. However, the clients will not be able to find the backup if the backup server is a newer version of Ignition and therefore cannot be a backup server in this context. Consequently, any running clients will need to be restarted manually after the upgrade process.
The following details the steps to upgrade a redundant pair of Ignition servers.
The first priority is to confirm the Java installation on the master server is compatible with the intended version of Ignition about to be installed onto the master server. If the master server has a Windows based operating system then the version of Java is found by selecting "About Java" from within the start menu. The picture below demonstrates how to determine the current version of Java. In this case this version of Java is compatible with Ignition 7.7 and above. If the version of Java is less than version 8 than it will be necessary to upgrade Java before installing Ignition 7.7 or later versions of Ignition. Regardless, the Ignition installer will attempt to find Java 8 before starting the installation process and will stop the installation process if it cannot find it.
To proceed with the upgrade, stop the master server resulting in the backup server to take over as the active server. Install the new version of Ignition onto the master server. The previous license will carry over during the upgrade process therefore there will be no need to update the license. The installation of the upgraded version of Ignition will proceed in the same fashion as on a non-redundant system. During this time the backup server continues to operate. The master server will ask for permission to start upon completion of the upgrade. Select the option to start the master server. The master server will carry over the configurations from the previous version of the Gateway. This includes the backup settings however the connection to the backup server will fail due to the difference between versions of Ignition. The console on the backup server will show the master Gateway’s attempts to establish contact with the backup server.
Next, begin the upgrade process on the backup server following the same process as the master server. Ignition will carry over the previous configurations that existed before the upgrade. This includes its role as backup server.
Upon completion of the upgrade to the backup server, the backup server will establish a connection with the master server and begin its role as the master server’s backup server should the master server fail.
The following picture demonstrates a recently upgraded redundant pair of Ignition servers.
A good practice is to test the redundancy by stopping the master server and examining the actions of the backup server. An indication that the backup server took over from the master server is indicated in the backup server’s gateway status page. The Ignition Gateway should show ‘Backup-Active.’ The picture below is an example of an active backup.
Restart the master server. Within a few moments the backup server’s gateway status page will reflect the master server taking over for the operation.
The entire update process should take no more than 30 minutes to upgrade the servers and to update Java if appropriate.