スキップしてコンテンツを表示

Application Migration Service または Elastic Disaster Recovery のレプリケーションプロセスが 100% で停滞し、メッセージ "Finalizing Initial Sync" が表示される原因を教えてください。

所要時間4分
0

AWS Application Migration Service または AWS Elastic Disaster Recovery を使用したところ、レプリケーションプロセスが 100% で停滞し、コンソールにはメッセージ "Finalizing Initial Sync" が表示されます。

簡単な説明

Application Migration Service または Elastic Disaster Recovery の同期中にレプリケーションプロセスが 100% のまま停止すると、次のエラーが表示されます。

  • "Finalizing Initial Sync - Flushing Backlog"
  • "Finalizing Initial Sync - Creating First Launchable Snapshot"

解決策

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI で発生したエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。

"Finalizing Initial Sync - Flushing Backlog" エラーのトラブルシューティング

バックログのフラッシュが完了し、同期が初期化されるまで待機します。

ソースマシンで書き込みが集中している場合、バックログのサイズが増加する可能性があります。マシンが "Finalizing Initial Sync" ステータスから移行できない場合は、Application Migration Service または Elastic Disaster Recovery のレプリケーション速度をテストします。さらに、すべてのレプリケーション元マシンに必要な帯域幅を計算します。レプリケーションインスタンスのネットワークスループットが十分であることを確認します。

レプリケーション設定を確認するには、次の手順を実行します。

  1. Application Migration Service コンソールまたは Elastic Disaster Recovery コンソールを開きます。
  2. ナビゲーションペインで [ソースサーバー] を選択します。
  3. [レプリケーション設定の編集] を選択します。
  4. [ネットワーク帯域幅のスロットリング][帯域幅のスロットリング] に設定されているかどうかを確認します。帯域幅を制限する必要がない場合は、[帯域幅をスロットリングしない] を選択します。帯域幅のスロットリングが必要な場合は、値を必要な最小帯域幅に設定します。詳細については、「データのルーティングとスロットリング」(Application Migration Service) または「ネットワーク帯域幅のスロットリング」 (Elastic Disaster Recovery) を参照してください。

Amazon CloudWatch メトリクスを参照し、レプリケーションサーバーのネットワークとディスク使用状況を確認します。リソースが原因でサーバーがスロットリングされる場合は、専用レプリケーションサーバー、またはより大容量のレプリケーションサーバータイプを使用します。または、SSD ベースのストレージを選択します。詳細については、「AWS Application Migration Service のベストプラクティス」または「ステージングディスクの種類を変更する」を参照してください。

特定のソースマシンが使用するレプリケーションサーバーを確認するには、使用するオペレーティングシステム (OS) に応じて、ソースマシンで次のコマンドを実行します。

Linux:

netstat -anp | grep ":1500"

Windows:

netstat -ano | findstr ":1500"

マシンがポート 1500 経由で接続するリモート IP アドレスを書き留めます。

または、使用する OS に応じて次のコマンドを実行してソースマシンの agent.log.0 ファイルを参照し、使用中のレプリケーションサーバーを正確に特定します。

Linux:

sudo cat /var/lib/aws-replication-agent/agent.log.0 | grep :1500 | tail -n 1

Windows:

findstr /L ":1500" "C:\Program Files (x86)\AWS Replication Agent\agent.log.0"

"Finalizing Initial Sync - Creating First Launchable Snapshot" エラーのトラブルシューティング

ユーザーの IAM ポリシー権限を確認する

ユーザーの AWS Identity and Access Management (IAM) ポリシーには、Amazon Elastic Compute Cloud (Amazon EC2) API を実行するのに必要な権限が含まれることを確認します。

Application Migration Service または Elastic Disaster Recovery のユーザー認証情報を確認します。または、AWS CloudTrail イベント履歴を参照し、ユーザーに返された API エラーを特定します。

Amazon EC2 エンドポイントを確認する

レプリケーションサーバーが、使用する AWS リージョン内の Application Migration Service または Elastic Disaster Recovery の Amazon EC2 エンドポイントと通信できることを確認します。

サービスエンドポイントへの接続をテストするには、次の手順を実行します。

  1. ステージングエリアと同じサブネットで新しい Linux インスタンスを起動します。
  2. 新しいインスタンスにログインし、次のコマンドを実行します。
    dig ec2.us-east-1.amazonaws.com  
    telnet ec2.us-east-1.amazonaws.com 443  
    wget https://ec2.us-east-1.amazonaws.com
    注: us-east-1 を実際のリージョンに置き換えてください。上記のコマンドを実行できない場合は、次のセクションに進み、ネットワーク接続の問題をトラブルシューティングします。仮想プライベートクラウド (VPC)、サブネット、セキュリティグループ、ネットワークアクセスコントロールリスト (ネットワーク ACL)、およびルートテーブルの設定がレプリケーション設定と一致していることを確認します。設定ミスがある場合、レプリケーションサーバーから Amazon EC2 エンドポイントへの通信がブロックされる可能性があります。

パブリックサブネットで起動したレプリケーションサーバーのネットワーク接続がブロックされる原因を特定する

セキュリティグループ、ネットワーク ACL、およびルートテーブルが Amazon EC2 エンドポイントとの通信を TCP ポート 443 で許可していることを確認します。

enableDnsHostnames 属性と enableDnsSupport 属性が VPC レベルで true に設定されていることを確認します。次の AWS CLI コマンド describe-vpc-attribute を実行し、enableDnsHostnames 属性を確認します。

aws ec2 describe-vpc-attribute --vpc-id vpc-abcdef --attribute enableDnsHostnames   

注: vpc-abcdef を VPC ID に置き換えてください。

出力例:

$ aws ec2 describe-vpc-attribute --vpc-id vpc-abcdef --attribute enableDnsHostnames  
{   
 "VpcId": "vpc-a01106c2",  
 "EnableDnsHostnames": {   
 "Value": true  
 }   
}

次の describe-vpc-attribute コマンドを実行し、enableDnsSupport 属性を確認します。

aws ec2 describe-vpc-attribute --vpc-id vpc-abcdef --attribute enableDnsSupport

注: vpc-abcdef を VPC ID に置き換えてください。

出力例:

$ aws ec2 describe-vpc-attribute --vpc-id vpc-abcdef --attribute enableDnsSupport     
{  
 "VpcId": "vpc-a01106c2",   
 "EnableDnsSupport": {  
 "Value": true   
 }  
}

この属性が true に設定されていない場合は、次の modify-vpc-attribute コマンドを実行し、有効化します。

aws ec2 modify-vpc-attribute --vpc-id vpc-abdcef --enable-dns-hostnames "{\"Value\":true}"

注: vpc-abcdef を VPC ID に、enable-dns-hostnamestrue に設定されていない属性に置き換えてください。

プライベートサブネットで起動したレプリケーションサーバーのネットワーク接続がブロックされる原因を特定する

セキュリティグループ、ネットワーク ACL、およびルートテーブルが Amazon EC2 プライベートエンドポイントとの通信を TCP ポート 443 で許可していることを確認します。ルートテーブルに NAT ゲートウェイまたはインスタンスを構成した場合は、Amazon EC2 エンドポイントへのアウトバウンドトラフィックが TCP ポート 443 で機能していることを確認します。

アウトバウンドトラフィックが Transit ゲートウェイまたは仮想プライベートゲートウェイを経由しているかどうかを確認します。その場合は、ルートテーブルは、Amazon EC2 エンドポイントへのトラフィックを TCP ポート 443 で許可する必要があります。さらに、ファイアウォールが通信をブロックしていないかを確認します。

VPC にインターフェイス VPC エンドポイントがある場合は、必ず TCP ポート 443 上の Amazon EC2 エンドポイント間でプライベートネットワーク経由で通信が行われるようにしてください。enableDnsHostnames および enableDnsSupport が VPC レベルで true に設定されており、VPC インターフェイスエンドポイントで PrivateDnsEnabledtrue に設定されていることを確認します。

次の describe-vpc-attribute コマンドを実行し、enableDnsHostnames 属性を確認します。

aws ec2 describe-vpc-attribute --vpc-id vpc-abcdef --attribute enableDnsHostnames --query 'EnableDnsHostnames'

注: vpc-abcdef を VPC ID に置き換えてください。

出力例:

$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsHostnames --query 'EnableDnsHostnames'  

{   
 "Value": true  
}

次の describe-vpc-attribute コマンドを実行し、enableDnsSupport 属性を確認します。

aws ec2 describe-vpc-attribute --vpc-id vpc-abcdef --attribute enableDnsSupport --query 'EnableDnsSupport'

注: vpc-abcdef を VPC ID に置き換えてください。

出力例:

$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsSupport --query 'EnableDnsSupport'  

{   
 "Value": true  
}

次の describe-vpc-attribute コマンドを実行し、PrivateDnsEnabled 属性を確認します。

aws ec2 describe-vpc-endpoints --vpc-endpoint-ids vpce-12345abcde --query 'VpcEndpoints[0].PrivateDnsEnabled'  

注: vpce-12345abcde を VPC エンドポイントに置き換えてください。

出力例:

true

この属性が true に設定されていない場合は、次の modify-vpc-attribute コマンドを実行して変更します。

aws ec2 modify-vpc-attribute --vpc-id vpc-abdcef --enable-dns-hostnames "{\"Value\":true}"

注: vpc-abcdef を VPC ID に、enable-dns-hostnamestrue に設定されていない属性に置き換えてください。

レプリケーション設定が直近に変更されたかどうか確認する

Application Migration Service または Elastic Disaster Recoveryレプリケーション設定が直近に変更されたかどうかを確認します。CloudTrail イベント履歴UpdateReplicationConfiguration API コールの有無を確認すると、変更を特定できます。ソースサーバーを使用して [リソース名] をフィルターします。例えば、[レプリケーションのリソースタグ] フィールドに無効なタグが挿入されていないかを確認します。使用できる文字の一覧については、「タグの制限事項」を参照してください。

プロキシ設定が適切であることを確認する

レプリケーションサーバーがプロキシサーバーを使用する場合は、そのプロキシ設定ではリージョナル Amazon EC2 エンドポイントとの通信が TCP ポート 443 で許可されていることを確認します。

SSL インターセプションと認証の許可リストには、mgn.region.amazonaws.com (Application Service Migration) および drs.region.amazonaws.com (Elastic Disaster Recovery) が含まれていることを確認します。

注: region を実際のリージョンに置き換えてください。

詳細については、「ソースサーバーと AWS Application Migration Service コンソールの間にプロキシサーバーを使用できますか」および「ソースサーバーと Elastic Disaster Recovery コンソールの間にプロキシサーバーを使用できますか」を参照してください。

AWS Replication Agent を確認する

AWS Replication Agent がソースマシンで正しく動作することを確認します。問題を特定するには、AWS Replication Agent のログにエラーがないか確認します。AWS Replication Agent のログは、次のファイルロケーションに配置されます。

  • Linux Replication Agent のログは、/var/lib/aws-replication-agent/agent.log.0 に配置されます。
  • Windows Replication Agent のログは、C:\Program Files (x86)\AWS Replication Agent\agent.log.0 に配置されます。

Amazon EC2 のサービスクォータに問題がないか確認する

Application Migration Service または Elastic Disaster Recovery のクォータを超過した場合、サービスは起動可能なリカバリスナップショットを作成できません。API のスロットリングやレート超過の問題が発生する場合もあります。CloudTrail イベント履歴を参照し、サービスクォータや帯域幅のスロットリングに関する問題を特定します。必要に応じて、クォータの増加をリクエストしてください。

コメントはありません

関連するコンテンツ