Ir para o conteúdo

Por que meu processo de replicação do Application Migration Service ou do Elastic Disaster Recovery está parado em 100% com a mensagem “Finalizando a sincronização inicial”?

9 minuto de leitura
0

Eu uso o AWS Application Migration Service ou o AWS Elastic Disaster Recovery. O processo de replicação está parado em 100% e o console mostra a mensagem “Finalizando a sincronização inicial”.

Breve descrição

Quando o processo de replicação fica parado em 100% durante as sincronizações do Application Migration Service ou do Elastic Disaster Recovery, os erros a seguir são apresentados:

  • "Finalizing Initial Sync - Flushing Backlog" (“Finalizando a sincronização inicial - Limpando o backlog”)
  • "Finalizing Initial Sync - Creating First Launchable Snapshot" (“Finalizando a sincronização inicial - Criando o primeiro snapshot inicializável”)

Resolução

Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Solucionar o erro “Finalizing Initial Sync - Flushing Backlog”

Aguarde até que o backlog conclua o descarregamento para que a sincronização seja inicializada.

Se a máquina de origem usar muita gravação, o backlog poderá aumentar de tamanho. Se a máquina estiver travada no estado “Finalizando a sincronização inicial”, teste a velocidade de replicação do Application Migration Service ou do Elastic Disaster Recovery. Calcule a largura de banda necessária para todas as máquinas de origem replicantes. Certifique-se de que o throughput de rede da instância de replicação seja suficiente.

Para verificar suas configurações de replicação, conclua as seguintes etapas:

  1. Abra o console do Application Migration Service ou do Elastic Disaster Recovery.
  2. No painel de navegação, selecione Servidores de origem.
  3. Clique em Editar configurações de replicação.
  4. Verifique se o controle de utilização da largura de banda da rede está definida como Limitar largura de banda. Se você não precisar de limitar a largura de banda, selecione Não limitar a largura de banda. Se você precisar de controle de utilização de largura de banda, certifique-se de definir o valor para a largura de banda mínima necessária. Para obter mais informações, consulte Data routing and throttling [Roteamento e controle de utilização de dados] para o Application Migration Service ou Throttle network bandwidth [Controlar a utilização da largura de banda da rede] para o Elastic Disaster Recovery.

Use as Amazon CloudWatch Metrics para verificar a utilização da rede e do disco do servidor de replicação. Se um recurso controlar a utilização do servidor, use um servidor de replicação dedicado ou um tipo de servidor de replicação maior. Ou escolha o armazenamento baseado em SSD. Para obter mais informações, consulte AWS Application Migration Service best practices [Práticas recomendadas do AWS Application Migration Service] ou Change staging disk type [Alterar o tipo de disco de preparação].

Para verificar o servidor de replicação que uma máquina de origem específica usa, execute o seguinte comando na máquina de origem com base em seu sistema operacional (SO).

Linux:

netstat -anp | grep ":1500"

Windows:

netstat -ano | findstr ":1500"

Observe o endereço IP remoto ao qual a máquina se conecta pela porta 1500.

Ou execute o comando a seguir com base em seu SO para revisar o arquivo agent.log.0 na máquina de origem e identificar o servidor de replicação exato em uso.

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"

Solucionar o erro “Finalizing Initial Sync - Creating First Launchable Snapshot”

Verifique as permissões da política do IAM do usuário

Verifique se a política do AWS Identity and Access Management (IAM) do usuário tem todas as permissões necessárias para executar as APIs do Amazon Elastic Compute Cloud (Amazon EC2).

Verifique as credenciais do usuário para o Application Migration Service ou o Elastic Disaster Recovery. Ou verifique o histórico de eventos do AWS CloudTrail para encontrar falhas de API que ocorreram para o usuário.

Verifique seus endpoints do Amazon EC2

Certifique-se de que o servidor de replicação possa se comunicar com os endpoints do Amazon EC2 para o Application Migration Service ou o Elastic Disaster Recovery em sua região da AWS.

Para testar a conectividade com seus endpoints de serviço, conclua as seguintes etapas:

  1. Inicie uma nova instância do Linux na mesma sub-rede da sua área de preparação.
  2. Faça login na nova instância e execute os seguintes comandos:
    dig ec2.us-east-1.amazonaws.com  
    telnet ec2.us-east-1.amazonaws.com 443  
    wget https://ec2.us-east-1.amazonaws.com
    Observação: Substitua us-east-1 pela sua região. Se algum dos comandos anteriores falhar, vá para a seção a seguir para solucionar problemas de conectividade de rede. Verifique se as configurações da nuvem privada virtual (VPC), da sub-rede, do grupo de segurança, da lista de controle de acesso à rede (ACL da rede) e da tabela de rotas estão alinhadas com suas configurações de replicação. Uma configuração incorreta pode bloquear a comunicação com os endpoints do Amazon EC2 a partir dos servidores de replicação.

Identifique bloqueadores de conectividade de rede para um servidor de replicação que você iniciou em uma sub-rede pública

Verifique se o grupo de segurança, as ACLs da rede e a tabela de rotas permitem a comunicação com endpoints do Amazon EC2 na porta TCP 443.

Verifique se os atributos enableDnsHostnames e enableDnsSupport estão definidos como verdadeiro no nível da VPC. Execute o seguinte comando describe-vpc-attribute da AWS CLI para verificar o atributo enableDnsHostnames:

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

Observação: Substitua vpc-abcdef pelo ID da sua VPC.

Exemplo de saída:

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

Execute o seguinte comando describe-vpc-attribute para verificar o atributo enableDnsSupport:

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

Observação: Substitua vpc-abcdef pelo ID da sua VPC.

Exemplo de saída:

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

Se os atributos não estiverem definidos como verdadeiros, execute o seguinte comando modify-vpc-attribute para ativá-los:

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

Observação: substitua vcp-abcdef pelo ID da sua VPC e enable-dns-hostnames pelo atributo que não está definido como verdadeiro.

Identifique bloqueadores de conectividade de rede para um servidor de replicação que você iniciou em uma sub-rede privada

Verifique se o grupo de segurança, as ACLs de rede e a tabela de rotas permitem a comunicação com endpoints privados do Amazon EC2 na porta TCP 443. Se você configurou um gateway ou instância NAT na tabela de rotas, verifique se o tráfego de saída para o endpoint do Amazon EC2 na porta TCP 443 funciona.

Verifique se o tráfego de saída passa por um gateway privado virtual ou de trânsito. Se isso acontecer, certifique-se de que a tabela de rotas permita o tráfego para endpoints do Amazon EC2 na porta TCP 443. Além disso, verifique se o firewall bloqueia a comunicação.

Se a VPC tiver endpoints VPC de interface, certifique-se de que a comunicação ocorra entre os endpoints do Amazon EC2 na porta TCP 443 por meio de uma rede privada. Verifique se você definiu enableDnsHostnames e enableDnsSupport como verdadeiro no nível da VPC e PrivateDnsEnabled como verdadeiro nos endpoints da interface da VPC.

Execute o seguinte comando describe-vpc-attribute para verificar o atributo enableDnsHostnames:

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

Observação: Substitua vpc-abcdef pelo ID da sua VPC.

Exemplo de saída:

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

{   
 "Value": true  
}

Execute o seguinte comando describe-vpc-attribute para verificar o atributo enableDnsSupport:

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

Observação: Substitua vpc-abcdef pelo ID da sua VPC.

Exemplo de saída:

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

{   
 "Value": true  
}

Execute o seguinte comando describe-vpc-attribute para verificar o atributo PrivateDnsEnabled:

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

**Observação:**Substitua vpce-12345abcde pelo seu endpoint da VPC.

Exemplo de saída:

true

Se os atributos não estiverem definidos como verdadeiros, execute o seguinte comando modify-vpc-attribute para modificá-los:

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

Observação: substitua vcp-abcdef pelo ID da sua VPC e enable-dns-hostnames pelo atributo que não está definido como verdadeiro.

Verifique se há alterações recentes nas Configurações de replicação

Verifique as mudanças recentes nas Configurações de replicação do Application Migration Service ou do Elastic Disaster Recovery. Verifique seu histórico do CloudTrail Event para ver a chamada de API UpdateReplicationConfiguration para identificar mudanças. Use o servidor de origem para filtrar o Nome do recurso. Por exemplo, verifique se há uma tag inválida inserida no campo Tags de recursos de replicação. Para ver uma lista de caracteres permitidos, consulte Restrições de tags.

Verifique se você está usando as configurações de proxy corretas

Se seus servidores de replicação usarem um servidor proxy, certifique-se de que as configurações de proxy permitam a comunicação com endpoints regionais do EC2 na porta TCP 443.

Certifique-se de que a lista de permissões de interceptação e autenticação SSL inclua mgn.region.amazonaws.com para o Application Service Migration e drs.region.amazonaws.com para o Elastic Disaster Recovery.

Observação: Substitua region pela sua região.

Para mais informações, consulte Can a proxy server be used between the source server and the AWS Application Migration Service console? (Um servidor proxy pode ser usado entre o servidor de origem e o console do AWS Application Migration Service?) Além disso, consulte Can a proxy server be used between the source server and the Elastic Disaster Recovery Console? [Um servidor proxy pode ser usado entre o servidor de origem e o console do Elastic Disaster Recovery?]

Verifique o AWS Replication Agent

Confirme se o AWS Replication Agent works correctly [funciona corretamente] na máquina de origem. Para identificar problemas, verifique se há erros nos logs do AWS Replication Agent. Você pode encontrar os logs do AWS Replication Agent nos seguintes locais de arquivo:

  • Para logs do Linux Replication Agent, verifique /var/lib/aws-replication-agent/agent.log.0
  • Para logs do Windows Replication Agent, verifique C:\Program Files (x86)\AWS Replication Agent\agent.log.0

Verifique se há problemas de cotas de serviço do Amazon EC2

Se você exceder uma cota de serviço para o Application Migration Service ou o Elastic Disaster Recovery, os serviços não poderão criar um snapshot de recuperação inicializável. Também é possível encontrar problemas de limite ou taxa excedida da API. Verifique o histórico do CloudTrail Event para identificar problemas de cota de serviço ou de controle de utilização de largura de banda. Se necessário, solicite um aumento de cota.