Redis 用 Amazon ElastiCache
Redis 用 ElastiCache ユーザーガイド (API バージョン 2015-02-02)

ノードの置換

Redis 用 Amazon ElastiCache は、インスタンスにシームレスに適用されるパッチとアップグレードを使用して、頻繁にフリートのアップグレードを行います。ただし、場合によっては基盤となるホスト OS の必須更新を適用するために Redis 用 ElastiCache ノードを再起動する必要があります。セキュリティ、信頼性、運用パフォーマンスを強化するアップグレードを適用するため、そのような置換が必要となります。

このような置換を、スケジュールされたノード置換ウィンドウより前に、任意のタイミングで独自に管理することもできます。置換を独自に管理すると、インスタンスはノードの再起動時に OS の更新を受信し、スケジュールされたノードの置換はキャンセルされます。ノード交換が行われることを示すアラートを引き続き受け取ります。すでにメンテナンスの必要を手動で軽減した場合には、これらのアラートを無視できます。

次のリストで、ElastiCache が Redis ノードの 1 つの置き換えをスケジュールしている場合に取ることのできるアクションを識別します。状況に応じて必要となる情報をすばやく見つけるには、次のメニューから選択します。

Redis ノード置き換えオプション

  • 何もしない–何もしない場合、ElastiCache はスケジュールどおりにノードを置き換えます。

    ノードが Redis (クラスターモードが無効) クラスターに属する場合、代替ノードはプライマリノードと同期されます。

    ノードがスタンドアロンである場合は、ElastiCache によってまず代替ノードが起動されてから、既存のノードと同期されます。既存のノードは、この時点で、サービスリクエストに使用できなくなります。同期が完了すると、既存のノードは終了され、新しいノードがその代わりになります。ElastiCache はこのオペレーション中にデータを保持するために最善の努力をします。

     

  • メンテナンス時間の変更–スケジュールされたメンテナンスイベントの場合、ElastiCache から電子メールまたは通知イベントを受信すると、スケジュールされている置き換え時刻になる前にメンテナンス時間を変更した場合には、新しい時刻にノードが置き換えられます。詳細については、以下のトピックを参照してください。

    注記

    メンテナンスウィンドウを移動して置換ウィンドウを変更する機能は、ElastiCache 通知にメンテナンスウィンドウが含まれている場合にのみ使用できます。通知にメンテナンスウィンドウが含まれていない場合、置換ウィンドウを変更することはできません。

    (例:

    今が 11/09、木曜日の 1500 とします。次のメンテナンスウィンドウは 11/10、金曜日の 1700 です。以下が、3 つのシナリオとその結果です:

    • メンテナンスウィンドウを金曜日の 1600 に変更します (現在の日時より後で、次の予定メンテナンスウィンドウの前)。ノードは 11/10、金曜日の 1600 に置き換えられます。

    • メンテナンスウィンドウを土曜日の 1600 に変更します (現在の日時より後で、次の予定メンテナンスウィンドウより後)。ノードは 11/11、土曜日の 1600 に置き換えられます。

    • メンテナンスウィンドウを水曜日の 1600 に変更します (週の中で、現在の日時より前)。ノードは 11/15、次の水曜日の 1600 に置き換えられます。

    手順については、「メンテナンスの管理」を参照してください。

     

  • Redis クラスターのノードのみの置き換え – クラスターにリードレプリカがない場合は、次の手順を使ってノードを置き換えることができます。

    バックアップと復元を使用してノードのみを置き換えるには

    1. ノードのクラスターのスナップショットを作成します。手順については、「手動バックアップの作成」を参照してください。

    2. スナップショットからシードして、新しいクラスターを作成します。手順については、「クラスターのサイズ変更 (オプション) によるバックアップからの復元」を参照してください。

    3. 置き換え対象となったノードがあるクラスターを削除します。手順については、「クラスターの削除」を参照してください。

    4. アプリケーションで、古いノードのエンドポイントを新しいノードのエンドポイントに置き換えます。

     

  • Redis クラスターのレプリカノードの置き換え – レプリカクラスターを置き換えるには、レプリカを追加してレプリカの数を増やし、置き換えるレプリカを削除してレプリカの数を減らします。このプロセスは動的で、クラスターのダウンタイムはありません。

    注記

    シャードまたはレプリケーショングループにすでに 5 のレプリカがある場合は、ステップ 1 と 2 を逆転する必要があります。

    Redis クラスターでレプリカを置き換えるには

    1. シャードまたはレプリケーショングループにレプリカを追加してレプリカの数を増やします。詳細については、「シャードのレプリカの数を増やす」を参照してください。

    2. 置き換えるレプリカを削除します。詳細については、「シャードのレプリカの数を減らす」を参照してください。

    3. アプリケーションでエンドポイントを更新します。

     

  • Redis (クラスターモードが有効) シャードのノードの置き換え – ダウンタイムなしでクラスターのノードを置き換える場合は、オンラインリシャーディングを使用して最初にスケールアウトしてシャードを追加して、置き換えるノードがあるシャードをスケールインして削除します。

    Redis (クラスターモードが有効) クラスターでノードを置き換えるには

    1. スケールアウト: 置き換えるノードがある既存のシャードと同じ設定のシャードを追加します。詳細については、「オンラインリシャーディングによるシャードの追加」を参照してください。

    2. スケールイン: 置き換えるノードがあるシャードを削除します。詳細については、「オンラインリシャーディングによるシャードの削除」を参照してください。

    3. アプリケーションでエンドポイントを更新します。

     

  • Redis (クラスターモードが無効) クラスターのノードの置き換え – クラスターが、リードレプリカのない Redis (クラスターモードが無効) クラスターである場合は、次の手順を使用してノードを置き換えることができます。

    レプリケーションを使用したノードの置き換え (クラスターモードが無効な場合のみ)

    1. プライマリとして置き換え対象になったノードがあるクラスターにレプリケーションを追加します。このクラスターでマルチ AZ を有効にしないでください。手順については、「シャードがない Redis クラスターにレプリケーションを追加するには」を参照してください。

    2. クラスターにリードレプリカを追加します。手順については、「ノードをクラスターに追加するには (console)」を参照してください。

    3. 新たに作成したリードレプリカをプライマリに昇格させます。手順については、「Redis (クラスターモードが無効) レプリケーショングループのプライマリへのリードレプリカの昇格」を参照してください。

    4. 置き換え対象となったノードを削除します。手順については、「クラスターからのノードの削除」を参照してください。

    5. アプリケーションで、古いノードのエンドポイントを新しいノードのエンドポイントに置き換えます。

     

  • Redis (クラスターモードが無効) リードレプリカを置き換える – ノードがレプリケーショングループのリードレプリカである場合、ノードを置き換えます。

    クラスターに 1 つのレプリカノードのみがあり、マルチ AZ が有効になっている場合は、マルチ AZ を無効にしてからレプリカを削除する必要があります。手順については、「レプリケーショングループの変更」を参照してください。

    Redis (クラスターモードが無効) リードレプリカと置き換えるには

    1. 置き換え対象となったレプリカを削除します。手順については、以下を参照してください。

    2. 置き換え対象となったレプリカと置き換える新しいレプリカを追加します。先ほど削除したレプリカと同じ名前を使用する場合は、手順 3 を省略できます。手順については、以下を参照してください。

    3. アプリケーションで、古いレプリカのエンドポイントを新しいレプリカのエンドポイントに置き換えます。

    4. 開始時にマルチ AZ が無効になっている場合は、この時点で再び有効にします。手順については、「マルチ AZ で自動フェイルオーバーを有効にする」を参照してください。

     

  • Redis (クラスターモードが無効) プライマリノードの置き換え – ノードがプライマリノードである場合、リードレプリカをプライマリに昇格させ、プライマリノードであったレプリカを削除します。

    クラスターに 1 つのレプリカのみがあり、マルチ AZ が有効になっている場合は、マルチ AZ を無効にしてからステップ 2 のレプリカを削除する必要があります。手順については、「レプリケーショングループの変更」を参照してください。

    Redis (クラスターモードが無効) プライマリノードを置き換えるには

    1. リードレプリカをプライマリに昇格させます。手順については、「Redis (クラスターモードが無効) レプリケーショングループのプライマリへのリードレプリカの昇格」を参照してください。

    2. 置き換え対象となったノード (前のプライマリ) を削除します。手順については、「クラスターからのノードの削除」を参照してください。

    3. 置き換え対象となったレプリカと置き換える新しいレプリカを追加します。先ほど削除したノードと同じ名前を使用している場合、アプリケーションでエンドポイントの変更をスキップできます。

      手順については、「Redis (クラスターモードが無効) レプリケーショングループへのリードレプリカの追加」を参照してください。

    4. アプリケーションで、古いノードのエンドポイントを新しいノードのエンドポイントに置き換えます。

    5. 開始時にマルチ AZ が無効になっている場合は、この時点で再び有効にします。手順については、「マルチ AZ で自動フェイルオーバーを有効にする」を参照してください。