このトピックでは、ワークロードをマスターノードからレプリカノードに切り替える方法について説明します。 ApsaraDB for Redisでは、自動切り替えに加えて、ワークロードをマスターノードからレプリカノードに手動で切り替えることができます。 手動切り替えにより、ディザスタリカバリのドリルを実行し、クライアントのエラー処理機能を確認できます。 ApsaraDB for Redisインスタンスが複数のゾーンにデプロイされている場合は、手動切り替えを実行して、アプリケーションが最も近いノードに接続できるようにすることもできます。
前提条件
インスタンスはmaster-replicaデプロイメントモデルを使用します。
スタンドアロンデプロイメントモデルを使用するインスタンスでは、マスターレプリカ切り替えはサポートされていません。
影響
切り替えが実行されるデータノードは、数秒間切断されます。 切り替えには、潜在的なデータ損失のリスクがあります。 例えば、データは、同期待ち時間のために、マスターノードとレプリカノードとの間で一貫性がなくなる可能性がある。 ドメインネームシステム (DNS) キャッシュによって引き起こされるスイッチオーバーとデータダブルライトによって引き起こされる潜在的なデータ損失のリスクを防ぐために、データノードは最大30秒間読み取り専用になります。
インスタンスが [切り替え] 状態になると、このインスタンスを管理できなくなります。 たとえば、インスタンス設定を変更したり、インスタンスを別のゾーンに移行したりすることはできません。
シナリオ
次の例では、アプリケーションがデプロイされているElastic Compute Service (ECS) インスタンスはゾーンBにあり、ApsaraDB for RedisインスタンスのマスターノードはゾーンAにあります。ECSインスタンスとApsaraDB for Redisインスタンスのマスターノード間の接続は、異なるゾーンにまたがっています。 これにより、ネットワーク遅延が増加します。 これは、ApsaraDB for Redisインスタンスとビジネスのパフォーマンスにも影響します。
クラウドリソースのデプロイアーキテクチャを最適化するために、ワークロードをマスターノードからレプリカノードに切り替えて、ネットワークの遅延を最小限に抑えることができます。 手動切り替え後、元のレプリカノードが昇格して新しいマスターノードになります。 手動切り替えでは、マスターノードとレプリカノードのゾーンとIDは変更されません。
手順
ApsaraDB for Redisコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、管理するインスタンスが存在するリージョンを選択します。 次に、インスタンスを見つけて、インスタンスIDをクリックします。
左側のナビゲーションウィンドウで、サービスの提供.
では、データノードセクションで、切り替えを実行するデータシャードを選択し、切り替え.
説明インスタンスがクラスターインスタンスの場合、各データシャードのマスターノードとレプリカノードが存在するゾーンに関する情報を表示できます。
表示されるパネルで、切り替えを実行する時間を選択します。
Immediate: すぐに切り替えを実行します。
メンテナンス期間: 指定されたメンテナンス期間内に切り替えを実行します。 インスタンスのメンテナンスウィンドウを表示および変更する方法の詳細については、「」「メンテナンスウィンドウの設定」をご参照ください。
クリックOK.
警告インスタンスのVPCまたはvSwitchを変更すると、約30秒の一時的な接続が発生します。 オフピーク時に操作を実行し、アプリケーションがインスタンスに自動的に再接続できることを確認してください。
関連する API 操作
API 操作 | 説明 |
ワークロードをマスターノードからレプリカノードに手動で切り替えます。 この操作は、ディザスタリカバリドリルに使用できます。 この操作は、インスタンスが複数のゾーンにデプロイされている場合、アプリケーションとApsaraDB for Redisインスタンス間の近くの接続にも使用できます。 |
関連ドキュメント
ApsaraDB for Redisは、ノードのヘルスステータスを監視できます。 インスタンス内のマスターノードに障害が発生した場合、ApsaraDB for Redisは自動的にマスターレプリカスイッチオーバーをトリガーします。 たとえば、インスタンスの高可用性 (HA) を確保するために、マスターノードとレプリカノードの役割が切り替えられます。 詳細については、「マスターレプリカ切り替えの実行」をご参照ください。