Amazon ElastiCache のサービス更新とは?

Amazon ElastiCache クラスターでは頻繁にアップグレードが実施され、パッチやアップグレードがインスタンスに円滑に適用されます。更新は以下の2つの方法で実行されます。

(a) 継続的な管理メンテナンスによる更新
(b) サービスの更新

これらのメンテナンスとサービスの更新は、セキュリティ、信頼性、運用パフォーマンスを高めるために重要なアップグレードを適用するために必要となっています。AWSは、オプトアウトできる場合でも、セキュリティアップデートを適用することを強く推奨しています。

※なお、更新する内容についてさらに詳しい情報を知りたい方もいらっしゃるかもしれませんが、マネジメントコンソール上の『更新の説明』に記載されている情報以上の詳細は、公開されていません。

今回のブログでは、サービス更新に焦点を当ててご紹介していこうと思います。

・Amazon ElastiCache 管理メンテナンスとサービス更新のヘルプページ
https://aws.amazon.com/jp/elasticache/elasticache-maintenance/
─────────────────────────
Q: サービス更新をオプトアウトできますか?

オプトアウトできる場合でも、セキュリティアップデートを適用することを強くお勧めします。

サービス更新する際に何か影響はあるの?

▼Amazon ElastiCache (Redis OSS) の場合
Redis の場合、更新は各シャード内で順番に 1 つのノードずつ適用されます。更新中のノードでは数秒間のダウンタイムが発生しますが、Redis クラスター全体としては引き続きトラフィック処理が行われます。インスタンスの構成やトラフィックの状況によっては、ノードの交換に時間がかかることがあります。(たとえば、プライマリノードのメモリに十分な空きがなく、書き込みトラフィックが多い場合など)

─────────────────────────

▼Amazon ElastiCache for Memcached の場合
Memcached ノードの場合、置換処理により新しい空のノードが起動され置き換えられ、既存のノードは終了するため、ダウンタイムが発生します。また、キャッシュ内容はリセットされます。切り替え中、新しいノードが一時的に利用できないことがあります。また、切り替え後は新しいノードにキャッシュデータが再投入されるため、その間アプリケーションのパフォーマンスが一時的に低下する可能性があります。影響を抑えるため、更新は一度に 1 つのノードへ順次適用されます。なお、Memcached ノードは同期が不要なため、ノードサイズに関わらず速やかに交換が完了します。

ElastiCache のセルフサービスアップデートにはどのようなアクションが必要ですか?
https://repost.aws/ja/knowledge-center/elasticache-self-service-update

サービスの更新が、勝手に自動適用されているのはなぜ?

ElastiCacheのサービス更新は、ノード置換を通して適応されます。計画されたメンテナンスイベントやノードフェイルオーバーなど、他の理由でノードが交換された場合にも、Amazon ElastiCache は、[ 最新のサービス更新を含む新しいノード ] をプロビジョニングする仕様です。

上記の仕様に基づき、直近で何か別の理由でノードの置換が行われていた場合、その際にサービスの更新が併せて実施されることもあります。そのため、適用の指示をしていないにもかかわらず、既に適用された[ complete ]状態となっていることが考えられます。

特に直近でノードの置換が行われており、かつサービス更新のリリース日時付近で自動的に適用されていた場合は、先ほどの理由による可能性が高いかと思います。

・メンテナンスのヘルプ – Amazon ElastiCache | AWS
https://aws.amazon.com/jp/elasticache/elasticache-maintenance/
─────────────────────────
Q: サービス更新を適用していない場合でも、ElastiCache クラスターの 1 つ以上のノードでの更新ステータスが「未適用」から「完了」に変更されたのはなぜですか?
この状態が発生する可能性のあるケースには、次の 2 通りがあります。

(a) オプションのサービス更新の適用を逃し、更新が「期限切れ」状態になった場合。したがって、コンプライアンスプログラムに参加しているクラスターは、すべてのサービス更新を常に適用する必要があります。
(b) 計画されたメンテナンスイベントやノードフェイルオーバーなど、他の理由でノードが交換された場合、Amazon ElastiCache は最新のサービス更新を含む新しいノードをプロビジョニングします。

どちらの場合も、クラスターは正常に動作し続けます。

まとめ

今回は、Amazon ElastiCache のサービス更新について、ご紹介させていただきました。
本記事が、サービス更新をしていただく際の参考になれば幸いです。