DXP Support Coverage
Rolling Restart Maintenance
With a desire to increase uptime and availability many customers implement rolling restarts. Rolling restarts allows customers to have near 100% uptime despite server maintenance by selectively shutting down one JVM instance within a cluster, performing the necessary maintenance on that instance, and then restarting that instance to join the cluster again. This process is repeated until all the nodes in a cluster have been updated.
Defining Coverage
- Liferay seeks to ensure that Liferay DXP is compatible with the industry accepted practice of rolling restarts to modify portal properties, install and uninstall fix packs, install new plugins or modules, update existing plugins and modules, and update the minor java version given that these functions meet the rolling restart requirements.
- Liferay seeks to ensure that Liferay DXP is compatible with the industry accepted practice of rolling restarts to the extent that the product is minimally functional and able to respond to limited requests during the defined maintenance window. Minimal functionality is defined by Liferay product engineers on a case-by-case basis.
- Liferay recommends mitigating the risks of production updates through the rolling restart technique as opposed to hot deployment. However, the feasibility and implementation of the rolling restart technique within a specific environment would be the responsibility of the customer.
- Subscription Services will offer guidance in determining if a Liferay product update meets the rolling restart requirements.
- Successfully performing the rolling restart technique involves the interoperability of multiple third-party technologies. Configuring the third-party technology necessary to perform a rolling restart within a cluster would be the responsibility of the customer.
Rolling Restart Requirements
Any maintenance function performed while utilizing the rolling restart technique must meet the below requirements to be tested as compatible with Liferay DXP.
Fix Pack Installation
Fix pack installation utilizing a rolling restart technique is assured as compatible with Liferay DXP as long as the new fix pack is revertible and there are no non-revertible fix packs in between the currently installed fix pack and the desired fix pack. Fix packs which are or will be included in a service pack contain non-revertible database changes. These fix packs will be identified as non-revertible on the Customer Portal and have Important Changes documentation with them or have been documented in the Rolling Restart - Breaking Changes knowledge base article.
Typically, non-revertible fix packs end with a zero. Not all service packs contain non-revertible fix packs, but many do.
New Plugins or Modules
The deployment of new plugins or modules utilizing the rolling restart technique is assured as compatible with Liferay DXP as long as the plugins or modules do not delete or rename any columns from the database or modify the data in a way that breaks compatibility with existing versions. Any updates which delete tables or break compatibility should be performed while all nodes in a cluster are shut down.
Updating Plugins or Modules
Updating already deployed plugins or modules utilizing the rolling restart technique is assured as compatible with Liferay DXP as long as the plugins or modules do not delete or rename any columns from the database or modify the data in a way that breaks compatibility with the previous version. Any updates which delete tables or break compatibility should be performed while all nodes in a cluster are shut down.
Development techniques exist (e.g., blue-green deployment) which can accommodate database schema changes while utilizing the rolling restart technique. Liferay products will not utilize these development techniques as the technique requires minor changes over time applied specific order and Liferay can not guarantee that product releases will be applied in the proper order.
Blue-green deployment can take place in custom development without impacting the functionality of Liferay Software. Please consult with an Account Executive or Customer Experience Manager to explore options related development assistance.
Java Version Updates
Updating a Java JDK installation utilizing the rolling restart technique is assured as compatible with Liferay DXP given that the version increment is limited to a minor version. Updating the major version of the Java JDK installation utilized by Liferay DXP is not assured as compatible with the rolling restart technique and should be performed while all nodes in a cluster are shut down.