クロスエンジンアップグレードを含むエンジンバージョンのアップグレード - Amazon ElastiCache

クロスエンジンアップグレードを含むエンジンバージョンのアップグレード

Valkey および Redis OSS

Valkey および Redis OSS では、クラスターまたはレプリケーショングループに対するバージョンアップグレードを開始するには、ElastiCache コンソール、AWS CLI、または ElastiCache API を使用してクラスターまたはレプリケーショングループを変更し、新しいエンジンバージョンを指定します。

Redis OSS から Valkey へのクロスアップグレードも可能です。アップグレード方法の詳細については、「Redis OSS から Valkey へアップグレードする方法」を参照してください。

Memcached

Memcached では、クラスターのバージョンアップグレードを開始するには、クラスターを変更し、新しいエンジンバージョンを指定します。これを行うには、ElastiCache コンソールのAWS CLI、または ElastiCache API を使用します。

Redis OSS から Valkey へアップグレードする方法

Valkeyは、Redis OSS 7のドロップイン代替として設計されています。新しいエンジンとメジャーエンジンバージョンを指定することで、コンソール、API、または CLI を使用して Redis OSS から Valkey にアップグレードできます。エンドポイント IP アドレス、およびアプリケーションの他のすべての側面は、アップグレードによって変更されることはありません。Redis OSS 5.0.6 以降からアップグレードする場合、ダウンタイムは発生しません。

注記

Redis OSS から Valkey へのアップグレードに関する AWS CLI のバージョンの要件:

  • AWS CLI v1 の場合: 最低限必要なバージョン 1.35.2 (現在のバージョン: 1.40.22)

  • AWS CLI v2 の場合: 最低限必要なバージョン 2.18.2 (現在のバージョン: 2.27.22)

注記
  • 5.0.6 より前の Redis OSS バージョンからアップグレードする場合、DNS 伝播中に 30~60 秒間のフェイルオーバーが発生することがあります。

  • 既存の Redis OSS (クラスターモードが無効の状態) の単一ノードクラスターを Valkey エンジンにアップグレードするには、まず「既存のクラスターを使用したレプリケーショングループの作成」のステップを実行してください。Redis OSS (クラスターモードが無効の状態) の単一ノードクラスターをレプリケーショングループに追加すると、Valkey へのクロスエンジンアップグレードが可能になります。

Redis OSS から Valkey へのレプリケーショングループのアップグレード

デフォルトのキャッシュパラメータグループを使用している既存の Redis OSS レプリケーショングループがある場合は、modify-replication-group API で新しいエンジンとエンジンバージョンを指定することで、Valkey にアップグレードできます。

Linux、macOS、Unix の場合:

aws elasticache modify-replication-group \ --replication-group-id myReplGroup \ --engine valkey \ --engine-version 8.0

Windows の場合:

aws elasticache modify-replication-group ^ --replication-group-id myReplGroup ^ --engine valkey ^ --engine-version 8.0

アップグレードする既存の Redis OSS レプリケーショングループに適用されたカスタムキャッシュパラメータグループがある場合は、リクエストでカスタムの Valkey キャッシュパラメータグループも渡す必要があります。入力された Valkey カスタムパラメータグループは、既存の Redis OSS カスタムパラメータグループと同じ Redis OSS 静的パラメータ値を持っている必要があります。

Linux、macOS、Unix の場合:

aws elasticache modify-replication-group \ --replication-group-id myReplGroup \ --engine valkey \ --engine-version 8.0 \ --cache-parameter-group-name myParamGroup

Windows の場合:

aws elasticache modify-replication-group ^ --replication-group-id myReplGroup ^ --engine valkey ^ --engine-version 8.0 ^ --cache-parameter-group-name myParamGroup

CLI を使用した Redis OSS サーバーレスキャッシュの Valkey へのアップグレード

Linux、macOS、Unix の場合:

aws elasticache modify-serverless-cache \ --serverless-cache-name myCluster \ --engine valkey \ --major-engine-version 8

Windows の場合:

aws elasticache modify-serverless-cache ^ --serverless-cache-name myCluster ^ --engine valkey ^ --major-engine-version 8

コンソールを使用した Redis OSS の Valkey へのアップグレード

Redis OSS 5 から Valkey へのアップグレード

  1. アップグレードする Redis OSS キャッシュを選択します。

  2. [Valkey にアップグレード] ウィンドウが表示されます。[Valkey にアップグレード] ボタンを選択します。

  3. [キャッシュ設定] に移動し、[エンジンバージョン] を選択します。Valkey の最新バージョンをお勧めします。

  4. このキャッシュがサーバーレスの場合は、パラメータグループを更新する必要があります。[キャッシュ設定][パラメータグループ] 領域に移動し、default.valkey8 など適切なパラメータグループを選択します。

  5. [アップグレード] を選択します。

このキャッシュは、コンソールの Valkey 領域に一覧表示されるようになります。

注記

Redis OSS 4 以前から Valkey に直接アップグレードすると、DNS 伝播中にフェイルオーバー時間が 30~60 秒長くなることがあります。

Valkey から Redis OSS にダウングレードする方法

理由を問わず、アップグレードしたクラスターをロールバックする場合、Amazon ElastiCache では Valkey 7.2 キャッシュの Redis OSS 7.1 へのロールバックがサポートされています。ロールバックを実行するには、エンジンのアップグレードと同じコンソール、API、または CLI のステップを使用し、ターゲットエンジンバージョンとして Redis OSS 7.1 を指定します。ロールバックは、アップグレードと同じプロセスを使用します。エンドポイント IP アドレス、およびアプリケーションの他のすべての側面は、ロールバックによって変更されることはなく、ダウンタイムも発生しません。

さらに、Valkey 7.2 キャッシュから作成されたスナップショットを Redis OSS 7.1 キャッシュとして復元することもできます。スナップショットから復元すると、ターゲットエンジンバージョンとして Redis OSS 7.1 を指定できます。このオプションを使用すると、スナップショットから新しいキャッシュが作成されます。スナップショットから復元しても、スナップショットの作成元である Valkey キャッシュには影響しません。

ロールバックを実行するときは、次の要件と制限が適用されます。

  • ElastiCache は、Valkey 7.2 から Redis OSS 7.1 へのロールバックのみをサポートしています。これは、Redis OSS 7.1 以前のバージョンから Valkey 7.2 にアップグレードした場合でも当てはまります。

  • ロールバックされるレプリケーショングループまたはサーバーレスキャッシュに関連付けられているすべてのユーザーグループとユーザーは、エンジンタイプ REDIS で構成する必要があります。

ブロックされた Valkey または Redis OSS エンジンのアップグレードを解決する

以下の表に示すように、保留中のスケールアップオペレーションがある場合、Valkey または Redis OSS エンジンのアップグレードオペレーションはブロックされます。

保留中のオペレーション ブロックされたオペレーション
スケールアップ 即時のエンジンのアップグレード
エンジンのアップグレード 即時のスケールアップ
スケールアップとエンジンのアップグレード 即時のスケールアップ
即時のエンジンのアップグレード
ブロックされた Valkey または Redis OSS のエンジンのアップグレードを解決する方法
  • 次のいずれかを行います:

    • 次のメンテナンス期間に Redis OSS または Valkey のエンジンのアップグレードオペレーションをスケジュールするには、[すぐに適用] チェックボックスをクリアします。

      CLI では、--no-apply-immediately を使用します。API では、ApplyImmediately=false を使用します。

    • Redis OSS のエンジンアップグレードオペレーションを実行する次のメンテナンスウィンドウ (またはその後) まで待ちます。

    • [すぐに適用] チェックボックスをオンにすることで、Redis OSS のスケールアップオペレーションをこのクラスターの変更に追加します。

      CLI では、--apply-immediately を使用します。API では、ApplyImmediately=true を使用します。

      このアプローチにより、エンジンのアップグレードがすぐに実行されて、次のメンテナンスウィンドウ中のエンジンのアップグレードはキャンセルされます。