Amazon ElastiCache のセルフサービス更新に関する通知を受信しました。どのようなアクションを実行する必要があるかを知りたいです。
簡単な説明
ElastiCache は、次の方法で入手可能なアップデートを通知します。
ライフサイクル中に、サービスの更新に関する通知が複数届く場合があります。サービスの更新に関して送信される通知の数は、その更新がオプションか必須かによって異なります。通知は、クラスターで実行するアクションによっても異なります。たとえば、期限前に必須の更新を適用した場合は、通知は届きません。
注: ElastiCache で指定されたリリース日よりも後にコンソールでノードを起動または置換した場合、ElastiCache は通知を送信しません。
解決策
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI で発生したエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
最新のサービス更新を確認する
ElastiCache コンソールまたは AWS CLI を使用してサービスの更新を適用できます。
ElastiCache コンソール
次の手順を実行します。
- ElastiCache コンソールを開きます。
- [サービス更新] を選択します。
- [ステータスを更新] を選択すると、すべてのサービス更新、更新の説明、および ElastiCache フリートのステータスが表示されます。
- 最も新しい [リリース日] の更新を見つけます。
AWS CLI
次の describe-service-updates コマンドを実行し、入手可能なすべてのアップデートを一覧表示し、リリース日順にソートします。
aws elasticache describe-service-updates \
--service-update-status available \
--query 'reverse(sort_by(ServiceUpdates,&ServiceUpdateReleaseDate))'
注: describe-service-updates コマンドでは入手可能なすべてのサービスアップデートを取得しますが、すべてが使用中の ElastiCache クラスターに適用されるとは限りません。
使用中のクラスター用のアップデートを確認するには、次の describe-update-actions コマンドを実行します。
aws elasticache describe-update-actions
describe-update-actions コマンドでは、Pending 状態のアップデートも一覧表示できます。
サービス更新を適用する
注: サービスの更新は常に累積されます。同じクラスター用のサービス更新が複数ある場合、最新の更新を適用すると、以前の更新はすべて含まれます。
[期日後の自動更新] 属性が Yes に設定されているサービス更新は、必須です。ElastiCache は、新しいサービスの更新時刻の 1 週間前に通知を送信します。予定された時間にサービスを更新したくない場合は、メンテナンス期間を変更できます。
サービス更新は、ステータスが Available または Scheduled のときに適用できます。
サービス更新の通知を受信した際は、できるだけ早く更新を適用することをおすすめします。
ElastiCache コンソールまたは AWS CLI を使用してサービスの更新を適用できます。
ElastiCache コンソール
次の手順を実行します。
- ElastiCache コンソールを開きます。
- [サービス更新] を選択します。
- 適用するサービス更新を選択し、[今すぐ適用] を選択します。
AWS CLI
次の batch-apply-update-action コマンドを実行します。
aws elasticache batch-apply-update-action --service-update ServiceUpdateNameToApply=sample-service-update --cluster-names cluster-1 cluster2
詳細については、「ElastiCache のサービス更新」を参照してください。
サービス更新の動作について
Redis ノードでは、サービスの更新は各シャード内で一度に 1 ノードに対して行われます。各ノードが更新されると、数秒間ダウンタイムが発生します。Redis クラスターの他の部分は、引き続きトラフィックを処理します。現在のインスタンス設定とトラフィックパターンによっては、ノードの更新処理に時間がかかる場合があります。たとえば、Redis プライマリノードの書き込みトラフィックが多い場合や、使用可能なメモリが限られている場合は、更新が完了するまでに時間がかかります。
Memcached ノードでは、更新プロセスによって新しい空の新しいノードが作成されます。古いノードは破棄されます。切り替え中、新しいノードは一時的に使用できなくなります。新しいノードは空のキャッシュで起動します。アプリケーションがキャッシュを再構築する際、パフォーマンスが低下することがあります。中断を最小限に抑えるため、更新は一度に 1 つのノードで行われます。Memcached ノードはデータを同期しないため、サイズに関係なく、処理速度は Redis ノードよりも速くなります。
注: 更新プロセスでは、Redis または Memcached クラスターの設定は変更されません。更新中、Amazon CloudWatch メトリクスのレポートが一時的に遅れる場合があります。
サービス更新の期限後にノードを手動で交換する
省略可能なサービス更新を適用期限内に適用しなかった場合、ElastiCache はその更新を完了済みとマークします。最新のアップデートを入手するには、既存のノードを手動で交換します。ElastiCache は次のメンテナンス期間中に更新を適用します。ノードを手動で置き換える方法については、「ノードの交換 (Valkey および Redis OSS)」と「ノードの交換 (Memcached)」を参照してください。新しいノードを作成した場合、ElastiCache は該当するすべての更新を適用します。
サービス更新に関する問題について AWS サポートに問い合わせる
サービスの更新中または更新後に問題が発生した場合は、AWS サポートにお問い合わせください。
関連情報
Amazon ElastiCache マネージドメンテナンスとサービスアップデートに関するヘルプページ