Application Migration Service나 Elastic Disaster Recovery 복제 프로세스가 100%에서 멈추고 "초기 동기화 완료 중" 메시지가 표시되는 이유는 무엇인가요?

6분 분량
0

AWS Application Migration Service(AWS MGN) 또는 AWS Elastic Disaster Recovery(AWS DRS)를 사용합니다. 콘솔에서 복제 프로세스가 100%에서 멈추고 "초기 동기화 완료 중"이라는 메시지가 표시됩니다.

간략한 설명

Application Migration Service 또는 Elastic Disaster Recovery에 대한 동기화 중에 복제 프로세스가 100%에서 멈추면 다음 오류가 표시됩니다.

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

해결 방법

"Finalizing Initial Sync - Flushing Backlog" 오류 문제 해결

동기화가 초기화되도록 백로그가 플러시를 완료할 때까지 기다립니다.

소스 머신이 쓰기 집약적인 경우 백로그의 크기가 커질 수 있습니다. 시스템이 Application Migration Service 또는 Elastic Disaster Recovery 콘솔에서 초기 동기화 완료 중 상태로 남아 있을 수 있습니다. 이 경우 다음 단계를 완료합니다.

  1. CloudEndure 웹사이트에서 복제 속도를 테스트합니다.
  2. 모든 복제 원본 시스템에 필요한 대역폭을 계산합니다. 복제 인스턴스의 네트워크 처리량이 충분한지 확인합니다.
  3. 복제 설정에서 네트워크 대역폭 제한이 활성화되었는지 확인합니다. 구성에서 이 옵션을 활성화해야 하는 경우 값을 최소한 필요한 최소 대역폭으로 설정해야 합니다. 자세한 내용은 Application Migration Service 또는 Elastic Disaster Recovery의 대역폭 제한 설명서를 참조하세요.
  4. Amazon CloudWatch 지표를 사용하여 복제 서버의 네트워크 및 디스크 사용률을 확인합니다. 리소스가 서버를 제한하는 경우 전용 복제 서버 또는 더 큰 복제 서버 유형을 사용합니다. 또는 SSD 기반 스토리지를 선택합니다. 자세한 내용은 디스크 설정(Application Migration Service) 또는 디스크 설정(Elastic Disaster Recovery)을 참조하세요.
  5. 특정 소스 시스템이 사용하는 복제 서버를 확인하려면 다음 예제와 같이 소스 시스템에서 netstat 명령을 실행합니다.
    머신이 포트 1500을 통해 연결하는 원격 IP 주소를 기록해 둡니다.

Linux용 netstat 명령:

$ netstat -anp | grep ":1500"

Windows용 netstat 명령:

netstat -ano | findstr ":1500"

또는 소스 시스템에서 agent.log.0 파일을 검토하여 사용 중인 정확한 복제 서버를 식별합니다.

Linux용 agent.log.0:

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

Windows용 agent.log.0:

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

초기 동기화 완료 중 - 시작 가능한 첫 번째 스냅샷 생성 오류 문제 해결

이 오류를 해결하려면 다음 단계 중 하나 이상을 완료합니다.

Application Migration Service 또는 Elastic Disaster Recovery 사용자의 AWS IAM 정책에 필요한 Amazon EC2 API를 실행할 수 있는 모든 권한이 있는지 확인

Application Migration Service 또는 Elastic Disaster Recovery 사용자 정책은 Application Migration Service 또는 Elastic Disaster Recovery에 필요한 AWS 보안 인증을 참조하세요. 또는 AWS CloudTrail 이벤트 기록을 보고 구성된 사용자에 대한 API 오류를 확인할 수 있습니다.

복제 서버가 리전 내 Amazon EC2 엔드포인트와 통신하는지 확인

  1. 스테이징 영역과 동일한 서브넷에서 새 Linux 머신을 시작합니다.
  2. 연결을 테스트하려면 새 머신에 로그인하고 다음 명령을 실행합니다. 다음 예제 명령에서 us-east-1을 사용자의 리전으로 바꿉니다.
$ dig ec2.us-east-1.amazonaws.com  
$ telnet ec2.us-east-1.amazonaws.com 443  
$ wget https://ec2.us-east-1.amazonaws.com

이러한 명령 중 하나라도 실패하면 네트워크 연결 문제가 있는 것입니다. 다음 섹션으로 진행합니다.

네트워크 연결 차단 요인 식별

Virtual Private Cloud(VPC), 서브넷, 보안 그룹, 네트워크 액세스 제어 목록(네트워크 ACL) 및 라우팅 테이블 설정이 복제 설정과 일치하는지 확인합니다. 구성이 잘못되면 복제 서버에서 Amazon EC2 엔드포인트로의 통신이 차단될 수 있습니다.

복제 서버가 퍼블릭 서브넷에서 시작되면 다음 단계를 완료합니다.

  1. 보안 그룹, 네트워크 ACL 및 라우팅 테이블이 TCP 포트 443에서 Amazon EC2 엔드포인트와의 통신을 허용하는지 확인합니다.
  2. enableDnsHostnamesenableDnsSupport 속성이 VPC 수준에서 true로 설정되었는지 확인합니다.
$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsHostnames  
{   
 "VpcId": "vpc-a01106c2",  
 "EnableDnsHostnames": {   
 "Value": true  
 }   
}
$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsSupport  

{  
 "VpcId": "vpc-a01106c2",   
 "EnableDnsSupport": {  
 "Value": true   
 }  
}

복제 서버가 전용 서브넷에서 시작되면 다음 단계를 완료합니다.

  1. 보안 그룹, 네트워크 ACL 및 라우팅 테이블이 TCP 포트 443에서 Amazon EC2 엔드포인트와의 통신을 허용하는지 확인합니다.
  2. 라우팅 테이블에서 NAT 게이트웨이 또는 인스턴스를 구성한 경우 TCP 포트 443에서 EC2 엔드포인트에 대한 아웃바운드 트래픽이 작동하는지 확인합니다.
  3. 아웃바운드 트래픽이 전송 또는 가상 프라이빗 게이트웨이를 통과하는지 확인합니다. 이 경우 라우팅 테이블이 TCP 포트 443에서 EC2 엔드포인트로의 트래픽을 허용하는지 확인합니다.
  4. 방화벽이 통신을 차단하는지 확인합니다.
  5. VPC에 인터페이스 VPC 엔드포인트가 있는 경우 프라이빗 네트워크를 통해 TCP 포트 443의 Amazon EC2 엔드포인트 간에 통신이 발생하는지 확인합니다. 이를 수행하려면 다음 단계를 완료합니다.

enableDnsHostnamesenableDnsSupport 속성이 VPC 수준에서 true로 설정되었는지 확인합니다. VPC 인터페이스 엔드포인트에서 PrivateDnsEnabled 값이 true로 설정되어 있는지 확인합니다.

$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsHostnames --query 'EnableDnsHostnames'  
{   
 "Value": true  
}
$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsSupport --query 'EnableDnsSupport'  
{   
 "Value": true  
}
$ aws ec2 describe-vpc-endpoints --vpc-endpoint-ids vpce-088d25a4bbf4a7abc --query 'VpcEndpoints[0].PrivateDnsEnabled'  
true

복제 설정에서 최근 변경 사항 확인

CloudTrail 이벤트 기록에서 복제 설정에 대한 변경 사항을 추적하려면 UpdateReplicationConfiguration API 호출을 검색합니다. 그런 다음 원본 서버를 사용하여 리소스 이름을 필터링합니다. 예를 들어 복제 리소스 태그 필드에 삽입된 유효하지 않은 태그가 있는지 확인합니다. 허용되는 문자 목록은 태그 제한을 참조하세요.

올바른 프록시 설정을 사용하고 있는지 확인

  1. 복제 서버가 프록시 서버를 사용하는 경우 프록시 설정이 TCP 포트 443에서 지역 EC2 엔드포인트와의 통신을 허용하는지 확인합니다.
  2. SSL 차단 및 인증에 대한 허용 목록에 mgn.<region>.amazonaws.com(Application Service Migration용) 및 drs.<region>.amazonaws.com(Elastic Disaster Recovery용)이 포함되어 있는지 확인합니다. 자세한 내용은 원본 서버와 Application Migration Service 콘솔 간에 프록시 서버를 사용할 수 있나요? 그리고 소스 서버와 Elastic Disaster Recovery 콘솔 간에 프록시 서버를 사용할 수 있나요?를 참조하세요.

Replication Agent가 올바르게 작동하는지 확인

소스 시스템에서 AWS Replication Agent가 올바르게 작동하는지 확인합니다. Replication Agent 로그에서 발생 가능한 오류를 확인하여 문제를 정확히 찾아낼 수 있습니다. 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 서비스 할당량 문제 확인

서비스 할당량 문제API 제한 및 속도 한도 문제로 인해 Application Migration Service 또는 Elastic Disaster Recovery가 첫 번째 실행 가능한 복구 스냅샷을 생성하지 못할 수 있습니다. CloudTrail 이벤트 기록을 확인하여 서비스 할당량 또는 대역폭 제한 문제가 있는지 확인합니다.

AWS 공식
AWS 공식업데이트됨 일 년 전