Como lidar com erros
O Migrate to Containers pode detectar dois tipos de erros durante uma migração: repetível e terminal. Quando o Migrate to Containers detecta um erro, a ação realizada depende do tipo de erro detectado:
Erro repetível: o Migrate to Containers tenta a operação novamente. Quando detectado, o status da operação é definido como Tentando novamente.
Erro de terminal: o Migrate to Containers interrompe a operação porque esse tipo de erro normalmente requer intervenção manual para ser resolvido. Quando detectado, o status da operação é definido como Erro.
Como visualizar o status de uma operação
Use a ferramenta migctl
ou o Console do Google Cloud
para ver o progresso da migração. No Console do Google Cloud, use a coluna Status
da migração para verificar o status atual da migração.
Também é possível usar o seguinte comando migctl
:
migctl migration status my-migration
A saída está no formato:
NAME CURRENT-OPERATION PROGRESS STEP STATUS AGE my-migration GenerateArtifacts [1/1] ExtractImage Retrying 12m2s
Com migctl
, também é possível receber uma saída de status detalhado. Na parte inferior da saída
detalhada, há uma lista de eventos e outras informações de erro. Por exemplo,
o comando a seguir especifica a opção -v
para ver o status detalhado da migração:
migctl migration status my-migration -v
A saída contém os eventos e uma mensagem de erro para ajudar você a diagnosticar o erro:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning GetInstanceFailed 2m39s (x91 over 5h32m) SourceSnapshot sourcesnapshot-58a2405a-603ba2 Failed quering VM my-vm, with error: googleapi: got HTTP response code 404 with body:
Neste exemplo, a mensagem indica que a VM chamada my-vm
não foi encontrada.
Erros que permitem uma nova tentativa
Um erro que permite uma nova tentativa é um tipo de erro que pode ser resolvido por outra tentativa da operação ou por intervenção do usuário. Se a operação for bem-sucedida na nova tentativa, o processamento continuará.
Por exemplo, antes de criar uma migração para uma VM do Compute Engine, você precisa primeiro encerrar a VM. Se a VM não for encerrada e você tentar executar a migração, o Migrate to Containers detectará o erro e tentará fazer a migração novamente. O Migrate to Containers continua a repetir a operação até que você encerre a VM ou cancele a migração.
Erros do terminal
Um erro do terminal é um erro que não pode ser resolvido repetindo a operação. Geralmente, um erro do terminal só pode ser resolvido por interação do usuário.
A maneira de lidar com um erro do terminal depende do erro e da etapa do processo em que ele ocorreu:
Para um erro do terminal, ao criar uma migração, você precisa excluir a migração, corrigir o erro e recriar a migração.
Para um erro do terminal, ao gerar artefatos de migração na execução da migração, é possível resolver o erro manualmente e repetir a operação.
Por exemplo, você tenta migrar um aplicativo IIS do Windows sem que o IIS esteja instalado na VM. Esse cenário causa um erro do terminal porque o Migrate to Containers exige que os aplicativos IIS do Windows tenham o Microsoft IIS 7 ou mais recente instalado. Você precisa resolver esse problema na VM antes de prosseguir com a migração.
Além de exibir um status de Erro, esses erros podem exibir informações extras específicas do erro, que podem ser usadas para diagnosticá-lo.