Solução de problemas de verificação de dados - AWS DataSync

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Solução de problemas de verificação de dados

Por padrão, AWS DataSync verifica a integridade dos seus dados ao final de uma transferência. Use as informações a seguir para ajudá-lo a diagnosticar erros e avisos comuns de verificação, como arquivos sendo modificados ou excluídos antes de DataSync concluir a verificação dos dados.

Com problemas de verificação, muitas vezes é útil revisar seus CloudWatch registros (ou relatórios de tarefas), além do erro de execução da tarefa que você está vendo. DataSyncfornece registros estruturados em JSON para tarefas do modo Avançado, enquanto as tarefas do modo Básico têm registros não estruturados.

Há incompatibilidades entre o conteúdo de um arquivo

Quando a execução da tarefa for concluída, você verá o seguinte erro:

Transfer and verification completed. Verification detected mismatches. Files with mismatches are listed in Cloud Watch Logs

Em seus CloudWatch registros, você pode notar falhas nas verificações de conteúdos que diferem entre os locais de origem e de destino. Isso pode acontecer se os arquivos forem modificados durante a transferência.

Por exemplo, os registros a seguir mostram que file1.txt tem dstHash valores de mtimesrcHash, e diferentes:

Exemplo de registro do modo básico
[NOTICE] Verification failed <> /directory1/directory2/file1.txt [NOTICE] /directory1/directory2/file1.txt srcMeta: type=R mode=0755 uid=65534 gid=65534 size=534528 atime=1633100003/684349800 mtime=1602647222/222919600 extAttrsHash=0 [NOTICE] srcHash: 0c506c26bd1e43bd3ac346734f1a9c16c4ad100d1b43c2903772ca894fd24e44 [NOTICE] /directory1/directory2/file1.txt dstMeta: type=R mode=0755 uid=65534 gid=65534 size=511001 atime=1633100003/684349800 mtime=1633106855/859227500 extAttrsHash=0 [NOTICE] dstHash: dbd798929f11a7c0201e97f7a61191a83b4e010a449dfc79fbb8233801067c46

Em DataSync, mtime representa a última vez em que um arquivo foi gravado antes da preparação. Ao verificar as transferências, DataSync compara mtime os valores entre os locais de origem e destino. Uma falha de verificação como essa ocorre se o mtime arquivo não for o mesmo para os dois locais. As diferenças entre srcHash e dstHash indicam que o conteúdo do arquivo não coincidem nos dois locais.

Medidas a serem tomadas

Faça o seguinte:

  1. Use um conversor de época para determinar se o arquivo ou objeto de origem ou destino foi modificado mais recentemente. Isso pode ajudar a identificar qual versão é atual.

  2. Para evitar esse erro novamente, agende sua tarefa para ser executada durante uma janela de manutenção quando não houver atividade na origem e no destino.

Há uma incompatibilidade entre os metadados SMB de um arquivo

Quando a execução da tarefa for concluída, você verá o seguinte erro:

Transfer and verification completed. Verification detected mismatches. Files with mismatches are listed in Cloud Watch Logs

Ao transferir entre sistemas de armazenamento que suportam o protocolo Server Message Block (SMB), você pode ver esse erro quando os atributos SMB estendidos de um arquivo não coincidem entre origem e destino.

Por exemplo, os registros a seguir mostram que file1.txt tem um extAttrsHash valor diferente entre os locais, indicando que o conteúdo do arquivo é idêntico, mas os atributos estendidos não foram definidos no destino:

Exemplo de registro do modo básico
[NOTICE] Verification failed <> /directory1/directory2/file1.txt [NOTICE] /directory1/directory2/file1.txt srcMeta: type=R mode=0755 uid=65534 gid=65534 size=1469752 atime=1631354985/174924200 mtime=1536995541/986211400 extAttrsHash=2272191894 [NOTICE] srcHash: 38571d42b646ac8f4034b7518636b37dd0899c6fc03cdaa8369be6e81a1a2bb5 [NOTICE] /directory1/directory2/file1.txt dstMeta: type=R mode=0755 uid=65534 gid=65534 size=1469752 atime=1631354985/174924200 mtime=1536995541/986211400 extAttrsHash=3051150340 [NOTICE] dstHash: 38571d42b646ac8f4034b7518636b37dd0899c6fc03cdaa8369be6e81a1a2bb5

Você também pode ver uma mensagem de erro relacionada sobre atributos estendidos:

[ERROR] Deferred error: WriteFileExtAttr2 failed to setextattrlist(filename="/directory1/directory2/file1.txt"): Input/output error
Ação a realizar

Esse erro geralmente ocorre quando não há permissões suficientes para copiar listas de controle de acesso (ACLs) para o destino. Para resolver esse problema, consulte os seguintes guias de configuração com base no seu tipo de destino:

Os arquivos a serem transferidos não estão mais no local de origem

Quando a execução da tarefa for concluída, você verá o seguinte erro:

Transfer and verification completed. Selected files transferred except for files skipped due to errors. If no skipped files are listed in Cloud Watch Logs, please contact AWS Support for further assistance.

Em seus registros, você pode ver erros indicando que os arquivos não estão no local de origem. Isso pode acontecer se os arquivos (como file1.dll efile2.dll) forem excluídos após a preparação, mas antes de DataSync transferi-los:

Exemplo de registro do modo básico
[ERROR] Failed to open source file /file1.dll: No such file or directory [ERROR] Failed to open source file /file2.dll: No such file or directory
Ação a realizar

Para evitar essas situações, programe sua tarefa para ser executada quando não houver atividade no local de origem.

Por exemplo, você pode executar sua tarefa durante uma janela de manutenção quando os usuários e aplicativos não estão trabalhando ativamente com esse local.

Em alguns casos, talvez você não veja os registros associados a esse erro. Se isso acontecer, entre em contato com a AWS Support Central de contatos.

DataSync não é possível verificar os dados de destino

Quando a execução da tarefa for concluída, você verá o seguinte erro:

Transfer and verification completed. Verification detected mismatches. Files with mismatches are listed in Cloud Watch Logs

Em seus registros, você pode perceber que não é DataSync possível verificar determinadas pastas ou arquivos no local de destino. Esses erros podem ter a seguinte aparência:

Exemplo de registro do modo básico
[ERROR] Failed to read metadata for destination file /directory1/directory2/file1.txt: No such file or directory

Para arquivos, você pode ver falhas de verificação como estas:

Exemplo de registro do modo básico
[NOTICE] Verification failed <> /directory1/directory2/file1.txt [NOTICE] /directory1/directory2/file1.txt srcMeta: type=R mode=0755 uid=65534 gid=65534 size=61533 atime=1633099987/747713800 mtime=1536995631/894267700 extAttrsHash=232104771 [NOTICE] srcHash: 1426fe40f669a7d36cca1b5329983df31a9aeff8eb9fe3ac885f26de2f8fff6b [NOTICE] /directory1/directory2/file1.txt dstMeta: type=R mode=0755 uid=65534 gid=65534 size=0 atime=0/0 mtime=0/0 extAttrsHash=0 [NOTICE] dstHash: 0000000000000000000000000000000000000000000000000000000000000000
Ação a realizar

Esses registros indicam que os dados de destino foram excluídos após a transferência, mas antes da verificação. (Os registros parecem semelhantes quando os dados são enviados para um local de origem durante o mesmo período.)

Para evitar essas situações, programe sua tarefa para ser executada quando não houver atividade no local de destino.

Por exemplo, você pode executar sua tarefa durante uma janela de manutenção quando os usuários e aplicativos não estão trabalhando ativamente com esse local.

DataSync não consigo ler os metadados do objeto

Quando a execução da tarefa for concluída, você verá o seguinte erro:

Transfer and verification completed. Selected files transferred except for files skipped due to errors. If no skipped files are listed in Cloud Watch Logs, please contact AWS Support for further assistance.

Em seus registros, você pode notar que não DataSync consegue ler file1.png devido a uma falha na solicitação do Amazon S3HeadObject. DataSync faz HeadObject solicitações com os locais do S3 durante a preparação e verificação da tarefa.

Exemplo de registro do modo básico
[WARN] Failed to read metadata for file /file1.png: S3 Head Object Failed
Medidas a serem tomadas

Para corrigir esse problema, verifique se DataSync tem o nível certo de permissões para trabalhar com seu bucket do S3:

  • Certifique-se de que a função do IAM DataSync usada para acessar seus locais do Amazon S3 permita a s3:GetObject permissão. Para obter mais informações, consulte Permissões obrigatórias.

  • Se seu bucket do S3 usa criptografia do lado do servidor, verifique se ele DataSync tem permissão para acessar os objetos nesse bucket. Para obter mais informações, consulte Acessar buckets do S3 usando criptografia no lado do servidor.

Há uma incompatibilidade nos metadados definidos pelo sistema de um objeto

Quando a execução da tarefa no modo Avançado entre buckets do S3 terminar, você verá o seguinte erro:

Verification failed due to a difference in metadata

Você pode notar em seus registros uma incompatibilidade nos metadados definidos pelo sistema Amazon S3 de um objeto. Neste exemplo específico, o objeto de origem não tem Content-Type metadados, mas o objeto de destino tem. Isso aconteceu porque o bucket do S3 de destino aplicou automaticamente "ContentType": "application/octet-stream" os metadados ao objeto quando o DataSync transferiu para lá.

Exemplo de registro do modo aprimorado
{ "Action": "VERIFY", "Source": { "LocationId": "loc-0b3017fc4ba4a2d8d", "RelativePath": "encoding/content-null", "Metadata": { "Type": "Object", "ContentSize": 24, "LastModified": "2024-12-23T15:48:15Z", "S3": { "SystemMetadata": { "ETag": "\"68b9c323bb846841ee491481f576ed4a\"" }, "UserMetadata": {}, "Tags": {} } } }, "Destination": { "LocationId": "loc-abcdef01234567890", "RelativePath": "encoding/content-null", "Metadata": { "Type": "Object", "ContentSize": 24, "LastModified": "2024-12-23T16:00:03Z", "S3": { "SystemMetadata": { "ContentType": "application/octet-stream", "ETag": "\"68b9c323bb846841ee491481f576ed4a\"" }, "UserMetadata": { "file-mtime": "1734968895000" }, "Tags": {} } } }, "TransferType": "CONTENT_AND_METADATA", "ErrorCode": "MetadataDiffers", "ErrorDetail": "Verification failed due to a difference in metadata" }
Ação a realizar

Para evitar esse erro, atualize seus objetos de localização de origem para incluir a propriedade de Content-Type metadados.

Entendendo a duração da verificação de dados

DataSync a verificação inclui uma SHA256 soma de verificação do conteúdo do arquivo e uma comparação exata dos metadados do arquivo entre os locais. A duração da verificação depende de vários fatores, incluindo o número de arquivos ou objetos envolvidos, o tamanho dos dados nos sistemas de armazenamento e o desempenho desses sistemas.

Ação a realizar

Considerando os fatores que podem afetar o tempo de verificação, você não precisa fazer nada. No entanto, se a execução da sua tarefa parecer paralisada em um status de verificação, entre em contato com a AWS Support Central de contatos.