If you wish to upgrade to a new Gurobi release, you can of course shut down the cluster, upgrade the Compute Server nodes and the Cluster Manager instances, and restart all of the components. However, if you have set up a scalable architecture with a load balancer in front of the Cluster Manager instances, you can do a rolling upgrade to minimize the impact to the existing users. In this case, we recommend the following process:
- First, upgrade the Cluster Manager. New Cluster Manager instances can be added to the cluster and old ones can be progressively terminated.
- Then, upgrade the Compute Server nodes, one at a time. To do so, use the Cluster Manager to stop a node so that new jobs will not be scheduled but existing jobs will continue until completion. Once the node has fully stopped, upgrade the node and add it back to the cluster. This can be repeated for each node.
We also recommend to test this process in a QA environment to understand the different steps and how they apply to your specific environment.
In all cases, when installing the Cluster Manager on an existing deployment, the database schema may need to be upgraded. Please check the release notes to locate the schema for the version you are upgrading to.
For a minor upgrade, the database will be automatically migrated when starting the Cluster Manager. During that process, new fields will be added and indexes will be dropped and recreated. No data will be deleted, and migrating is a safe process. However, a backup of the data is still recommended before the upgrade is started.
For a major upgrade, please carefully follow the directions in the release notes. The upgrade will not be triggered automatically, and you will be advised to take a backup of your database first.
In all cases, you can display the schema information and trigger the upgrade manually with the grb_rsm database command. For example, if you were running version 9.1.2, and you are upgrading to 9.5.0, this command will display the following:
> grb_rsm database
info : Current schema version is 1.0.0
info : Latest schema version is 1.1.0
info : Please consider upgrading the database schema with 'grb_rsm database —upgrade' command
If you want to proceed with the upgrade at this time, use the —upgrade flag:
> grb_rsm database —upgrade
info : Starting database schema upgrade
info : Database schema, replacing 6 indexes
info : Database schema upgraded from version 1.0.0 to version 1.1.0
info : Database upgraded