AWS Database Migration Service (AWS DMS) レプリケーションインスタンスの再起動またはフェイルオーバーに関するトラブルシューティングをしたいと考えています。
簡単な説明
次の原因で、AWS DMS レプリケーションインスタンスは自動的に再起動します。
- プライマリインスタンスにインフラストラクチャの問題がある場合 (例: ネットワーク接続の喪失、コンピューティングユニットの問題、ストレージの問題)。
- 垂直スケーリングアクティビティの結果、インスタンスクラスタイプが変更された場合。
- 特定のメンテナンス期間中に、インスタンスのホストでソフトウェアパッチが進行中の場合。詳細については、「レプリケーションエンジンバージョンの操作」を参照してください。
- [再起動] または [計画フェイルオーバーによる再起動] オプションにより、インスタンスを手動で再起動した場合。
レプリケーションインスタンスで問題が発生し、AWS DMS ヘルスチェックに応答しなかった場合、AWS DMS は自動的に復旧またはフェイルオーバーを開始します。シングル AZ 配置では、AWS DMS は復旧を開始します。マルチ AZ 配置では、AWS DMS はフェイルオーバーを開始します。AWS DMS がレプリケーションインスタンスを再起動した後、データベース移行タスクを手動で再開できます。
解決策
AWS DMS イベントを確認して根本原因を特定する
インスタンスの再起動またはフェイルオーバーの原因を特定するには、過去 24 時間の AWS DMS イベントを参照します。AWS DMS コンソールを開き、[イベント] を選択します。
注: デフォルトでは、AWS DMS は UTC タイムゾーンでイベントを登録します。
イベントを長期間保存するには、AWS DMS イベントを Amazon EventBridge に送信します。詳細については、「自動アプローチを実装し、AWS DMS 運用イベントを処理する」を参照してください。
Replication instance patched というイベントメッセージが表示された場合は、レプリケーションインスタンスのエンジンバージョンにアップグレードが行われたことを示します。アップグレードは、インスタンス変更の直後または、スケジュールしたメンテナンス期間中に発生する可能性があります。
インスタンスクラスタイプが変更された場合、The replication instance class for this replication instance is being changed (このレプリケーションインスタンスのレプリケーションインスタンスクラスが変更されています) または The replication instance class for this replication instance has changed (このレプリケーションインスタンスのレプリケーションインスタンスクラスが変更されました) というイベントメッセージが表示されます。Single-AZ 配置は、スケーリング操作中に数分間使用できなくなります。マルチ AZ 配置は、フェイルオーバー期間中は使用できません。通常、フェイルオーバーには 60 秒かかります。AWS DMS は、新たにサイズを変更したデータベースがフェイルオーバーする前に、スタンバイデータベースをアップグレードします。
次の原因で、Multi-AZ instance failover started (マルチ AZ インスタンスのフェイルオーバーが開始しました) または Multi-AZ instance failover completed (マルチ AZ インスタンスのフェイルオーバーが完了しました) というイベントメッセージが表示される場合があります。
- プライマリレプリケーションインスタンスが応答しない場合。
- [再起動] または [計画フェイルオーバーによる再起動] オプションにより、インスタンスが手動で再起動された場合。
- レプリケーションインスタンスにおいて、基盤ホストとのネットワークの問題が断続的に発生する場合。
拡張モニタリングダッシュボードで AWS DMS メトリクスを監視する
AWS DMS は、拡張モニタリングダッシュボードから Amazon CloudWatch ログにメトリクスを配信します。レプリケーションインスタンスログを参照すると、パフォーマンス、リソース使用率、および正常性に関するメトリクスを取得できます。
注: AWS DMS サーバーレスレプリケーションは拡張モニタリングをサポートしていません。
マルチ AZ 配置を有効にしてダウンタイムを削減する
マルチ AZ 配置を有効にすると、ダウンタイムを削減できます。マルチ AZ 配置では、レプリケーションインスタンスのスタンバイレプリカを別のアベイラビリティーゾーンで使用できます。詳細については、「AWS Database Migration Service におけるレジリエンス」を参照してください。
注: インスタンスがターゲットに Amazon Simple Storage Service (Amazon S3) を使用する場合、AWS DMS は S3 バケットに重複レコードを書き込む場合があります。この現象は、再起動またはフェイルオーバー後にタスクを再開し、TargetTablePrepMode が DO_NOTHING に設定されている場合に発生します。
関連情報
AWS Database Migration Service のベストプラクティス
AWS DMS レプリケーションインスタンスを使用する