

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ElastiCache でのエンジンバージョンとアップグレード
<a name="engine-versions"></a>

このセクションでは、サポートされる Valkey、Memcached、Redis OSS エンジンとアップグレード方法について説明します。Redis OSS 7.2 で使用できるすべての機能は、Valkey 7.2 以降でもデフォルトで利用可能です。既存の ElastiCache for Redis OSS エンジンから Valkey エンジンにアップグレードすることもできます。

# クロスエンジンアップグレードを含むエンジンバージョンのアップグレード
<a name="VersionManagement.HowTo"></a>

**Valkey および Redis OSS**

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

Redis OSS から Valkey へのクロスアップグレードも可能です。アップグレード方法の詳細については、「[Redis OSS から Valkey へアップグレードする方法](#VersionManagement.HowTo.cross-engine-upgrade)」を参照してください。

**Topics**
+ [Redis OSS から Valkey へアップグレードする方法](#VersionManagement.HowTo.cross-engine-upgrade)
+ [ブロックされた Valkey または Redis OSS エンジンのアップグレードを解決する](#resolving-blocked-engine-upgrades)


****  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/dg/VersionManagement.HowTo.html)

**Memcached**

Memcached では、クラスターのバージョンアップグレードを開始するには、クラスターを変更し、新しいエンジンバージョンを指定します。これを行うには、ElastiCache コンソールのAWS CLI、または ElastiCache API を使用します。
+ AWS マネジメントコンソール を使用するには、「[ElastiCache AWS マネジメントコンソール の使用](Clusters.Modify.md#Clusters.Modify.CON)」を参照してください。
+ AWS CLI を使用するには、「[ElastiCache で AWS CLI を使用する](Clusters.Modify.md#Clusters.Modify.CLI)」を参照してください。
+ ElastiCache API を使用するには、「[ElastiCache API の使用](Clusters.Modify.md#Clusters.Modify.API)」を参照してください。

## Redis OSS から Valkey へアップグレードする方法
<a name="VersionManagement.HowTo.cross-engine-upgrade"></a>

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

### Redis OSS から Valkey へのレプリケーショングループのアップグレード
<a name="cross-engine-upgrades.replication-group"></a>

デフォルトのキャッシュパラメータグループを使用している既存の 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 へのアップグレード
<a name="cross-engine-upgrades.cli"></a>

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 へのアップグレード
<a name="cross-engine-upgrades.console"></a>

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

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

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

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

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

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

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

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

### Valkey から Redis OSS にダウングレードする方法
<a name="cross-engine-downgrades.console"></a>

 理由を問わず、アップグレードしたクラスターをロールバックする場合、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 エンジンのアップグレードを解決する
<a name="resolving-blocked-engine-upgrades"></a>

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


****  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/dg/VersionManagement.HowTo.html)

**ブロックされた Valkey または Redis OSS のエンジンのアップグレードを解決する方法**
+ 次のいずれかを行います:
  + 次のメンテナンス期間に Redis OSS または Valkey のエンジンのアップグレードオペレーションをスケジュールするには、**[すぐに適用]** チェックボックスをクリアします。

    CLI では、`--no-apply-immediately` を使用します。API では、`ApplyImmediately=false` を使用します。
  + Redis OSS のエンジンアップグレードオペレーションを実行する次のメンテナンスウィンドウ (またはその後) まで待ちます。
  + **[すぐに適用]** チェックボックスをオンにすることで、Redis OSS のスケールアップオペレーションをこのクラスターの変更に追加します。

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

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

# ElastiCache 延長サポート
<a name="extended-support"></a>

ElastiCache 延長サポートを利用すると、追加料金を支払うことで、標準サポート終了日を過ぎたメジャーエンジンバージョンでキャッシュを引き続き実行できます。標準サポート終了日以降にアップグレードしない場合、料金が発生します。

延長サポートでは、次の更新とテクニカルサポートを利用できます。
+ キャッシュとキャッシュエンジンについて、重大な CVE および高の評価を受けた CVE に対するセキュリティ更新
+ 重大な問題のバグ修正とパッチ
+ 標準 ElastiCache サービスレベルアグリーメントの範囲内でサポートケースを開き、トラブルシューティングのヘルプを受け取る機能

この有料サービスを利用すると、サポートされているメジャーエンジンバージョンへのアップグレードにかかる時間が長くなります。

例えば、Redis OSS 4.0.10 の ElastiCache 標準サポート終了日が 2026 年 1 月 31 日であるとします。その日までに Valkey または Redis OSS 6 以降に手動でアップグレードする準備ができていない場合、ElastiCache は自動的にキャッシュを延長サポートに登録するため、Redis OSS 4.0.10 を引き続き実行できます。標準サポートが終了した翌月の 1 日、つまり 2026 年 2 月 1 日より、ElastiCache は自動的に拡張サポートの料金を請求します。

延長サポートは、メジャーエンジンバージョンの標準サポート終了日から最大 3 年間利用できます。Elasticache for Redis OSS バージョン 4 と 5 の場合、2029 年 1 月 31 日がこれに該当します。この日以降も Redis OSS バージョン 4 と 5 を実行しているキャッシュは、最新バージョンの Valkey に自動的にアップグレードされます。

エンジンのサポート期間が終了すると、古いバージョンを引き続き実行するキャッシュは自動的に延長サポートに移行します。延長サポートの料金開始日前に通知されるため、代わりにインスタンスをアップグレードすることができます。また、サポートされているバージョンにアップグレードすることで、いつでも明示的にオプトアウトできます。

Valkey、Memcached、または Redis OSS の標準サポート終了日と延長サポート終了日の詳細については、「[Redis OSS 用の ElastiCache バージョンのサポート終了スケジュール](engine-versions.md#deprecated-engine-versions)」を参照してください。

**Topics**
+ [ElastiCache 延長サポート料金](extended-support-charges.md)
+ [ElastiCache 延長サポートが適用されるバージョン](extended-support-versions.md)
+ [ElastiCache の責任、および ElastiCache 延長サポートに関する顧客の責任](extended-support-responsibilities.md)

# ElastiCache 延長サポート料金
<a name="extended-support-charges"></a>

ElastiCache 延長サポートに登録しているすべてのエンジンには、標準サポート終了日の翌日から料金が発生します。ElastiCache 標準サポート終了日については、「[ElastiCache 延長サポートが適用されるバージョン](extended-support-versions.md)」を参照してください。

ElastiCache 延長サポートの追加料金は、次のいずれかのアクションを実行すると、自動的に停止します。
+ 標準サポートの対象となるエンジンバージョンにアップグレードします。
+ ElastiCache 標準サポート終了日を過ぎたメジャーバージョンを実行しているキャッシュを削除します。

将来、ターゲットエンジンバージョンが延長サポートに移行すると、料金が再び発生します。

例えば、Redis OSS 用の ElastiCache バージョン 4 が 2026 年 2 月 1 日に延長サポートに移行し、2027 年 1 月 1 日に v4 のキャッシュを v6 にアップグレードするとします。この場合、料金が発生するのは、Redis OSS 用の ElastiCache バージョン 4 の 11 か月間の延長サポートに対してのみです。2027 年 1 月 31 日の標準サポート終了日を過ぎた Redis OSS 用の ElastiCache バージョン 6 を引き続き実行する場合、それらのキャッシュには 2027 年 2 月 1 日から延長サポートの料金が再び発生します。

ElastiCache が ElastiCache 標準サポート終了日を過ぎたキャッシュを作成または復元しないように、ElastiCache 延長サポートの料金が発生するのを回避できます。

詳細については、「[Amazon ElastiCache 料金表](https://aws.amazon.com/elasticache/pricing/)」を参照してください。

# ElastiCache 延長サポートが適用されるバージョン
<a name="extended-support-versions"></a>

Redis オープンソースソフトウェア (OSS) バージョン 4 と 5 は、それぞれ 2020 年と 2022 年にコミュニティのサポート終了 (EOL) を迎えました。つまり、コミュニティによる追加のアップデート、バグ修正、またはセキュリティパッチのリリースが行われないということです。ElastiCache での ElastiCache Redis OSS バージョン 4 と 5 の標準サポートは、2026 年 1 月 31 日に終了します。サポートされていないバージョンの Redis OSS を引き続き使用すると、データが既知の[共通脆弱性識別子](https://nvd.nist.gov/vuln-metrics/cvss) (CVE) に対して脆弱になる可能性があります。

2026 年 2 月 1 日以降、Redis OSS バージョン 4 と 5 で引き続き実行されている ElastiCache キャッシュは、可用性とセキュリティの継続的な提供のために、自動的に延長サポートに登録されます。延長サポートは柔軟性がありますが、本番ワークロードに関しては、標準サポート終了日を計画マイルストーンとして扱うことをお勧めします。標準サポートが終了する前に、Redis OSS v4 と v5 のキャッシュを Valkey と Redis OSS v6 に対応した ElastiCache にアップグレードすることを強くお勧めします。

次の表は、Amazon ElastiCache の標準サポート終了日と延長サポート終了日をまとめたものです。

**延長サポートとサポート終了 (EOL) のスケジュール**


| メジャーエンジンバージョン | 標準サポート終了日 | 延長サポート Y1 プレミアムの開始日 | 延長サポート Y2 プレミアムの開始日 | 延長サポート Y3 プレミアムの開始日 | 延長サポートの終了日とバージョンの EOL | 
| --- | --- | --- | --- | --- | --- | 
| Redis OSS v4 | 2026/1/31 | 2026/2/1 | 2027/2/1 | 2028/2/1 | 1/31/2029 | 
| Redis OSS v5 | 2026/1/31 | 2026/2/1 | 2027/2/1 | 2028/2/1 | 1/31/2029 | 
| Redis OSS v6 | 1/31/2027 | 2027/2/1 | 2028/2/1 | 2029/2/1 | 1/31/2030 | 

延長サポートは、主要な Redis OSS バージョンそれぞれの最新のサポートされているパッチバージョンに対してのみ提供されます。2026 年 2 月 1 日に延長サポートが開始されると、Redis OSS v4 と v5 のクラスターが最新のパッチバージョンにまだなっていない場合、延長サポートに登録される前に、Redis OSS v4 の場合は v4.0.10、Redis OSS v5 の場合は v5.0.6 に自動的にアップグレードされます。これにより、延長サポートを通じてセキュリティ更新とバグ修正を確実に受け取ることができます。延長サポートの移行の一環として、これらの最新のパッチバージョンにアップグレードするためのアクションを実行する必要はありません。

# ElastiCache の責任、および ElastiCache 延長サポートに関する顧客の責任
<a name="extended-support-responsibilities"></a>

Amazon ElastiCache の責任と、延長サポートに関する顧客の責任は次のとおりです。

**Amazon ElastiCache の責任**

ElastiCache 標準サポート終了日以降、Amazon ElastiCache は ElastiCache 延長サポートに登録しているエンジンに対してパッチ、バグ修正、アップグレードを提供します。これは、最大 3 年間、または拡張サポートでエンジンの使用を停止するまでのいずれか早いほうまで発生します。

**お客様の責任**

ElastiCache 延長サポートのキャッシュに提供されるパッチ、バグ修正、アップグレードを適用するのは顧客の責任です。Amazon ElastiCache は、このようなパッチ、バグ修正、アップグレードをいつでも変更、置換、または撤回する権利を留保します。セキュリティまたは重大な安定性の問題に対処するためにパッチが必要な場合、Amazon ElastiCache はパッチを使用してキャッシュを更新するか、パッチのインストールを要求する権利を留保します。

ElastiCache 延長サポート終了日よりも前に、エンジンをより新しいエンジンバージョンにアップグレードする責任もあります。ElastiCache 延長サポート終了日は、通常、ElastiCache 標準サポート終了日コミュニティサポート終了日から 3 年です。

エンジンをアップグレードしない場合、ElastiCache 延長サポート終了日が過ぎると、Amazon ElastiCache は、エンジンを ElastiCache 標準サポート対象のより新しいエンジンバージョンにアップグレードしようとします。アップグレードが失敗した場合、Amazon ElastiCache は、ElastiCache 標準サポート終了日を過ぎたエンジンを実行しているキャッシュを削除する権利を留保します。ただし、その前に、Amazon ElastiCache はそのエンジンのデータを保存します。

# ElastiCache のバージョン管理
<a name="VersionManagement"></a>

Valkey、Memcached、Redis OSS エンジン用に ElastiCache キャッシュおよびノードベースのクラスターを更新する方法を管理します。

## ElastiCache サーバーレスキャッシュのバージョン管理
<a name="VersionManagement-serverless"></a>

ElastiCache サーバーレスキャッシュをアップグレードするかどうかと、アップグレードのタイミングを管理し、独自の条件とスケジュールに合わせてバージョンのアップグレードを実行します。

ElastiCache Serverless は、アプリケーションに影響を与えたり、ダウンタイムを発生させたりすることなく、最新のマイナーおよびパッチソフトウェアバージョンをキャッシュに自動的に適用します。ユーザー操作は必要はありません。

新しいメジャーバージョンがリリースされると、ElastiCache Serverless からコンソールに通知が送信され、イベントが EventBridge に送信されます。コンソール、CLI、または API を使用してキャッシュを変更し、最新のエンジンバージョンを選択することで、キャッシュを最新のメジャーバージョンにアップグレードできます。マイナーアップグレードやパッチアップグレードと同様に、メジャーバージョンアップグレードはアプリケーションのダウンタイムなしで実行されます。

## ノードベースの ElastiCache クラスターのバージョン管理
<a name="VersionManagement-clusters"></a>

ノードベースの ElastiCache クラスターで作業する場合、クラスターを実現するソフトウェアを、ElastiCache でサポートされる新しいバージョンにアップグレードするタイミングを制御できます。キャッシュを最新のメジャーバージョン、マイナーバージョン、パッチバージョンにアップグレードするタイミングを制御できます。クラスターまたはレプリケーショングループを変更し、新しいエンジンのバージョンを指定することで、クラスターまたはレプリケーショングループに対するエンジンのバージョンのアップグレードを開始します。

クラスターを実現するプロトコルに準拠したソフトウェアを、ElastiCache でサポートされる新しいバージョンにアップグレードするかどうかと、アップグレードの時期を管理できます。このレベルのコントロールにより、特定のバージョンとの互換性を維持する、本稼働環境にデプロイする前にアプリケーションで新しいバージョンをテストする、および独自の条件とタイムラインでバージョンのアップグレードを実行することができます。

バージョンのアップグレードは互換性のリスクがあるため、自動では実行されません。それらを自分で開始する必要があります。

**Valkey クラスターと Redis OSS クラスター**

**注記**  
Valkey または Redis OSS クラスターが 1 つ以上のリージョンにレプリケートされている場合、エンジンバージョンはセカンダリリージョンでアップグレードされてから、プライマリリージョンでアップグレードされます。
 ElastiCache for Redis OSS のバージョンは、メジャーコンポーネントとマイナーコンポーネントで構成されるセマンティックバージョンで識別されます。例えば、Redis OSS 6.2 では、メジャーバージョンは 6、マイナーバージョンは 2 です。ノードベースのクラスターを操作する場合、ElastiCache for Redis OSS は Redis OSS 6.2.1 などの PATCH コンポーネントも公開します。パッチバージョンは 1 です。  
メジャーバージョンは API 非互換の変更用であり、マイナーバージョンは下位互換性のある方法で追加された新機能用です。パッチバージョンは、下位互換性のあるバグ修正と機能以外の変更用です。

Valkey および Redis OSS では、クラスターまたはレプリケーショングループに対するエンジンバージョンのアップグレードを開始するには、クラスターまたはレプリケーショングループを変更し、新しいエンジンバージョンを指定します。詳細については、「[レプリケーショングループの変更](Replication.Modify.md)」を参照してください。

**Memcached**

Memcached では、新しいバージョンにアップグレードするには、クラスターを変更して、使用する新しいエンジンバージョンを指定する必要があります。新しい Memcached バージョンへのアップグレードは破壊的な手順です – データは失われ、コールドキャッシュを使って開始されます。詳細については、「[ElastiCache クラスターの変更](Clusters.Modify.md)」を参照してください。

古いバージョンの Memcached から Memcached バージョン 1.4.33 以降へアップグレードするときは、次の要件に注意する必要があります。以下の条件では、`CreateCacheCluster` および `ModifyCacheCluster` は失敗します。
+ `slab_chunk_max > max_item_size` の場合。
+ `max_item_size modulo slab_chunk_max != 0` の場合。
+ `max_item_size > ((max_cache_memory - memcached_connections_overhead) / 4)` の場合。

  `(max_cache_memory - memcached_connections_overhead)` の値は、データに使用可能なノードのメモリです。詳細については、「[Memcached 接続オーバーヘッド](ParameterGroups.Engine.md#ParameterGroups.Memcached.Overhead)」を参照してください。

## サポートされているエンジンとバージョン
<a name="supported-engine-versions"></a>

ElastiCache サーバーレスキャッシュは、Valkey 用の ElastiCache バージョン 7.2 以降、Memcached 用の ElastiCache バージョン 1.6 以降、Redis OSS 用の ElastiCache 7.0 以降をサポートしています。

ノードベースの ElastiCache クラスターは、Valkey 用の ElastiCache バージョン 7.2 以降、Memcached 用の ElastiCache バージョン 1.4.5 以降、Redis OSS 用の ElastiCache 4.0.10 以降をサポートしています。

**Topics**
+ [サポートされている Valkey バージョン](#supported-engine-versions.valkey)
+ [Valkey 8.2](#valkey-version-8.2)
+ [Valkey 8.1](#valkey-version-8.1)
+ [Valkey 8.0](#valkey-version-8)
+ [Valkey 用の ElastiCache バージョン 7.2.6](#valkey-version-7.2.6)

### サポートされている Valkey バージョン
<a name="supported-engine-versions.valkey"></a>

サポートされている Valkey バージョンは以下のとおりです。Valkey は、Redis OSS 用の ElastiCache バージョン 7.2 で使用できるほとんどの機能をデフォルトでサポートしています。
+ 5.0.6 より前のバージョンで ElastiCache クラスターをアップグレードすることもできます。関連するプロセスは同じですが、DNS の伝播中にフェイルオーバー時間が長くなる可能性があります (30 秒～1 分)。
+ Redis OSS 7 以降、ElastiCache は、Valkey または Redis OSS (クラスターモードが無効) と Valkey または Redis OSS (クラスターモードが有効) の切り替えをサポートしています。
+ Amazon ElastiCache for Redis OSS エンジンのアップグレードプロセスは、既存のデータをベストエフォートで保持するように設計されており、Redis OSS レプリケーションが正常に実行される必要があります。
+ エンジンをアップグレードすると、ElastiCache は既存のクライアント接続を終了します。エンジンのアップグレード中のダウンタイムを最小限に抑えるため、エラー再試行とエクスポネンシャルバックオフによる [Redis OSS クライアントのベストプラクティス](BestPractices.Clients.redis.md)と、[メンテナンス中のダウンタイムを最小限に抑える](BestPractices.MinimizeDowntime.md)ためのベストプラクティスを実装することをお勧めします。
+ エンジンをアップグレードする際、Valkey または Redis OSS (クラスターモードが無効) から Valkey または Redis OSS (クラスターモードが有効) に直接アップグレードすることはできません。以下の手順では、Valkey または Redis OSS (クラスターモードが無効) から Valkey または Redis OSS (クラスターモードが有効) にアップグレードする方法を示しています。

**Valkey または Redis OSS (クラスターモードが無効) から Valkey または Redis OSS (クラスターモードが有効) エンジンバージョンにアップグレードするには**

  1. Valkey または Redis OSS (クラスターモードが無効) クラスターまたはレプリケーショングループのバックアップを作成します。詳細については、「[手動バックアップの取得](backups-manual.md)」を参照してください。

  1. バックアップを使用して、1 つのシャード (ノードグループ) を持つ Valkey または Redis OSS (クラスターモードが有効) クラスターを作成してシードします。新しいエンジンのバージョンを指定し、クラスターまたはレプリケーショングループの作成時にクラスターモードを有効にします。詳細については、「[チュートリアル: 外部で作成されたバックアップで新しいノードベースのクラスターをシードする](backups-seeding-redis.md)」を参照してください。

  1. 古い Valkey または Redis OSS (クラスターモードが無効) クラスターまたはレプリケーショングループを削除します。詳細については、[ElastiCache でのクラスターの削除](Clusters.Delete.md)または[レプリケーショングループの削除](Replication.DeletingRepGroup.md)を参照してください。

  1. 新しい Valkey または Redis OSS (クラスターモードが有効) クラスターまたはレプリケーショングループを、必要なシャード (ノードグループ) の数に合わせてスケールします。詳細については、[Valkey または Redis OSS (クラスターモードが有効) クラスターのスケーリング](scaling-redis-cluster-mode-enabled.md)を参照してください。
+ 例えば、5.0.6 から 6.0 にメジャーエンジンのバージョンをアップグレードする場合は、新しいエンジンバージョンと互換性のある新しいパラメータグループも選択する必要があります。
+ 単一の Redis OSS クラスターや、マルチ AZ が無効になっているクラスターの場合、「[Valkey または Redis OSS スナップショットを作成するのに十分なメモリがあることを確認する](BestPractices.BGSAVE.md)」で説明されているように、Redis OSS 用に十分なメモリを確保することをお勧めします。このような場合、プライマリはアップグレードプロセスの実行中、リクエストに対応できません。
+ マルチ AZ が有効になっている Redis OSS クラスターの場合、書き込みの受信トラフィックが少ない期間中にエンジンのアップグレードを予定することもお勧めします。Redis OSS 5.0.6 以降にアップグレードする場合は、アップグレードプロセス中も、プライマリクラスターは引き続きサービスリクエストを処理できます。

  複数のシャードを含むクラスターおよびレプリケーショングループは、次のように処理および修正されます。
  + すべてのシャードは並行して処理されます。シャードでは、いつでも 1 つのアップグレードオペレーションのみが実行されます。
  + 各シャードでは、プライマリが処理される前にすべてのレプリカが処理されます。シャードにレプリカが少ない場合、他のシャードのレプリカが処理を終了する前に、そのシャードのプライマリが処理されることがあります。
  + すべてのシャード間で、プライマリノードはシリーズで処理されます。一度にアップグレードできるプライマリノードは 1 つだけです。
+ 現在のクラスターまたはレプリケーショングループで暗号化が有効になっている場合、暗号化をサポートしていないエンジンバージョン (3.2.6 から 3.2.10 など) にアップグレードすることはできません。

**Memcached に関する考慮事項**

ノードベースの Memcached クラスターをアップグレードする際は、次の点を考慮してください。
+ エンジンのバージョニングは、パッチの適用方法をできる限り制御できるように設計されています。ただし、ElastiCache には、システムまたはキャッシュソフトウェアに重大なセキュリティ脆弱性が発生する可能性が低い場合に、お客様に代わってクラスターにパッチを適用するための権限あります。
+ Memcached エンジンでは永続性がサポートされていないため、そのエンジンバージョンのアップグレードは常に、クラスターのすべてのキャッシュデータを消去する破壊的なプロセスです。

### Valkey 用の ElastiCache バージョン 8.2
<a name="valkey-version-8.2"></a>

Valkey 8.2 で導入された新機能の一部を以下に示します (ElastiCache Valkey 8.1 との比較)。
+ [ベクトル検索](vector-search.md)のネイティブサポート。数十億の高次元ベクトル埋め込みの保存、インデックス作成、検索、更新をマイクロ秒単位の低レイテンシーでメモリ内で行うことができます。

Valkey の詳細については、「[Valkey](https://valkey.io/)」を参照してください。

Valkey 8.2 リリース、ベクトル検索の導入の詳細については、「[Valkey Search](https://github.com/valkey-io/valkey-search)」を参照してください。

### Valkey 用の ElastiCache バージョン 8.1
<a name="valkey-version-8.1"></a>

Valkey 8.1 で導入された新機能の一部を以下に示します (ElastiCache Valkey 8.0 との比較)。
+ [新しいハッシュテーブル](https://valkey.io/blog/new-hash-table/)の実装により、メモリオーバーヘッドが減少し、一般的なキー/値のパターンのメモリ使用量が最大 20% 低下します。
+ 新しいデータ型である [Bloom フィルター](https://valkey.io/topics/bloomfilters/)のネイティブサポートにより、Set データ型を使用する場合と比較して最大 98% 少ないメモリを使用してルックアップを実行できます。
+ 新しいコマンド [COMMANDLOG](https://valkey.io/commands/commandlog-get/) により、遅い実行、大きなリクエスト、大きな返信を記録できます。
+ IFEQ 引数を使用した SET コマンドの新しい条件付き更新サポート。
+ ZRANK コマンドのレイテンシーが最大 45% 低下、PFMERGE と PFCOUNT のパフォーマンスが最大 12 倍向上、BITCOUNT のスループットが最大 514% 向上するなど、パフォーマンスが向上しました。

Valkey の詳細については、「[Valkey](https://valkey.io/)」を参照してください。

Valkey 8.1 リリースの詳細については、「[Valkey 8.1 Release Notes](https://github.com/valkey-io/valkey/blob/8.1/00-RELEASENOTES)」を参照してください

### Valkey 用の ElastiCache バージョン 8.0
<a name="valkey-version-8"></a>

Valkey 8.0 で導入された新機能の一部を以下に示します (ElastiCache Valkey 7.2.6 との比較)。
+ メモリ効率が向上し、ユーザーはアプリケーションを変更せずに 1 ノードあたり最大 20% 多くのデータを保存できます。
+ ノードベースのクラスター用に新しく導入されたスロットごとのメトリクスインフラストラクチャにより、個々のスロットのパフォーマンスとリソース使用状況を詳細に可視化できます。
+ ElastiCache Serverless for Valkey 8.0 では、サポートされる 1 秒あたりのリクエスト数 (RPS) を 2～3 分おきに 2 倍に拡張でき、キャッシュあたりの RPS は 13 分も経たないうちにゼロから 5 万 RPS に達します。p50 の読み取りレイテンシーも一貫してミリ秒未満を維持します。

Valkey の詳細については、「[Valkey](https://valkey.io/)」を参照してください。

Valkey 8 リリースの詳細については、「[Valkey 8 Release Notes](https://github.com/valkey-io/valkey/blob/8.0/00-RELEASENOTES)」を参照してください

### Valkey 用の ElastiCache バージョン 7.2.6
<a name="valkey-version-7.2.6"></a>

2024 年 10 月 10 日、Valkey 用の ElastiCacheバージョン 7.2.6 がリリースされました。7.2 で導入された新機能の一部を以下に示します (Redis OSS 用の ElastiCache バージョン 7.1 との比較)。
+ さまざまなデータ型のパフォーマンスとメモリの最適化: リストタイプキーとセットタイプキーのメモリ最適化、ソートされたセットに対するコマンドの速度最適化、クラスターモードでの複数のキーを持つコマンドのパフォーマンス最適化、pub/sub のパフォーマンス向上、SCAN、SSCAN、HSCAN、ZSCAN コマンドのパフォーマンス最適化、その他多くの小規模な最適化。
+ ZRANK コマンドと ZREVRANK コマンドの新しい WITHSCORE オプション
+ クライアントがキーの LRU/LFU に影響を与えることなくコマンドを実行するための CLIENT NO-TOUCH。
+ レプリケーションに基づいてクラスターモードでノードを論理的にグループ化するためにノードのシャード ID を返す、新しいコマンド CLUSTER MYSHARDID。

Valkey の詳細については、「[Valkey](https://valkey.io/)」を参照してください。

Valkey 用の ElastiCache バージョン 7.2 リリースの詳細については、「[Redis OSS 7.2.4 Release Notes](https://github.com/valkey-io/valkey/blob/d2c8a4b91e8c0e6aefd1f5bc0bf582cddbe046b7/00-RELEASENOTES)」を参照してください (Valkey 用の ElastiCache バージョン 7.2 には、Redis OSS 用の ElastiCache バージョン 7.1 から Redis OSS 用の ElastiCache バージョン 7.2.4 までのすべての変更が含まれています)。GitHub 上の Valkey の「[Valkey 7.2 release notes](https://github.com/valkey-io/valkey/blob/7.2/00-RELEASENOTES)」。

## Valkey 用の ElastiCache バージョン 8.2
<a name="valkey-version-8.2.main"></a>

Valkey 8.2 で導入された新機能の一部を以下に示します (ElastiCache Valkey 8.1 との比較)。
+ [ベクトル検索](vector-search.md)のネイティブサポート。数十億の高次元ベクトル埋め込みの保存、インデックス作成、検索、更新をマイクロ秒単位の低レイテンシーでメモリ内で行うことができます。

Valkey の詳細については、「[Valkey](https://valkey.io/)」を参照してください。

Valkey 8.2 リリース、ベクトル検索の導入の詳細については、「[Valkey Search](https://github.com/valkey-io/valkey-search)」を参照してください。

## Valkey 用の ElastiCache バージョン 8.1
<a name="valkey-version-8.1.main"></a>

Valkey 8.1 で導入された新機能の一部を以下に示します (ElastiCache Valkey 8.0 との比較)。
+ [新しいハッシュテーブル](https://valkey.io/blog/new-hash-table/)の実装により、メモリオーバーヘッドが減少し、一般的なキー/値のパターンのメモリ使用量が最大 20% 低下します。
+ 新しいデータ型である [Bloom フィルター](https://valkey.io/topics/bloomfilters/)のネイティブサポートにより、Set データ型を使用する場合と比較して最大 98% 少ないメモリを使用してルックアップを実行できます。
+ 新しいコマンド [COMMANDLOG](https://valkey.io/commands/commandlog-get/) により、遅い実行、大きなリクエスト、大きな返信を記録できます。
+ IFEQ 引数を使用した SET コマンドの新しい条件付き更新サポート。
+ ZRANK コマンドのレイテンシーが最大 45% 低下、PFMERGE と PFCOUNT のパフォーマンスが最大 12 倍向上、BITCOUNT のスループットが最大 514% 向上するなど、パフォーマンスが向上しました。

Valkey の詳細については、「[Valkey](https://valkey.io/)」を参照してください。

Valkey 8.1 リリースの詳細については、「[Valkey 8.1 Release Notes](https://github.com/valkey-io/valkey/blob/8.1/00-RELEASENOTES)」を参照してください

## Valkey 用の ElastiCache バージョン 8.0
<a name="valkey-version-8.main"></a>

Valkey 8.0 で導入された新機能の一部を以下に示します (ElastiCache Valkey 7.2.6 との比較)。
+ メモリ効率が向上し、ユーザーはアプリケーションを変更せずに 1 ノードあたり最大 20% 多くのデータを保存できます。
+ ノードベースのクラスター用に新しく導入されたスロットごとのメトリクスインフラストラクチャにより、個々のスロットのパフォーマンスとリソース使用状況を詳細に可視化できます。
+ ElastiCache Serverless for Valkey 8.0 では、サポートされる 1 秒あたりのリクエスト数 (RPS) を 2～3 分おきに 2 倍に拡張でき、キャッシュあたりの RPS は 13 分も経たないうちにゼロから 5 万 RPS に達します。p50 の読み取りレイテンシーも一貫してミリ秒未満を維持します。

Valkey の詳細については、「[Valkey](https://valkey.io/)」を参照してください。

Valkey 8 リリースの詳細については、「[Valkey 8 Release Notes](https://github.com/valkey-io/valkey/blob/8.0/00-RELEASENOTES)」を参照してください

## Valkey 用の ElastiCache バージョン 7.2.6
<a name="valkey-version-7.2.6.main"></a>

2024 年 10 月 10 日、Valkey 用の ElastiCacheバージョン 7.2.6 がリリースされました。7.2 で導入された新機能の一部を以下に示します (Redis OSS 用の ElastiCache バージョン 7.1 との比較)。
+ さまざまなデータ型のパフォーマンスとメモリの最適化: リストタイプキーとセットタイプキーのメモリ最適化、ソートされたセットに対するコマンドの速度最適化、クラスターモードでの複数のキーを持つコマンドのパフォーマンス最適化、pub/sub のパフォーマンス向上、SCAN、SSCAN、HSCAN、ZSCAN コマンドのパフォーマンス最適化、その他多くの小規模な最適化。
+ ZRANK コマンドと ZREVRANK コマンドの新しい WITHSCORE オプション
+ クライアントがキーの LRU/LFU に影響を与えることなくコマンドを実行するための CLIENT NO-TOUCH。
+ レプリケーションに基づいてクラスターモードでノードを論理的にグループ化するためにノードのシャード ID を返す、新しいコマンド CLUSTER MYSHARDID。

Valkey の詳細については、「[Valkey](https://valkey.io/)」を参照してください。

Valkey 用の ElastiCache バージョン 7.2 リリースの詳細については、「[Redis OSS 7.2.4 Release Notes](https://github.com/valkey-io/valkey/blob/d2c8a4b91e8c0e6aefd1f5bc0bf582cddbe046b7/00-RELEASENOTES)」を参照してください (Valkey 用の ElastiCache バージョン 7.2 には、Redis OSS 用の ElastiCache バージョン 7.1 から Redis OSS 用の ElastiCache バージョン 7.2.4 までのすべての変更が含まれています)。GitHub 上の Valkey の「[Valkey 7.2 release notes](https://github.com/valkey-io/valkey/blob/7.2/00-RELEASENOTES)」。

## サポートされる Redis OSS エンジンのバージョン
<a name="supported-engine-versions.redis"></a>

ElastiCache サーバーレスキャッシュとノードベースのクラスターは、Redis OSS バージョン 7.1 以前のすべてのバージョンをサポートしています。
+ [Redis OSS 用の ElastiCache バージョン 7.1 (拡張)](#redis-version-7.1)

**Topics**
+ [Redis OSS 用の ElastiCache バージョン 7.1 (拡張)](#redis-version-7.1)
+ [Redis OSS 用の ElastiCache バージョン 7.0 (拡張)](#redis-version-7.0)
+ [Redis OSS 用の ElastiCache バージョン 6.2 (拡張)](#redis-version-6.2)
+ [Redis OSS 用の ElastiCache バージョン 6.0 (拡張)](#redis-version-6.0)
+ [Redis OSS 用の ElastiCache バージョン 5.0.6 (拡張)](#redis-version-5-0.6)
+ [Redis OSS 用の ElastiCache バージョン 5.0.5 (廃止、バージョン 5.0.6 を使用してください)](#redis-version-5-0.5)
+ [Redis OSS 用の ElastiCache バージョン 5.0.4 (廃止、バージョン 5.0.6 を使用してください)](#redis-version-5-0.4)
+ [Redis OSS 用の ElastiCache バージョン 5.0.3 (廃止、バージョン 5.0.6 を使用してください)](#redis-version-5-0.3)
+ [Redis OSS 用の ElastiCache バージョン 5.0.0 (廃止、バージョン 5.0.6 を使用してください)](#redis-version-5-0)
+ [Redis OSS 用の ElastiCache バージョン 4.0.10 (拡張)](#redis-version-4-0-10)
+ [過去のサポート終了 (EOL) バージョン (3.x)](#redis-version-3-2-10-scheduled-eol)
+ [過去のサポート終了 (EOL) バージョン (2.x)](#redis-version-2-x-eol)

### Redis OSS 用の ElastiCache バージョン 7.1 (拡張)
<a name="redis-version-7.1"></a>

このリリースには、ワークロードのスループットを向上させ、操作のレイテンシーを低減するためのパフォーマンスの改善が含まれています。Redis OSS 用の ElastiCache バージョン 7.1 では、[主に次の 2 つの機能強化](https://aws.amazon.com/blogs/database/achieve-over-500-million-requests-per-second-per-cluster-with-amazon-elasticache-for-redis-7-1/)が導入されています。

拡張された I/O スレッド機能を拡張して、プレゼンテーション層のロジックも処理できるようにしました。プレゼンテーション層とは、クライアント入力を読み取るだけでなく、入力を Redis OSS バイナリコマンド形式に解析する拡張 I/O スレッドを指します。その後、これがメインスレッドに転送されて実行され、パフォーマンスが向上します。Redis OSS のメモリアクセスパターンが改善されました。多くのデータ構造操作の実行ステップをインターリーブすることで、並列メモリアクセスとメモリアクセスのレイテンシーの短縮を実現しています。Graviton3 ベースの `R7g.4xlarge` 以上で ElastiCache を実行する場合、お客様はノードあたり毎秒 100 万件を超えるリクエストを処理できます。ElastiCache for Redis OSS v7.1 のパフォーマンスが向上したことで、ElastiCache for Redis OSS v7.0 と比較してスループットが最大 100% 向上し、P99 のレイテンシーを 50% 低減できます。これらの機能強化は、CPU タイプに関係なく、物理コアが 8 個以上 (Graviton では `2xlarge`、x86 では `4xlarge`) のノードサイズで有効になり、クライアントを変更する必要がありません。

**注記**  
ElastiCache v7.1 は OSS Redis OSS v7.0 と互換性があります。

### Redis OSS 用の ElastiCache バージョン 7.0 (拡張)
<a name="redis-version-7.0"></a>

ElastiCache for Redis OSS 7.0 では、多くの改善と新機能のサポートが追加されています。
+ [関数](https://valkey.io/topics/functions-intro/): ElastiCache for Redis OSS 7 では、Redis OSS 関数のサポートが追加され、管理されたエクスペリエンスが提供されるため、開発者は ElastiCache クラスターに保存されたアプリケーションロジックを使用して [LUA スクリプト](https://valkey.io/topics/eval-intro/)を実行でき、クライアントは毎回の接続でスクリプトをサーバーに再送信する必要がありません。
+ [ACL の改善](https://valkey.io/topics/acl/): Valkey および Redis OSS 7 で、次期バージョンの Redis アクセスコントロールリスト (ACL) のサポートが追加されました。クライアントは Valkey および Redis OSS の特定のキーまたはキースペースに対して複数の権限セットを指定できるようになりました。
+ [シャードされた Pub/Sub](https://valkey.io/topics/pubsub/): ElastiCache for Valkey 7 と ElastiCache for Redis OSS 7 では、クラスターモード有効 (CME) で ElastiCache を実行する際に、Pub/Sub 機能をシャードされた方法で実行するサポートが追加されました。Pub/Sub 機能により、パブリッシャーはチャネル上の任意の数のサブスクライバーにメッセージを発行できます。チャネルは ElastiCache クラスターのシャードにバインドされるため、シャード間でチャネル情報を伝達する必要がなくなり、スケーラビリティが向上します。
+ 拡張 I/O 多重化: ElastiCache for Valkey 7 と ElastiCache for Redis OSS 7 では、拡張された I/O 多重化が導入されています。これにより、ElastiCache クラスターへの多数の同時クライアント接続がある高スループットワークロードのスループットが向上し、レイテンシーが低減されます。例えば、r6g.xlarge ノードのクラスターを使用し、5200 の同時クライアントを実行する場合、Redis OSS 用の ElastiCache バージョン 6 と比較して、スループット (1 秒あたりの読み取りおよび書き込みオペレーション) が最大 72% 向上し、P99 レイテンシーが最大 71% 減少します。

Valkey の詳細については、「[Valkey](https://valkey.io/)」を参照してください。Redis OSS 7.0 のリリースの詳細については、GitHub の Redis OSS の「[Redis OSS 7.0 Release Notes](https://github.com/redis/redis/blob/7.0/00-RELEASENOTES)」を参照してください。

### Redis OSS 用の ElastiCache バージョン 6.2 (拡張)
<a name="redis-version-6.2"></a>

ElastiCache for Redis OSS 6.2 では、8 個以上の vCPU を持つ x86 ノードタイプ、または 4 個以上の vCPU を持つ Graviton2 ノードタイプを使用した TLS 対応クラスターのパフォーマンスが向上しています。これらの機能強化では、暗号化を他の vCPUs にオフロードすることでスループットが向上し、クライアントの接続確立時間が短縮されました。Redis OSS 6.2 では、アクセスコントロールリスト (ACL) ルールを使用して Pub/Sub チャネルへのアクセスを管理することもできます。

 このバージョンでは、ローカルに接続された NVMe SSD を含む、クラスターノードでのデータ階層化のサポートも導入されています。詳細については、「[ElastiCache のデータ階層化](data-tiering.md)」を参照してください。

Redis OSS エンジンバージョン 6.2.6 では、ネイティブ JavaScript Object Notation (JSON) 形式のサポートも導入されています。これは、Redis OSS クラスター内の複雑なデータセットをエンコードするシンプルでスキーマレスな方法です。JSON サポートにより、JSON 上で動作するアプリケーションのパフォーマンスと Redis OSS API を活用できます。詳細については、「[JSON の使用開始](json-gs.md)」を参照してください。また、JSON 関連のメトリクス `JsonBasedCmds` および `JsonBasedCmdsLatency` も含まれています。これらは、このデータ型の使用状況を監視するために CloudWatch に組み込まれています。詳細については、「[Valkey と Redis OSS のメトリクス](CacheMetrics.Redis.md)」を参照してください。

エンジンバージョンを指定するには、6.2 を使用します。ElastiCache は、利用可能な任意のパッチバージョンの Redis OSS 6.2 を自動的に呼び出します。例えば、クラスターを作成または変更する場合は、`--engine-version` パラメータを 6.2 に設定します。クラスターは、作成/変更時に利用可能な Redis OSS 6.2 の推奨パッチバージョンで起動されます。API でエンジンバージョン 6.x を指定すると、最新のマイナーバージョンの Redis OSS 6 になります。

既存の 6.0 クラスターの場合、`CreateCacheCluster`、`ModifyCacheCluster`、`CreateReplicationGroup`、または `ModifyReplicationGroup` APIで `AutoMinorVersionUpgrade` パラメータを `yes` に設定することで、次のマイナーバージョン自動アップグレードにオプトインできます。ElastiCache では、セルフサービスの更新を使用して、既存の 6.0 クラスターのマイナーバージョンを 6.2 にアップグレードします。詳細については、[Amazon ElastiCache でのセルフサービスの更新](Self-Service-Updates.md)をご覧ください。

DescribeCacheEngineVersions API の呼び出し時に、`EngineVersion` パラメータ値が 6.2 に設定され、パッチバージョンを含む実際のエンジンバージョンが `CacheEngineVersionDescription` フィールドに返されます。 

Redis OSS 6.2 のリリースの詳細については、GitHub の Redis OSS の「[Redis OSS 6.2 Release Notes](https://github.com/redis/redis/blob/6.2/00-RELEASENOTES)」を参照してください。

### Redis OSS 用の ElastiCache バージョン 6.0 (拡張)
<a name="redis-version-6.0"></a>

Amazon ElastiCache では、Redis OSS エンジン向け ElastiCache の次のバージョンが導入されています。これには、[ロールベースのアクセスコントロールによるユーザーの認証](Clusters.RBAC.md)、クライアント側のキャッシュ、および大幅な運用上の改善が含まれます。

 Redis OSS 6.0 以降、ElastiCache では、複数のパッチバージョンを提供するのではなく、Redis OSS マイナーリリースごとに 1 つのバージョンが提供されます。ElastiCache は、実行中のクラスターのパッチバージョンを自動的に管理し、パフォーマンスの向上とセキュリティ強化を実現します。

また、`AutoMinorVersionUpgrade` パラメータを `yes` に設定して、次のマイナーバージョン自動アップグレードにオプトインすることもできます。ElastiCache は、セルフサービスの更新を通じてマイナーバージョンのアップグレードを管理します。詳細については、「[ElastiCache のサービスの更新](Self-Service-Updates.md)」を参照してください。

エンジンのバージョンを指定するには、`6.0` を使用します。ElastiCache は、利用可能な任意のパッチバージョンの Redis OSS 6.0 を自動的に呼び出します。例えば、クラスターを作成または変更する場合は、`--engine-version` パラメータを 6.0 に設定します。クラスターは、作成/変更時に利用可能な Redis OSS 6.0 の推奨パッチバージョンで起動されます。特定のパッチバージョン値を持つリクエストは拒否され、例外がスローされ、プロセスは失敗します。

DescribeCacheEngineVersions API の呼び出し時に、`EngineVersion` パラメータ値が 6.0 に設定され、パッチバージョンを含む実際のエンジンバージョンが `CacheEngineVersionDescription` フィールドに返されます。 

Redis OSS 6.0 のリリースの詳細については、GitHub の Redis OSS の「[Redis OSS 6.0 Release Notes](https://github.com/redis/redis/blob/6.0/00-RELEASENOTES)」を参照してください。

### Redis OSS 用の ElastiCache バージョン 5.0.6 (拡張)
<a name="redis-version-5-0.6"></a>

Amazon ElastiCache では、Redis OSS エンジン用の ElastiCache の次のバージョンが導入されています。これにはバグ修正および以下の累積更新が含まれます。
+ 特別な状況におけるエンジンの安定性の保証。
+ Hyperloglog エラー処理の強化。
+ 信頼性の高いレプリケーションを目的としたハンドシェイクコマンドの強化。
+ `XCLAIM` コマンドを使用した一貫性のあるメッセージ配信の追跡。
+ オブジェクトの `LFU ` フィールド管理の強化。
+ `ZPOP` 使用時のトランザクション管理の強化。
+ コマンドの名前を変更する機能: `rename-commands` と呼ばれるパラメータを使用すると、`FLUSHALL` や `FLUSHDB` など、誤ってデータ損失を発生させることがある、危険または処理負荷が大きい可能性がある Redis OSS コマンドの名前を変更できます。これは、オープンソース Redis OSS の名前変更コマンドの設定と似ています。ただし、ElastiCache では、フルマネージド型のワークフローを提供することによりエクスペリエンスを向上させています。コマンド名の変更はすぐに適用され、クラスター内でコマンドリストを含むすべてのノードにわたって自動的に反映されます。ノードの再起動など、お客様による介入は必要ありません。

  次の例では、既存のパラメータグループを変更する方法を示しています。これには `rename-commands` パラメータが含まれます。これは、名前を変更するコマンドのスペースで区切られたリストです。

  ```
  aws elasticache modify-cache-parameter-group --cache-parameter-group-name custom_param_group
  --parameter-name-values "ParameterName=rename-commands,  ParameterValue='flushall restrictedflushall'" --region region
  ```

  この例では、*rename-commands* パラメータは、`flushall` コマンドの名前を `restrictedflushall` に変更するために使用します。

  複数のコマンドの名前を変更するには、以下を使用します。

  ```
  aws elasticache modify-cache-parameter-group --cache-parameter-group-name custom_param_group
  --parameter-name-values "ParameterName=rename-commands,  ParameterValue='flushall restrictedflushall flushdb restrictedflushdb''" --region region
  ```

  変更を元に戻すには、次に示すようにコマンドを再実行し、`ParameterValue` リストから、名前の変更を維持する値を除外します。

  ```
  aws elasticache modify-cache-parameter-group --cache-parameter-group-name custom_param_group
  --parameter-name-values "ParameterName=rename-commands,  ParameterValue='flushall restrictedflushall'" --region region
  ```

  この場合、`flushall` コマンドは `restrictedflushall` に名前が変更され、名前が変更されたその他のコマンドは元のコマンド名に戻されます。
**注記**  
名前を変更する場合は、以下の制限があります。  
名前を変更するすべてのコマンドは、英数字である必要があります。
新しいコマンド名の最大長は 20 文字の英数字です。
コマンドの名前を変更する場合は、クラスターに関連付けられているパラメータグループを必ず更新します。
コマンドの使用を完全に防ぐには、以下に示すように、キーワード `blocked` を使用します。  

    ```
    aws elasticache modify-cache-parameter-group --cache-parameter-group-name custom_param_group
    --parameter-name-values "ParameterName=rename-commands,  ParameterValue='flushall blocked'" --region region
    ```

  パラメータの変更の詳細、および名前変更の対象であるコマンドのリストについては、「[Redis OSS 5.0.3 パラメータの変更](ParameterGroups.Engine.md#ParameterGroups.Redis.5-0-3)」を参照してください。
+ Redis OSS ストリーム: これによりモデル化されたログデータ構造では、プロデューサーが新しいアイテムをリアルタイムで追加できます。また、コンシューマーがブロッキング方式またはノンブロッキング方式でメッセージを使用できます。ストリームは、コンシューマーグループも許可します。コンシューマーグループは、メッセージの同じストリームのさまざまな部分を共同で使用するクライアントのグループを表しています ([Apache Kafka](https://kafka.apache.org/documentation/) と同様)。詳細については、「[Streams](https://valkey.io/topics/streams-intro)」を参照してください。
+ `XADD`、`XRANGE`、`XREAD` など、ストリームコマンドファミリーのサポート。詳細については、「[Streams Commands](https://valkey.io/commands/#stream)」を参照してください。
+ 多数の新しいパラメータと名前変更されたパラメータ。詳細については、「[Redis OSS 5.0.0 パラメータの変更](ParameterGroups.Engine.md#ParameterGroups.Redis.5.0)」を参照してください。
+ 新しい Redis OSS メトリクス `StreamBasedCmds`。
+ Redis OSS ノードのスナップショット時間がわずかに短縮。

**重要**  
ElastiCache は、[Redis OSS オープンソースバージョン 5.0.1](https://github.com/redis/redis/blob/5.0/00-RELEASENOTES) から 2 つの重要なバグ修正をバックポートしました。以下に示します。  
特定のキーの有効期限がすでに切れている場合、RESTORE が返信に一致しません。
`XCLAIM` コマンドは、間違ったエントリを返したり、プロトコルを同期解除したりすることがあります。
これらのバグ修正はどちらも Redis OSS エンジンバージョン 5.0.0 の ElastiCache for Redis OSS サポートに含まれており、将来のバージョン更新で使用されます。

詳細については、GitHub の Redis OSS の「[Redis OSS 5.0.6 Release Notes](https://github.com/redis/redis/blob/5.0/00-RELEASENOTES)」を参照してください。

### Redis OSS 用の ElastiCache バージョン 5.0.5 (廃止、バージョン 5.0.6 を使用してください)
<a name="redis-version-5-0.5"></a>

Amazon ElastiCache では、Redis OSS エンジン用の ElastiCache の次のバージョンが導入されています。これには、計画されたすべてのオペレーション中の自動フェイルオーバークラスターの ElastiCache のオンライン構成変更が含まれます。クラスターがオンライン状態のままで着信リクエストの処理を継続する間、クラスターをスケールし、Redis OSS エンジンのバージョンをアップグレードして、パッチとメンテナンス更新を適用できるようになりました。また、バグ修正も含まれます。

詳細については、GitHub の Redis OSS の「[Redis OSS 5.0.5 Release Notes](https://github.com/redis/redis/blob/5.0/00-RELEASENOTES)」を参照してください。

### Redis OSS 用の ElastiCache バージョン 5.0.4 (廃止、バージョン 5.0.6 を使用してください)
<a name="redis-version-5-0.4"></a>

Amazon ElastiCache では、ElastiCache でサポートされている Redis OSS エンジンの次のバージョンが導入されています。これには以下の機能強化が含まれています。
+ 特別な状況におけるエンジンの安定性の保証。
+ Hyperloglog エラー処理の強化。
+ 信頼性の高いレプリケーションを目的としたハンドシェイクコマンドの強化。
+ `XCLAIM` コマンドを使用した一貫性のあるメッセージ配信の追跡。
+ オブジェクトの `LFU ` フィールド管理の強化。
+ `ZPOP` 使用時のトランザクション管理の強化。

詳細については、GitHub の Redis OSS の「[Redis OSS 5.0.4 Release Notes](https://github.com/redis/redis/blob/5.0/00-RELEASENOTES)」を参照してください。

### Redis OSS 用の ElastiCache バージョン 5.0.3 (廃止、バージョン 5.0.6 を使用してください)
<a name="redis-version-5-0.3"></a>

Amazon ElastiCache では、Redis OSS エンジン用の ElastiCache の次のバージョンが導入されています。これにはバグ修正が含まれます。

### Redis OSS 用の ElastiCache バージョン 5.0.0 (廃止、バージョン 5.0.6 を使用してください)
<a name="redis-version-5-0"></a>

Amazon ElastiCache では、Redis OSS エンジン用の ElastiCache の次のメジャーバージョンが導入されています。Redis OSS 用の ElastiCache バージョン 5.0.0 は次の強化機能をサポートします。
+ Redis OSS ストリーム: これによりモデル化されたログデータ構造では、プロデューサーが新しいアイテムをリアルタイムで追加できます。また、コンシューマーがブロッキング方式またはノンブロッキング方式でメッセージを使用できます。ストリームは、コンシューマーグループも許可します。コンシューマーグループは、メッセージの同じストリームのさまざまな部分を共同で使用するクライアントのグループを表しています ([Apache Kafka](https://kafka.apache.org/documentation/) と同様)。詳細については、「[Streams](https://valkey.io/topics/streams-intro)」を参照してください。
+ `XADD`、`XRANGE`、`XREAD` など、ストリームコマンドファミリーのサポート。詳細については、「[Streams Commands](https://valkey.io/commands/#stream)」を参照してください。
+ 多数の新しいパラメータと名前変更されたパラメータ。詳細については、「[Redis OSS 5.0.0 パラメータの変更](ParameterGroups.Engine.md#ParameterGroups.Redis.5.0)」を参照してください。
+ 新しい Redis OSS メトリクス `StreamBasedCmds`。
+ Redis OSS ノードのスナップショット時間がわずかに短縮。

### Redis OSS 用の ElastiCache バージョン 4.0.10 (拡張)
<a name="redis-version-4-0-10"></a>

Amazon ElastiCache では、Redis OSS エンジン用の ElastiCache の次のメジャーバージョンが導入されています。Redis OSS 用の ElastiCache バージョン 4.0.10 は次の強化機能をサポートします。
+ ElastiCache の単一バージョンでのオンラインクラスターのサイズ変更と暗号化。詳細については次を参照してください:
  + [Valkey または Redis OSS (クラスターモードが有効) クラスターのスケーリング](scaling-redis-cluster-mode-enabled.md)
  + [Valkey または Redis OSS (クラスターモードが有効) のオンラインリシャーディング](scaling-redis-cluster-mode-enabled.md#redis-cluster-resharding-online)
  + [Amazon ElastiCache のデータセキュリティ](encryption.md)
+ 多数の新しいパラメータ。詳細については、「[Redis OSS 4.0.10 パラメータの変更](ParameterGroups.Engine.md#ParameterGroups.Redis.4-0-10)」を参照してください。
+ `MEMORY` などのメモリコマンドファミリーのサポート。詳細については、「[Commands](https://valkey.io/commands)」を参照してください (MEMO で検索)。
+ オンライン中のメモリのデフラグメンテーションのサポート。これにより、メモリの使用が効率的になり、データに使用できるメモリが増えます。
+ 非同期フラッシュと削除のSupport。ElastiCache for Redis OSS は、`UNLINK`、`FLUSHDB` および `FLUSHALL` などのコマンドをメインスレッドとは異なるスレッドで実行することをサポートします。これにより、メモリが非同期的に解放されて、アプリケーションのパフォーマンスが上がり、レスポンス時間が短くなります。
+ 新しい Redis OSS メトリクス `ActiveDefragHits`。詳細については、「[Redis OSS のメトリクス](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CacheMetrics.Redis.html)」を参照してください。

Redis OSS 用の ElastiCache バージョン 3.2.10 を実行している Redis OSS (クラスターモードが無効) ユーザーは、コンソールを使用して、オンラインアップグレードを介してクラスターをアップグレードできます。


**ElastiCache クラスターのサイズ変更と暗号化サポートの比較**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/dg/engine-versions.html)

### 過去のサポート終了 (EOL) バージョン (3.x)
<a name="redis-version-3-2-10-scheduled-eol"></a>

#### Redis OSS 用の ElastiCache バージョン 3.2.10 (拡張)
<a name="redis-version-3-2-10"></a>

Amazon ElastiCache では、Redis OSS エンジン用の ElastiCache の次のメジャーバージョンが導入されています。Redis OSS 用の ElastiCache バージョン 3.2.10 (拡張) でオンラインのクラスターサイズ変更が導入されました。これにより、クラスターが受信 I/O リクエストを処理する間に、クラスターからシャードを追加または削除することができます。ElastiCache for Redis OSS 3.2.10 のユーザーは、データの暗号化機能を除き、Redis OSS の以前のバージョンのすべての機能を利用できます。この機能は現在、バージョン 3.2.6 でのみ使用できます。


**Redis OSS 用の ElastiCache バージョン 3.2.6 と 3.2.10 の比較**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/dg/engine-versions.html)

詳細については次を参照してください:
+ [Valkey または Redis OSS (クラスターモードが有効) のオンラインリシャーディング](scaling-redis-cluster-mode-enabled.md#redis-cluster-resharding-online)
+ [オンラインクラスターのサイズ変更](best-practices-online-resharding.md)

#### Redis OSS 用の ElastiCache バージョン 3.2.6 (拡張)
<a name="redis-version-3-2-6"></a>

Amazon ElastiCache では、Redis OSS エンジン用の ElastiCache の次のメジャーバージョンが導入されています。Redis OSS 用の ElastiCache バージョン 3.2.6 のユーザーは、Redis OSS の以前のバージョンのすべての機能に加え、データの暗号化オプションを利用できます。詳細については次を参照してください:
+ [ElastiCache の転送時の暗号化 (TLS)](in-transit-encryption.md)
+ [ElastiCache での保管時の暗号化](at-rest-encryption.md)
+ [Amazon ElastiCache のコンプライアンス検証](elasticache-compliance.md)

#### Redis OSS 用の ElastiCache バージョン 3.2.4 (拡張)
<a name="redis-version-3-2-4"></a>

Amazon ElastiCache バージョン 3.2.4 では、Redis OSS エンジン用の ElastiCache の次のメジャーバージョンが導入されています。ElastiCache 3.2.4 のユーザーは、以前のバージョンの Redis OSS で使用できるすべての機能に加え、*クラスターモード*または*非クラスターモード*で実行するオプションも利用できます。次の表に以下の内容がまとめてあります。


**Redis OSS 3.2.4 非クラスターモードとクラスターモードの比較**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/dg/engine-versions.html)

**注記:**
+ [**パーティション**] – データを 2～500 のノードグループ間で分割 (シャード) (各ノードグループでレプリケーションのサポートあり)。
+ **[地理空間インデックス作成]** – Redis OSS 3.2.4 で、6 つの GEO コマンドによる地理空間インデックス作成のサポートが追加されました。詳細については、Valkey の「Commands」ページで Redis OSS GEO\$1 コマンドのドキュメント「[Commands: GEO](http://valkey.io/commands#geo)」(GEO でフィルタリング) を参照してください。

Redis OSS 3 の追加の機能については、「[Redis OSS 3.2 release notes](https://github.com/redis/redis/blob/3.2/00-RELEASENOTES)」、「[Redis OSS 3.0 release notes](https://github.com/redis/redis/blob/3.0/00-RELEASENOTES)」を参照してください。

現在、ElastiCache マネージド Valkey または Redis OSS (クラスターモードが有効) では、Redis OSS 3.2 の以下の機能はサポートされていません。
+ レプリカの移行
+ クラスターの再分散
+ Lua デバッガー

ElastiCache では、Redis OSS 3.2 の以下の管理コマンドは無効になっています。
+ `cluster meet`
+ `cluster replicate`
+ `cluster flushslots`
+ `cluster addslots`
+ `cluster delslots`
+ `cluster setslot`
+ `cluster saveconfig`
+ `cluster forget`
+ `cluster failover`
+ `cluster bumpepoch`
+ `cluster set-config-epoch`
+ `cluster reset`

Redis OSS 3.2.4 のパラメータの詳細については、「[Redis OSS 3.2.4 パラメータの変更](ParameterGroups.Engine.md#ParameterGroups.Redis.3-2-4)」を参照してください。

### 過去のサポート終了 (EOL) バージョン (2.x)
<a name="redis-version-2-x-eol"></a>

#### Redis OSS 用の ElastiCache バージョン 2.8.24 (拡張)
<a name="redis-version-2-8-24"></a>

Redis OSS バージョン 2.8.23 以降に追加された改善点には、バグ修正と不正なメモリアクセスアドレスのログ記録が含まれています。詳細については、「[Redis OSS 2.8 release notes](https://github.com/redis/redis/blob/2.8/00-RELEASENOTES)」を参照してください。

#### Redis OSS 用の ElastiCache バージョン 2.8.23 (拡張)
<a name="redis-version-2-8-23"></a>

Redis OSS バージョン 2.8.22 以降に追加された改善点には、バグ修正が含まれます。詳細については、「[Redis OSS 2.8 release notes](https://github.com/redis/redis/blob/2.8/00-RELEASENOTES)」を参照してください。また、このリリースでは、新しいパラメータ `close-on-slave-write` もサポートされており、有効にした場合、読み取り専用レプリカに書き込もうとするクライアントの接続は切断されます。

Redis OSS 2.8.23 のパラメータの詳細については、「ElastiCache ユーザーガイド」の「[Redis OSS 2.8.23 (拡張) で追加されたパラメータ](ParameterGroups.Engine.md#ParameterGroups.Redis.2-8-23)」を参照してください。

#### Redis OSS 用の ElastiCache バージョン 2.8.22 (拡張)
<a name="redis-version-2-8-22"></a>

Redis OSS バージョン 2.8.21 以降に追加された改善点には、以下が含まれます。
+ 分岐なしのバックアップと同期のサポートにより、バックアップオーバーヘッドによるメモリの割り当てを減らしてより多くのメモリをアプリケーションに割り当てることができます。詳細については、「[同期とバックアップの実装方法](Replication.Redis.Versions.md)」を参照してください。分岐なしのプロセスは、レイテンシーとスループットの両方に影響を与える場合があります。書き込みスループットが高い場合、レプリカが再同期されると、同期中はレプリカにアクセスできなくなることがあります。
+ フェイルオーバーが発生した場合、可能であれば、レプリカがフル同期ではなくプライマリとの部分同期を実行するため、レプリケーショングループはより迅速に復旧されます。さらに、プライマリとレプリカは同期中にディスクを使用しないため、速度が向上します。
+  が新しい CloudWatch メトリクスをサポート 
  + `ReplicationBytes` – レプリケーショングループのプライマリクラスターがリードレプリカに送信しているバイト数。
  + `SaveInProgress` – バックグラウンド保存プロセスが実行されるかどうかを示すバイナリ値。

   詳細については、「[CloudWatch メトリクスの使用状況のモニタリング](CacheMetrics.md)」を参照してください。
+ レプリケーション PSYNC 動作のいくつかの重要なバク修正。詳細については、「[Redis OSS 2.8 release notes](https://github.com/redis/redis/blob/2.8/00-RELEASENOTES)」を参照してください。
+ マルチ AZ レプリケーショングループのレプリケーションパフォーマンスの拡張とクラスターの安定性を維持するために、非 ElastiCache レプリカのサポートが終了しました。
+ レプリケーショングループのプライマリクラスターとレプリカ間でデータの整合性を改善するために、プライマリクラスターと無関係にレプリカでキーを削除できなくなりました。
+ Redis OSS 設定変数 `appendonly` および `appendfsync` は、Redis OSS バージョン 2.8.22 以降ではサポートされません。
+ メモリが少ない状況で、大きな出力アップロードバッファを持つクライアントはレプリカクラスターからの接続が解除されることがあります。接続が解除された場合、クライアントは再接続する必要があります。このような状況は、多くの場合 PUBSUB クライアントで発生する可能性があります。

#### Redis OSS 用の ElastiCache バージョン 2.8.21
<a name="redis-version-2-8-21"></a>

Redis OSS バージョン 2.8.19 以降に追加された改善点には、多くのバグ修正が含まれています。詳細については、「[Redis OSS 2.8 release notes](https://github.com/redis/redis/blob/2.8/00-RELEASENOTES)」を参照してください。

#### Redis OSS 用の ElastiCache バージョン 2.8.19
<a name="redis-version-2-8-19"></a>

Redis OSS バージョン 2.8.6 以降に追加された改善点には、以下が含まれます。
+ HyperLogLog のサポート。詳細については、「[Redis OSS new data structure: HyperLogLog](http://antirez.com/news/75)」を参照してください。
+ ソートされたセットデータ型は、新しいコマンド `ZRANGEBYLEX`、`ZLEXCOUNT`、および `ZREMRANGEBYLEX` で、辞書式範囲のクエリをサポートできるようになりました。
+ プライマリノードがレプリカノードに古いデータを送信しないようにするため、バックグラウンド保存（`bgsave`）の子プロセスが中止された場合、マスター SYNC は失敗します。
+ *HyperLogLogBasedCommands* CloudWatch メトリクスがサポートされました。詳細については、「[Valkey と Redis OSS のメトリクス](CacheMetrics.Redis.md)」を参照してください。

#### Redis OSS 用の ElastiCache バージョン 2.8.6
<a name="redis-version-2-8-6"></a>

Redis OSS バージョン 2.6.13 以降に追加された改善点には、以下が含まれます。
+ リードレプリカの弾力性と耐障害性の向上。
+ 部分的な再同期のサポート。
+ 常に使用できる必要があるリードレプリカの最小数に関するユーザー定義のサポート。
+ pub/sub のフルサポートサーバー上のイベントをクライアントに通知。
+ プライマリノードの障害の自動検出と、プライマリノードからセカンダリノードへのフェイルオーバー。

#### Redis OSS 用の ElastiCache バージョン 2.6.13
<a name="redis-version-2-6-13"></a>

Redis OSS 用の ElastiCache バージョン 2.6.13 は、Redis OSS をサポートした ElastiCache の最初のバージョンでした。Redis OSS 用の ElastiCache バージョン 2.6.13 では、マルチ AZ はサポートされません。

## Redis OSS 用の ElastiCache バージョンのサポート終了スケジュール
<a name="deprecated-engine-versions"></a>

このセクションでは、発表された以前のメジャーバージョンのサポート終了 (EOL、End Of Life) 日を定義します。これにより、将来のバージョンとアップグレードに関する判断を行うことができます。

**注記**  
Redis OSS 用の ElastiCache バージョン 5.0.0～5.0.5 は廃止されました。5.0.6 以降のバージョンを使用してください。

次の表は、ElastiCache for Redis OSS エンジンの[延長サポート](extended-support.md)のスケジュールを示しています。

**延長サポートとサポート終了 (EOL) のスケジュール**


| メジャーエンジンバージョン | 標準サポート終了日 | 延長サポート Y1 プレミアムの開始日 | 延長サポート Y2 プレミアムの開始日 | 延長サポート Y3 プレミアムの開始日 | 延長サポートの終了日とバージョンの EOL | 
| --- | --- | --- | --- | --- | --- | 
| Redis OSS v4 | 1/31/2026 | 2/1/2026 | 2/1/2027 | 2/1/2028 | 1/31/2029 | 
| Redis OSS v5 | 1/31/2026 | 2/1/2026 | 2/1/2027 | 2/1/2028 | 1/31/2029 | 
| Redis OSS v6 | 1/31/2027 | 2/1/2027 | 2/1/2028 | 2/1/2029 | 1/31/2030 | 

次の表は、各バージョンと、その発表された EOL 日、および推奨されるアップグレードターゲットバージョンをまとめたものです。

**過去の EOL**


| ソースメジャーバージョン | ソースマイナーバージョン | 推奨アップグレードターゲット | EOL 日 | 
| --- | --- | --- | --- | 
|  バージョン 3 |  3.2.4、3.2.6、3.2.10  |  バージョン 6.2 以上  US-ISO-EAST-1、US-ISO-WEST-1、および US-ISOB-EAST-1 リージョンでは、5.0.6 以上をお勧めします。   |  2023 年 7 月 31 日  | 
|  バージョン 2  |  2.8.24、2.8.23、2.8.22、2.8.21、2.8.19、2.8.12、2.8.6、2.6.13  |  バージョン 6.2 以上  US-ISO-EAST-1、US-ISO-WEST-1、および US-ISOB-EAST-1 リージョンでは、5.0.6 以上をお勧めします。   |  2023 年 1 月 13 日  | 

## サポートされている ElastiCache for Memcached バージョン
<a name="supported-engine-versions-mc"></a>

ElastiCache は、以下の Memcached のバージョンと、新しいバージョンへのアップグレードをサポートします。新しいバージョンにアップグレードする場合、満たされない場合にアップグレードが失敗する条件について、細心の注意を払ってください。

**Topics**
+ [Memcached 用の ElastiCache バージョン 1.6.22](#memcached-version-1-6-22)
+ [Memcached 用の ElastiCache バージョン 1.6.17](#memcached-version-1-6-17)
+ [Memcached 用の ElastiCache バージョン 1.6.12](#memcached-version-1-6-12)
+ [Memcached 用の ElastiCache バージョン 1.6.6](#memcached-version-1-6-6)
+ [Memcached 用の ElastiCache バージョン 1.5.16](#memcached-version-1-5-16)
+ [Memcached 用の ElastiCache バージョン 1.5.10](#memcached-version-1-5-10)
+ [Memcached 用の ElastiCache バージョン 1.4.34](#memcached-version-1-4-34)
+ [Memcached 用の ElastiCache バージョン 1.4.33](#memcached-version-1-4-33)
+ [Memcached 用の ElastiCache バージョン 1.4.24](#memcached-version-1-4-24)
+ [Memcached 用の ElastiCache バージョン 1.4.14](#memcached-version-1-4-14)
+ [Memcached 用の ElastiCache バージョン 1.4.5](#memcached-version-1-4-5)

### Memcached 用の ElastiCache バージョン 1.6.22
<a name="memcached-version-1-6-22"></a>

Memcached 用の ElastiCache for Memcached バージョン 1.6.22 では、Memcached バージョン 1.6.22 のサポートが追加されました。新機能は含まれていませんが、バグ修正と [Memcached 1.6.18](https://github.com/memcached/memcached/wiki/ReleaseNotes1618) からの累積更新が含まれています。

詳細については、GitHub の Memcached で、「[ReleaseNotes1622](https://github.com/memcached/memcached/wiki/ReleaseNotes1622)」を参照してください。

### Memcached 用の ElastiCache バージョン 1.6.17
<a name="memcached-version-1-6-17"></a>

Memcached 用の ElastiCache for Memcached バージョン 1.6.17 では、Memcached エンジンバージョン 1.6.17 のサポートが追加されました。新機能は含まれていませんが、バグ修正と [Memcached 1.6.17](https://github.com/memcached/memcached/wiki/ReleaseNotes1617) からの累積更新が含まれています。

詳細については、GitHub の Memcached で、「[ReleaseNotes1617](https://github.com/memcached/memcached/wiki/ReleaseNotes1617)」を参照してください。

### Memcached 用の ElastiCache バージョン 1.6.12
<a name="memcached-version-1-6-12"></a>

Memcached 用の ElastiCache for Memcached バージョン 1.6.12 では、Memcached エンジン 1.6.12 と転送中の暗号化のサポートが追加されました。また、バグ修正と [Memcached 1.6.6](https://github.com/memcached/memcached/wiki/ReleaseNotes166) からの累積更新が含まれています。

詳細については、GitHub の Memcached で、「[ReleaseNotes1612](https://github.com/memcached/memcached/wiki/ReleaseNotes1612)」を参照してください。

### Memcached 用の ElastiCache バージョン 1.6.6
<a name="memcached-version-1-6-6"></a>

Memcached 用の ElastiCache for Memcached バージョン 1.6.6 では、Memcached バージョン 1.6.6 のサポートが追加されました。新機能は含まれていませんが、バグ修正と [Memcached 1.5.16](https://github.com/memcached/memcached/wiki/ReleaseNotes1.5.16) からの累積更新が含まれています。ElastiCache for Memcached には、[Extstore](https://memcached.org/extstore) のサポートは含まれていません。

詳細については、GitHub の Memcached で、「[ReleaseNotes166](https://github.com/memcached/memcached/wiki/ReleaseNotes166)」を参照してください。

### Memcached 用の ElastiCache バージョン 1.5.16
<a name="memcached-version-1-5-16"></a>

Memcached 用の ElastiCache バージョン 1.5.16 では、Memcached バージョン 1.5.16 のサポートが追加されました。新機能は含まれていませんが、バグ修正と [Memcached 1.5.14](https://github.com/memcached/memcached/wiki/ReleaseNotes1514) および [Memcached 1.5.15](https://github.com/memcached/memcached/wiki/ReleaseNotes1515) からの累積更新が含まれています。

詳細については、GitHub の Memcached で、「[Memcached 1.5.16 リリースノート](https://github.com/memcached/memcached/wiki/ReleaseNotes1516)」を参照してください。

### Memcached 用の ElastiCache バージョン 1.5.10
<a name="memcached-version-1-5-10"></a>

Memcached 用の ElastiCache バージョン 1.5.10 では、以下の Memcached 機能がサポートされています。
+ 自動スラブ再分散。
+ `murmur3` アルゴリズムによる高速なハッシュテーブル参照。
+ セグメント化された LRU アルゴリズム。
+ メモリをバックグラウンドで回復するための LRU クローラ。
+ `--enable-seccomp`: コンパイル時オプション。

`no_modern` および `inline_ascii_resp` パラメータも導入されています。詳細については、「[Memcached 1.5.10 パラメータの変更](ParameterGroups.Engine.md#ParameterGroups.Memcached.1-5-10)」を参照してください。

Memcached 用の ElastiCache バージョン 1.4.34 以降に追加された Memcached の機能拡張には、以下が含まれます。
+ ASCII マルチ取得、CVE-2017-9951、`metadumper` の制限クロールなどの累積的修正。
+ 接続制限時に接続を閉じることにより接続管理を改善。
+ 1 MB を超えるアイテムサイズのアイテムサイズ管理を強化。
+ アイテムあたりのメモリ要件を数バイト下げることにより、パフォーマンスとメモリオーバーヘッドを改善。

詳細については、GitHub の Memcached で、「[Memcached 1.5.10 リリースノート](https://github.com/memcached/memcached/wiki/ReleaseNotes1510)」を参照してください。

### Memcached 用の ElastiCache バージョン 1.4.34
<a name="memcached-version-1-4-34"></a>

Memcached 用の ElastiCache バージョン 1.4.34 では、バージョン 1.4.33 からの新機能の追加はありません。バージョン 1.4.34 は、通常のリリースよりも大きなバグ修正リリースです。

詳細については、GitHub の Memcached で、「[Memcached 1.4.34 リリースノート](https://github.com/memcached/memcached/wiki/ReleaseNotes1434)」を参照してください。

### Memcached 用の ElastiCache バージョン 1.4.33
<a name="memcached-version-1-4-33"></a>

バージョン 1.4.24 以降に追加された機能拡張には、以下が含まれます。
+ 特定のスラブクラス、スラブクラスのリスト、またはすべてのスラブクラスのメタデータをダンプできる機能 詳細については、「[Memcached 1.4.31 リリースノート](https://github.com/memcached/memcached/wiki/ReleaseNotes1431)」を参照してください。
+ デフォルト値が 1 MB を超える大きなアイテムに対応 詳細については、「[Memcached 1.4.29 リリースノート](https://github.com/memcached/memcached/wiki/ReleaseNotes1429)」を参照してください。
+ 閉じる前にクライアントがアイドル状態だった時間を指定できる機能

  クラスターを再起動せずに、Memcached で使用可能なメモリの量を動的に増やすことができる機能 詳細については、「[Memcached 1.4.27 リリースノート](https://github.com/memcached/memcached/wiki/ReleaseNotes1427)」を参照してください。
+ `fetchers`、`mutations`、`evictions` のログ記録がサポートされるようになりました。詳細については、「[Memcached 1.4.26 リリースノート](https://github.com/memcached/memcached/wiki/ReleaseNotes1426)」を参照してください。
+ 解放されたメモリは、再度グローバルのプールに戻し、新しいスラブクラスに割り当て直すことができます。詳細については、「[Memcached 1.4.25 リリースノート](https://github.com/memcached/memcached/wiki/ReleaseNotes1425)」を参照してください。
+ 複数のバグ修正。
+ いくつかの新しいコマンドとパラメータ。リストについては、「[Memcached 1.4.33 で追加されたパラメータ](ParameterGroups.Engine.md#ParameterGroups.Memcached.1-4-33)」を参照してください。

### Memcached 用の ElastiCache バージョン 1.4.24
<a name="memcached-version-1-4-24"></a>

バージョン 1.4.14 以降に追加された機能拡張には、以下が含まれます。
+ バックグラウンドプロセスを使用した LRU (least recently used) の管理
+ ハッシュアルゴリズムとして使用する *jenkins* または *murmur3* のオプションを追加しました。
+ いくつかの新しいコマンドとパラメータ。リストについては、「[Memcached 1.4.24 で追加されたパラメータ](ParameterGroups.Engine.md#ParameterGroups.Memcached.1-4-24)」を参照してください。
+ 複数のバグ修正。

### Memcached 用の ElastiCache バージョン 1.4.14
<a name="memcached-version-1-4-14"></a>

バージョン 1.4.5 以降に追加された機能拡張には、以下が含まれます。
+ スラブ再分散機能の強化。
+ パフォーマンスとスケーラビリティの強化。
+ *touch* コマンドの導入により、既存の項目の有効期限を取得せずに更新する機能。
+ 自動検出—クライアントプログラムが、クラスター内のすべてのキャッシュノードを自動的に識別し、それらのすべてのノードへの接続を開始して維持する機能。

### Memcached 用の ElastiCache バージョン 1.4.5
<a name="memcached-version-1-4-5"></a>

Memcached 用の ElastiCache バージョン 1.4.5 は、Amazon ElastiCache for Memcached でサポートされた最初のエンジンとバージョンです。

# Valkey でのメジャーエンジンバージョンの動作と互換性の違い
<a name="VersionManagementConsiderations-valkey"></a>

Valkey 7.2.6 は、以前のバージョンの Redis OSS 7.2.4 と互換性が似ています。サポートされている最新の Valkey バージョンについては、「[サポートされているエンジンとバージョン](VersionManagement.md#supported-engine-versions)」を参照してください。

Valkey 7.2 リリースの詳細については、GitHub の Valkey で 「[Redis OSS 7.2.4 リリースノート](https://github.com/valkey-io/valkey/blob/d2c8a4b91e8c0e6aefd1f5bc0bf582cddbe046b7/00-RELEASENOTES)」 (Valkey 7.2 には Redis OSS からバージョン 7.2.4 までのすべての変更が含まれています) と「[Valkey 7.2 リリースノート](https://github.com/valkey-io/valkey/blob/7.2/00-RELEASENOTES)」を参照してください。

Valkey 7.2 と Redis OSS 7.1 (または 7.0) の間で発生する可能性のある動作の変更は次のとおりです。
+ フリーズ時間のサンプリングは、コマンドの実行中とスクリプトで行われます。
+ キーが存在しなくなったときに解放されるブロックされたストリームコマンドには、別のエラーコード (-UNBLOCKED ではなく -NOGROUP または -WRONGTYPE) が伴います。
+ スクリプトのクライアント側の追跡では、EVAL/FCALL の呼び出し元によって宣言されるキーではなく、スクリプトによって読み取られるキーを追跡するようになりました。

# Redis OSS でのメジャーエンジンバージョンの動作と互換性の違い
<a name="VersionManagementConsiderations"></a>

**重要**  
次のページは、バージョン間の非互換性の違いをすべて示し、新しいバージョンにアップグレードする際に考慮すべき事項を説明するように構成されています。このリストには、アップグレード時に発生する可能性のある、バージョンの非互換性についての問題が含まれています。  
現在の Redis OSS バージョンから利用可能な最新の Redis OSS バージョンに直接アップグレードでき、順次アップグレードする必要はありません。例えば、Redis OSS バージョン 3.0 からバージョン 7.0 に直接アップグレードできます。

Redis OSS のバージョンは、メジャー、マイナー、およびパッチコンポーネントで構成されるセマンティックバージョンで識別されます。例えば、Redis OSS 4.0.10 では、メジャーバージョンは 4、マイナーバージョンは 0、パッチバージョンは 10 です。これらの値は、通常、次の規則に基づいて増分されます。
+ メジャーバージョンは API 非互換の変更用です
+ マイナーバージョンは、下位互換性のある方法で追加された新機能用です
+ パッチバージョンは、下位互換性のあるバグ修正と機能以外の変更用です

最新のパフォーマンスと安定性の向上のために、指定された **major.minor** バージョン内の最新のパッチバージョンを常に使用することをお勧めします。Redis OSS 用の ElastiCache バージョン 6.0 以降、ElastiCache では、複数のパッチバージョンを提供するのではなく、Redis OSS マイナーリリースごとに 1 つのバージョンが提供されます。ElastiCache は、実行中のクラスターのパッチバージョンを自動的に管理し、パフォーマンスの向上とセキュリティ強化を実現します。

また、ほとんどの主要な改善が古いバージョンにバックポートされないため、最新のメジャーバージョンに定期的にアップグレードすることをお勧めします。ElastiCache が新しいAWSリージョンに可用性を拡張すると、ElastiCache for Redis OSS は、その時点で新しいリージョンで最新の 2 つの **major.minor** バージョンをサポートしています。たとえば、新しいAWSリージョンが起動し、Redis OSS 用の最新の major.minor ElastiCache バージョンが **7.0** および **6.2** である場合、ElastiCache は新しいAWSリージョンで Redis OSS バージョン **7.0** および **6.2** をサポートします。ElastiCache for Redis OSS の新しい major.minor バージョンがリリースされるたびに、ElastiCache では新たにリリースされたバージョンに対するサポートが追加されます。ElastiCache のリージョンの選択について詳しくは、「[リージョンとアベイラビリティーゾーンの選択](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/RegionsAndAZs.html#SupportedRegions)」を参照してください。

複数のメジャーバージョンまたはマイナーバージョンにまたがるアップグレードを行う場合は、次のリストを考慮してください。このリストには、時間の経過と共に Redis OSS でリリースされる動作と下位互換性のない変更が含まれています。

## Redis OSS 7.0 の動作および下位互換性のない変更
<a name="VersionManagementConsiderations-redis70"></a>

変更の詳細なリストについては、「[Redis OSS 7.0 release notes](https://raw.githubusercontent.com/redis/redis/7.0/00-RELEASENOTES)」を参照してください。
+ `SCRIPT LOAD` と `SCRIPT FLUSH` はレプリカに伝播されなくなります。スクリプトに対してある程度の耐久性が必要な場合は、[Redis OSS 関数](https://valkey.io/topics/functions-intro/)の使用を検討することをお勧めします。
+ Pubsub チャネルは、新しい ACL ユーザーにはデフォルトでブロックされるようになりました。
+ `STRALGO` コマンドは `LCS` コマンドに置き換えられました。
+ `ACL GETUSER` の形式が変更され、すべてのフィールドに標準のアクセス文字列パターンが表示されるようになりました。`ACL GETUSER` を使用してオートメーションを行った場合は、どちらの形式でも処理できることを確認する必要があります。
+ `SELECT`、`WAIT`、`ROLE`、`LASTSAVE`、`READONLY`、`READWRITE`、`ASKING` の ACL カテゴリが変更されました。
+ `INFO` コマンドは、トップレベルのコンテナコマンドではなく、サブコマンドごとのコマンド統計を表示するようになりました。
+ `LPOP`、`RPOP`、`ZPOPMIN`、`ZPOPMAX` コマンドの戻り値が特定のエッジケースで変更されました。これらのコマンドを使用する場合は、リリースノートを確認して、影響を受けるかどうかを評価する必要があります。
+ `SORT` および `SORT_RO`コマンドで `GET` および `BY` 引数を使用するためには、キースペース全体へのアクセスが必要になりました。

## Redis OSS 6.2 の動作および下位互換性のない変更
<a name="VersionManagementConsiderations-redis62"></a>

変更の詳細なリストについては、「[Redis OSS 6.2 release notes](https://raw.githubusercontent.com/redis/redis/6.2/00-RELEASENOTES)」を参照してください。
+ `TIME`、`ECHO`、`ROLE`、および `LASTSAVE` コマンドの ACL フラグが変更されました。これにより、以前は許可されていたコマンドが拒否されたり、その逆のことが起こったりする可能性があります。
**注記**  
これらのコマンドはいずれも、データを変更したり、データにアクセスしたりすることはありません。
+ Redis OSS 6.0 からアップグレードする場合、lua スクリプトへのマップ応答から返されるキーと値のペアの順序が変更されます。スクリプトが `redis.setresp()` を使用するか、マップを返す (Redis OSS 6.0 の新機能) 場合は、アップグレード時にスクリプトが動作しなくなる可能性があることを考慮してください。

## Redis OSS 6.0 の動作および下位互換性のない変更
<a name="VersionManagementConsiderations-redis60"></a>

変更の詳細なリストについては、「[Redis OSS 6.0 release notes](https://raw.githubusercontent.com/redis/redis/6.0/00-RELEASENOTES)」を参照してください。
+ 許可されるデータベースの最大数は 120 万から 1 万に減少しました。デフォルト値は 16 です。パフォーマンスとメモリの懸念が見つかったため、これよりはるかに大きい値の使用はお勧めしません。
+ `AutoMinorVersionUpgrade` パラメータを yes に設定すると、ElastiCache ではセルフサービスの更新を通じてマイナーバージョンのアップグレードが管理されます。これは、セルフサービス更新キャンペーンを通じて、標準的な顧客通知チャネルを通じて処理されます。詳細については、「[ElastiCache でのセルフサービスの更新](Self-Service-Updates.md)」をご覧ください。

## Redis OSS 5.0 の動作および下位互換性のない変更
<a name="VersionManagementConsiderations-redis50"></a>

変更の詳細なリストについては、「[Redis OSS 5.0 release notes](https://raw.githubusercontent.com/redis/redis/5.0/00-RELEASENOTES)」を参照してください。
+ スクリプトは、レプリカでスクリプトを再実行するのではなく、効果によってレプリケートされます。これにより、一般にパフォーマンスは向上しますが、プライマリとレプリカの間でレプリケートされるデータ量が増える可能性があります。Redis OSS 用の ElastiCache バージョン 5.0 でのみ使用可能な以前の動作に戻すオプションがあります。
+ Redis OSS 4.0 からアップグレードする場合、LUA スクリプトの一部のコマンドは、以前のバージョンとは異なる順序で引数を返します。Redis OSS 4.0 では、Redis OSS は応答を確定的にするために一部の応答を辞書順に並べますが、スクリプトが操作の影響によって複製される場合、この並べ替えは適用されません。
+ Redis OSS 5.0.3 以降、ElastiCache for Redis OSS は、いくつかの IO 作業を 4 個以上の VCPU を持つインスタンスタイプのバックグラウンドコアにオフロードします。これにより、Redis OSS のパフォーマンス特性が変更され、一部のメトリクスの値が変更される可能性があります。詳細については、「[モニタリングすべきメトリクス](CacheMetrics.WhichShouldIMonitor.md)」を参照して、監視するメトリクスを変更する必要があるかどうかを理解してください。

## Redis OSS 4.0 の動作および下位互換性のない変更
<a name="VersionManagementConsiderations-redis40"></a>

変更の詳細なリストについては、「[Redis OSS 4.0 release notes](https://raw.githubusercontent.com/redis/redis/4.0/00-RELEASENOTES)」を参照してください。
+ スローログは、クライアント名とアドレスという追加の 2 つの引数をログに記録するようになりました。この変更は、3 つの値を含む各スローログエントリに明示的に依存しない限り、下位互換性があります。
+ `CLUSTER NODES` コマンドは、わずかに異なる形式を返すようになりましたが、これには下位互換性がありません。クライアントは、クラスタ内に存在するノードについて学習するためにこのコマンドを使用するのではなく、`CLUSTER SLOTS` を使用することをお勧めします。

## 過去の EOL
<a name="VersionManagementConsiderations-redis3x-scheduled"></a>

### Redis OSS 3.2 の動作および下位互換性のない変更
<a name="VersionManagementConsiderations-redis32"></a>

変更の詳細なリストについては、「[Redis OSS 3.2 release notes](https://raw.githubusercontent.com/redis/redis/3.2/00-RELEASENOTES)」を参照してください。
+ このバージョンでは、注意すべき互換性の変更はありません。

詳細については、「[Redis OSS 用の ElastiCache バージョンのサポート終了スケジュール](engine-versions.md#deprecated-engine-versions)」を参照してください。

### Redis OSS 2.8 の動作および下位互換性のない変更
<a name="VersionManagementConsiderations-redis28"></a>

変更の詳細なリストについては、「[Redis OSS 2.8 release notes](https://raw.githubusercontent.com/redis/redis/2.8/00-RELEASENOTES)」を参照してください。
+ Redis OSS 2.8.22 以降、Redis OSS AOF は、ElastiCache for Redis OSS ではサポートされなくなりました。データを永続的に保持する必要がある場合は、MemoryDB を使用することをお勧めします。
+ Redis OSS 2.8.22 以降、ElastiCache for Redis OSS では、ElastiCache 内でホストされているプライマリへのレプリカのアタッチがサポートされなくなりました。アップグレード中、外部レプリカは切断され、再接続できなくなります。外部レプリカの代わりに Redis OSS 6.0 で利用できるクライアント側のキャッシュを使用することをお勧めします。
+ `TTL` および `PTTL` コマンドは、キーが存在しない場合は -2 を返し、存在しても関連する有効期限がない場合は -1 を返すようになりました。Redis OSS 2.6 以前のバージョンでは、両方の条件で -1 を返していました。
+ `STORE` オプションが使用されていない場合、`ALPHA` 付きの `SORT` はローカル照合ロケールに従ってソートされるようになりました。

詳細については、「[Redis OSS 用の ElastiCache バージョンのサポート終了スケジュール](engine-versions.md#deprecated-engine-versions)」を参照してください。

# ノードベースのクラスターを使用する際のアップグレードに関する考慮事項
<a name="VersionManagement-upgrade-considerations"></a>

**注記**  
次の考慮事項は、ノードベースのクラスターをアップグレードする場合にのみ適用されます。ElastiCache サーバーレスには適用されません。

**Valkey と Redis OSS に関する考慮事項**

Valkey または Redis OSS のノードベースのクラスターをアップグレードする場合は、次の点を考慮してください。
+ エンジンのバージョニングは、パッチの適用方法をできる限り制御できるように設計されています。ただし、ElastiCache には、システムまたはキャッシュソフトウェアに重大なセキュリティ脆弱性が発生する可能性が低い場合に、お客様に代わってクラスターにパッチを適用するための権限あります。
+ Valkey 用の ElastiCache バージョン 7.2 以降および Redis OSS 用の ElastiCache バージョン 6.0 以降、ElastiCache では、複数のパッチバージョンを提供するのではなく、マイナーリリースごとに 1 つのバージョンが提供されます。
+ Redis OSS エンジンバージョン 5.0.6 以降では、最小限のダウンタイムでクラスターバージョンをアップグレードできます。このクラスターは、アップグレード中のすべての読み取りと、数秒かかるフェイルオーバー操作中を除き、ほとんどすべてのアップグレード中の書き込みに対応します。
+ 5.0.6 より前のバージョンで ElastiCache クラスターをアップグレードすることもできます。関連するプロセスは同じですが、DNS の伝播中にフェイルオーバー時間が長くなる可能性があります (30 秒～1 分)。
+ Redis OSS 7 以降、ElastiCache は、Valkey または Redis OSS (クラスターモードが無効) と Valkey または Redis OSS (クラスターモードが有効) の切り替えをサポートしています。
+ Amazon ElastiCache for Redis OSS エンジンのアップグレードプロセスは、既存のデータをベストエフォートで保持するように設計されており、Redis OSS レプリケーションが正常に実行される必要があります。
+ エンジンをアップグレードすると、ElastiCache は既存のクライアント接続を終了します。エンジンのアップグレード中のダウンタイムを最小限に抑えるため、エラー再試行とエクスポネンシャルバックオフによる [Redis OSS クライアントのベストプラクティス](BestPractices.Clients.redis.md)と、[メンテナンス中のダウンタイムを最小限に抑える](BestPractices.MinimizeDowntime.md)ためのベストプラクティスを実装することをお勧めします。
+ エンジンをアップグレードする際、Valkey または Redis OSS (クラスターモードが無効) から Valkey または Redis OSS (クラスターモードが有効) に直接アップグレードすることはできません。以下の手順では、Valkey または Redis OSS (クラスターモードが無効) から Valkey または Redis OSS (クラスターモードが有効) にアップグレードする方法を示しています。

**Valkey または Redis OSS (クラスターモードが無効) から Valkey または Redis OSS (クラスターモードが有効) エンジンバージョンにアップグレードするには**

  1. Valkey または Redis OSS (クラスターモードが無効) クラスターまたはレプリケーショングループのバックアップを作成します。詳細については、「[手動バックアップの取得](backups-manual.md)」を参照してください。

  1. バックアップを使用して、1 つのシャード (ノードグループ) を持つ Valkey または Redis OSS (クラスターモードが有効) クラスターを作成してシードします。新しいエンジンのバージョンを指定し、クラスターまたはレプリケーショングループの作成時にクラスターモードを有効にします。詳細については、「[チュートリアル: 外部で作成されたバックアップで新しいノードベースのクラスターをシードする](backups-seeding-redis.md)」を参照してください。

  1. 古い Valkey または Redis OSS (クラスターモードが無効) クラスターまたはレプリケーショングループを削除します。詳細については、[ElastiCache でのクラスターの削除](Clusters.Delete.md)または[レプリケーショングループの削除](Replication.DeletingRepGroup.md)を参照してください。

  1. 新しい Valkey または Redis OSS (クラスターモードが有効) クラスターまたはレプリケーショングループを、必要なシャード (ノードグループ) の数に合わせてスケールします。詳細については、[Valkey または Redis OSS (クラスターモードが有効) クラスターのスケーリング](scaling-redis-cluster-mode-enabled.md)を参照してください。
+ 例えば、5.0.6 から 6.0 にメジャーエンジンのバージョンをアップグレードする場合は、新しいエンジンバージョンと互換性のある新しいパラメータグループも選択する必要があります。
+ 単一の Redis OSS クラスターや、マルチ AZ が無効になっているクラスターの場合、「[Valkey または Redis OSS スナップショットを作成するのに十分なメモリがあることを確認する](BestPractices.BGSAVE.md)」で説明されているように、Redis OSS 用に十分なメモリを確保することをお勧めします。このような場合、プライマリはアップグレードプロセスの実行中、リクエストに対応できません。
+ マルチ AZ が有効になっている Redis OSS クラスターの場合、書き込みの受信トラフィックが少ない期間中にエンジンのアップグレードを予定することもお勧めします。Redis OSS 5.0.6 以降にアップグレードする場合は、アップグレードプロセス中も、プライマリクラスターは引き続きサービスリクエストを処理できます。

  複数のシャードを含むクラスターおよびレプリケーショングループは、次のように処理および修正されます。
  + すべてのシャードは並行して処理されます。シャードでは、いつでも 1 つのアップグレードオペレーションのみが実行されます。
  + 各シャードでは、プライマリが処理される前にすべてのレプリカが処理されます。シャードにレプリカが少ない場合、他のシャードのレプリカが処理を終了する前に、そのシャードのプライマリが処理されることがあります。
  + すべてのシャード間で、プライマリノードはシリーズで処理されます。一度にアップグレードできるプライマリノードは 1 つだけです。
+ 現在のクラスターまたはレプリケーショングループで暗号化が有効になっている場合、暗号化をサポートしていないエンジンバージョン (3.2.6 から 3.2.10 など) にアップグレードすることはできません。

**Memcached に関する考慮事項**

ノードベースの Memcached クラスターをアップグレードする際は、次の点を考慮してください。
+ エンジンのバージョニングは、パッチの適用方法をできる限り制御できるように設計されています。ただし、ElastiCache には、システムまたはキャッシュソフトウェアに重大なセキュリティ脆弱性が発生する可能性が低い場合に、お客様に代わってクラスターにパッチを適用するための権限あります。
+ Memcached エンジンでは永続性がサポートされていないため、そのエンジンバージョンのアップグレードは常に、クラスターのすべてのキャッシュデータを消去する破壊的なプロセスです。