Por que minha tarefa do AWS DMS falhou sem erros?

5 minuto de leitura
0

Eu uso o AWS Database Migration Service (AWS DMS) para migrar dados de um mecanismo de origem para um mecanismo de destino. Contudo, a tarefa falha sem erros.

Breve descrição

Quando uma tarefa do AWS DMS falha, uma entrada é criada no log de tarefas. O log de tarefas fornece informações sobre a causa da falha com mensagens de erro (]E:) ou mensagens de aviso (]W:). Em alguns casos, uma tarefa do AWS DMS pode falhar sem erros ou avisos, o que dificulta a solução de problemas.

Na maioria das vezes, a tarefa do AWS DMS falha por um dos seguintes motivos:

Contenção de recursos na instância de replicação

CPU e memória são os dois recursos mais importantes necessários para uma tarefa de migração:

  • A CPU deve primeiro converter o tipo de dados de origem para o tipo de dados do AWS DMS e, em seguida, convertê-lo no tipo de dados de destino.
  • A memória é necessária porque o AWS DMS cria fluxos para a origem e destino. O AWS DMS armazena informações nos buffers de fluxo na memória da instância de replicação.

O sistema de monitoramento interno também usa a CPU e a memória para monitorar a instância de replicação. Qualquer contenção na CPU ou na memória pode fazer com que uma tarefa de migração falhe silenciosamente.

Status de armazenamento cheio na instância de replicação

Se o armazenamento da instância de replicação estiver cheio, uma tarefa de migração poderá falhar silenciosamente sem erros.

Ocorreu um erro interno

As tarefas do AWS DMS também podem falhar silenciosamente se houver erros internos. Os erros internos não são visíveis nos logs de tarefas que são registrados por padrão.

Resolução

Observação: se a tarefa usa um sistema de gerenciamento de banco de dados não relacional, talvez você queira executá-la sem configurações paralelas. Para mais informações, consulte Target metadata task settings.

Analise seus logs do DMS, de origem e de destino para obter mais informações. Verifique a hora da última entrada nos logs de tarefas depois que a tarefa falhou silenciosamente. Depois, analise a utilização da CPU, da memória e do disco na instância de replicação durante o mesmo intervalo de tempo em que a falha foi registrada em log.

Se observar uma combinação de FreeableMemory baixo e SwapUsage elevado, pode estar ocorrendo contenção de memória na instância de replicação. Para mais informações, consulte AWS Data Migration Service metrics.

Para visualizar as métricas do CloudWatch, conclua as seguintes etapas:

  1. Abra o console do AWS DMS.
  2. No painel de navegação, selecione Tarefas de migração de banco de dados.
  3. Selecione o nome da tarefa que falhou.
  4. Na seção Detalhes da visão geral, anote o nome da instância de replicação.
  5. No painel de navegação, selecione Instâncias de replicação.
  6. Selecione o nome da instância de replicação que você anotou.
  7. Na seção Métricas da tarefa de migração, analise as métricas CPUUtilization, SwapUsage, FreeableMemory e FreeStorageSpace.
  8. Para ver mais detalhes, passe o mouse sobre a métrica e selecione o ícone de mais opções.
  9. Selecione Exibir nas métricas. Isso abre o console do CloudWatch.

No console do CloudWatch, veja a utilização da métrica no momento em que a tarefa falhou.

Se observar uma contenção constante da CPU ou memória, reduza o número de tarefas em execução na instância de replicação. Para reduzir o número de tarefas, é possível iniciar novas instâncias de replicação e distribuir as tarefas entre várias instâncias de replicação. Ou aumente a escala verticalmente da instância de replicação para um tipo de instância maior.

Observação: as instâncias T2 fornecem um desempenho básico após o esgotamento dos créditos da CPU. Por exemplo, uma instância T2.micro fornece um desempenho básico de 10%. Leve em consideração o tipo de instância ao verificar a utilização da CPU. Para mais informações, consulte Principais conceitos e definições para instâncias de desempenho expansível.

Depois de identificar a origem da falha silenciosa, reinicie a tarefa. Se não houver contenção na CPU, na memória ou no espaço em disco, a tarefa provavelmente falhou devido a um erro interno. Para solucionar erros internos, ative a depuração detalhada. Analise os logs que ocorreram antes do erro e ative a depuração detalhada dos logs relacionados. Por exemplo, se os últimos logs forem de TARGET_APPLY, ative a depuração detalhada para SORTER, TARGET_APPLY. Depois de ativar a depuração detalhada, reinicie a tarefa e revise os logs de tarefas para identificar o motivo da falha da tarefa.

Observação: o problema pode ser devido a problemas com a validação e não com os seus dados. Para testar se o componente de validação é a causa do problema, execute uma tarefa somente de validação para averiguar se o problema ocorre.

Informações relacionadas

Troubleshooting migration tasks in AWS Database Migration Service

Como faço para obter suporte técnico da AWS?

Why is my AWS DMS replication DB instance in the storage-full status?

AWS OFICIAL
AWS OFICIALAtualizada há 5 meses