To upgrade an existing installation to a new version of VMware Tanzu GemFire, follow these general steps:
In many cases, components running under the current version can be stopped selectively, then restarted under the new version so that the cluster as a whole remains functional during the upgrade process; this is known as a “rolling upgrade.”
In other cases, the entire system must be stopped in order to accomplish the upgrade, which will require some downtime for your system.
See Planning an Upgrade to choose the upgrade scenario that best suits your implementation and to understand the resources you will need to accomplish the upgrade. Then select the appropriate upgrade procedure for more detailed instructions that fit your specific needs.
This section discusses the upgrade paths for various VMware Tanzu GemFire versions, and it lists information you need to know before you begin the upgrade process.
A rolling upgrade allows you to keep your existing cluster running while you upgrade your members one at a time.
An offline upgrade can handle the widest variety of software versions and cluster configurations, but requires shutting down the entire system for at least a short time.
When you upgrade your GemFire server software, you may need to update your client applications in order to maintain compatibility with the upgraded servers.
For some customers, issues regarding SSL protocols and their default values require a preparatory SSL protocol migration step when upgrading to GemFire v9.15. Please read the following section carefully to determine whether your system requires this additional SSL protocol migration step.
To determine whether your system requires the SSL protocol migration preparatory step, see if your system meets both of the following conditions:
ssl-endpoint-identification-enabled
is set to true
ANDssl-protocols
is set to a value other than “any”, that is, it specifies a list of specific protocols, but does not include “SSLv2Hello”,THEN your system requires the SSL protocol migration step.
How do I determine my system’s settings for the ssl-endpoint-identification-enabled
and ssl-protocols
properties?
SSL properties may be set in properties files or on the gfsh command line. To determine the settings for these parameters,
Check gemfire.properties
and gfsecurity.properties
for ssl-endpoint-identification-enabled=true
. Also look for ssl-use-default-context=true
, which sets ssl-endpoint-identification-enabled=true
.
Search system logs for these properties (using grep
, for example).
The preparatory SSL protocol migration process consists of replacing one property, ssl-protocols
, with two new properties, ssl-client-protocols
and ssl-server-protocols
, then removing the old ssl-protocols
definition. Perform this substitution in whatever way the original ssl-protocols
were defined: in .properties
files or on a command line.
ssl-client-protocols
with the same definition as the old ssl-protocols
property.ssl-server-protocols
with the same definition as the old ssl-protocols
property PLUS “SSLv2Hello”. For example, if the original value of ssl-protocols
is “TLSv1.2”, then define
ssl-client-protocols="TLSv1.2"
ssl-server-protocols="TLSv1.2,SSLv2Hello"
Optionally, after your upgrade is complete, you may restore your original ssl-protocols
property and restart all your members to eliminate the SSLv2Hello
protocol support.