Chapter 6. Upgrading Data Grid clusters


Data Grid Operator lets you upgrade Data Grid clusters from one version to another without downtime or data loss.

Important

Hot Rod rolling upgrades are available as a technology preview feature.

6.1. Technology preview features

Technology preview features or capabilities are not supported with Red Hat production service-level agreements (SLAs) and might not be functionally complete.

Red Hat does not recommend using technology preview features or capabilities for production. These features provide early access to upcoming product features, which enables you to test functionality and provide feedback during the development process.

For more information, see Red Hat Technology Preview Features Support Scope.

6.2. Data Grid cluster upgrades

The spec.upgrades.type field controls how Data Grid Operator upgrades your Data Grid cluster when new versions become available. There are two types of cluster upgrade:

Shutdown
Upgrades Data Grid clusters with service downtime. This is the default upgrade type.
HotRodRolling
Upgrades Data Grid clusters without service downtime.

Shutdown upgrades

To perform a shutdown upgrade, Data Grid Operator does the following:

  1. Gracefully shuts down the existing cluster.
  2. Removes the existing cluster.
  3. Creates a new cluster with the target version.

Hot Rod rolling upgrades

To perform a Hot Rod rolling upgrade, Data Grid Operator does the following:

  1. Creates a new Data Grid cluster with the target version that runs alongside your existing cluster.
  2. Creates a remote cache store to transfer data from the existing cluster to the new cluster.
  3. Redirects all clients to the new cluster.
  4. Removes the existing cluster when all data and client connections are transferred to the new cluster.
Important

You should not perform Hot Rod rolling upgrades with caches that enable passivation with persistent cache stores. In the event that the upgrade does not complete successfully, passivation can result in data loss when Data Grid Operator rolls back the target cluster.

If your cache configuration enables passivation you should perform a shutdown upgrade.

6.3. Upgrading Data Grid clusters with downtime

Upgrading Data Grid clusters with downtime results in service disruption but does not require any additional capacity.

Prerequisites

  • The Data Grid Operator version you have installed supports the Data Grid target version.
  • If required, configure a persistent cache store to preserve your data during the upgrade.

    Important

    At the start of the upgrade process Data Grid Operator shuts down your existing cluster. This results in data loss if you do not configure a persistent cache store.

Procedure

  1. Specify the Data Grid version number in the spec.version field.
  2. Ensure that Shutdown is set as the value for the spec.upgrades.type field, which is the default.

    spec:
      version: 8.4.6-1
      upgrades:
        type: Shutdown
  3. Apply your changes, if necessary.

When new Data Grid version becomes available, you must manually change the value in the spec.version field to trigger the upgrade.

6.4. Performing Hot Rod rolling upgrades for Data Grid clusters

Performing Hot Rod rolling upgrades lets you move to a new Data Grid version without service disruption. However, this upgrade type requires additional capacity and temporarily results in two Data Grid clusters with different versions running concurrently.

Prerequisite

  • The Data Grid Operator version you have installed supports the Data Grid target version.

Procedure

  1. Specify the Data Grid version number in the spec.version field.
  2. Specify HotRodRolling as the value for the spec.upgrades.type field.

    spec:
      version: 8.4.6-1
      upgrades:
        type: HotRodRolling
  3. Apply your changes.

When new Data Grid version becomes available, you must manually change the value in the spec.version field to trigger the upgrade.

6.4.1. Recovering from a failed Hot Rod rolling upgrade

You can roll back a failed Hot Rod rolling upgrade to the previous version if the original cluster is still present.

Prerequisites

  • Hot Rod rolling upgrade is in progress and the initial Data Grid cluster is present.

Procedure

  1. Ensure the Hot Rod rolling upgrade is in progress.

    oc get infinispan <cr_name> -o yaml

    The status.hotRodRollingUpgradeStatus field must be present.

  2. Update spec.version field of your Infinispan CR to the original cluster version defined in the status.hotRodRollingUpgradeStatus.

    Data Grid Operator deletes the newly created cluster.

Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.