Solución de problemas de verificación de datos - AWS DataSync

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Solución de problemas de verificación de datos

De forma predeterminada, AWS DataSync verifica la integridad de los datos al final de una transferencia. Usa la siguiente información para ayudarte a diagnosticar los errores y advertencias de verificación más comunes, como la modificación o eliminación de archivos antes de DataSync terminar de verificar los datos.

En el caso de los problemas de verificación, muchas veces resulta útil revisar CloudWatch los registros (o informes de tareas) además del error de ejecución de la tarea que se esté detectando. DataSyncproporciona registros estructurados en JSON para las tareas del modo mejorado, mientras que las tareas del modo básico tienen registros no estructurados.

Hay discrepancias entre el contenido de un archivo

Cuando finalice la ejecución de la tarea, aparecerá el siguiente error:

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

En tus CloudWatch registros, es posible que veas errores en las verificaciones de los contenidos que difieren entre las ubicaciones de origen y destino. Esto puede ocurrir si los archivos se modifican durante la transferencia.

Por ejemplo, los siguientes registros muestran que file1.txt tiene dstHash valores y diferentesmtime: srcHash

Ejemplo de registro de 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

En DataSync, mtime representa la última vez que se escribió un archivo antes de su preparación. Al verificar las transferencias, DataSync compara mtime los valores entre las ubicaciones de origen y destino. Se produce un error de verificación como este si el archivo mtime de un archivo no es el mismo en ambas ubicaciones. Las diferencias entre el contenido del archivo srcHash y lo dstHash indican no coincide en ambas ubicaciones.

Acciones que ejecutar

Haga lo siguiente:

  1. Utilice un conversor de época y hora para determinar si el archivo u objeto de origen o destino se modificó más recientemente. Esto puede ayudar a identificar qué versión es la actual.

  2. Para evitar que vuelva a producirse este error, programa la tarea para que se ejecute durante un período de mantenimiento, cuando no haya actividad en el origen ni en el destino.

Hay una discrepancia entre los metadatos SMB de un archivo

Cuando finalice la ejecución de la tarea, aparecerá el siguiente error:

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

Al realizar transferencias entre sistemas de almacenamiento que admiten el protocolo del bloque de mensajes del servidor (SMB), es posible que aparezca este error cuando los atributos SMB extendidos de un archivo no coinciden entre el origen y el destino.

Por ejemplo, los siguientes registros muestran que file1.txt tiene un extAttrsHash valor diferente entre las ubicaciones, lo que indica que el contenido del archivo es idéntico, pero los atributos extendidos no se establecieron en el destino:

Ejemplo de registro en 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

Es posible que también veas un mensaje de error relacionado con los atributos extendidos:

[ERROR] Deferred error: WriteFileExtAttr2 failed to setextattrlist(filename="/directory1/directory2/file1.txt"): Input/output error
Acción que debe ejecutarse

Este error suele producirse cuando no hay permisos suficientes para copiar las listas de control de acceso (ACLs) al destino. Para resolver este problema, consulte las siguientes guías de configuración según el tipo de destino:

Los archivos que se van a transferir ya no se encuentran en la ubicación de origen

Cuando finalice la ejecución de la tarea, aparecerá el siguiente error:

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.

En los registros, es posible que veas errores que indican que los archivos no están en la ubicación de origen. Esto puede ocurrir si los archivos (como file1.dll yfile2.dll) se eliminan después de prepararlos, pero antes de DataSync transferirlos:

Ejemplo de registro del 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
Acción que debe ejecutarse

Para evitar estas situaciones, programa la tarea para que se ejecute cuando no haya actividad en la ubicación de origen.

Por ejemplo, puede ejecutar la tarea durante un período de mantenimiento cuando los usuarios y las aplicaciones no estén trabajando activamente en esa ubicación.

En algunos casos, es posible que no veas los registros asociados a este error. Si eso ocurre, póngase en contacto con AWS Support el Centro.

DataSync no puede verificar los datos de destino

Cuando finalice la ejecución de la tarea, aparecerá el siguiente error:

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

En tus registros, es posible que notes que no DataSync se pueden verificar determinadas carpetas o archivos de la ubicación de destino. Estos errores pueden tener este aspecto:

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

En el caso de los archivos, es posible que veas errores de verificación como los siguientes:

Ejemplo de registro en 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
Acción que debe ejecutarse

Estos registros indican que los datos de destino se eliminaron después de la transferencia, pero antes de la verificación. (Los registros tienen un aspecto similar cuando los datos se cargan en una ubicación de origen durante el mismo período de tiempo).

Para evitar estas situaciones, programa la tarea para que se ejecute cuando no haya actividad en la ubicación de destino.

Por ejemplo, puede ejecutar la tarea durante un período de mantenimiento cuando los usuarios y las aplicaciones no estén trabajando activamente en esa ubicación.

DataSync no puede leer los metadatos del objeto

Cuando finalice la ejecución de la tarea, aparecerá el siguiente error:

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.

En sus registros, es posible que observe que no DataSync se puede leer file1.png debido a una HeadObject solicitud de Amazon S3 fallida. DataSync realiza HeadObject solicitudes a las ubicaciones de S3 durante la preparación y verificación de las tareas.

Ejemplo de registro en modo básico
[WARN] Failed to read metadata for file /file1.png: S3 Head Object Failed
Acciones que ejecutar

Para solucionar este problema, compruebe si DataSync tiene el nivel de permisos adecuado para trabajar con su bucket de S3:

  • Asegúrese de que el rol de IAM que DataSync utiliza para acceder a sus ubicaciones de Amazon S3 permita el s3:GetObject permiso. Para obtener más información, consulte Permisos necesarios.

  • Si su bucket de S3 utiliza cifrado del lado del servidor, asegúrese de que DataSync tiene permiso para acceder a los objetos de ese bucket. Para obtener más información, consulte Acceso a buckets de S3 mediante el cifrado del servidor.

Hay una discrepancia en los metadatos de un objeto definidos por el sistema

Cuando finalice la ejecución de la tarea en modo mejorado entre los buckets de S3, aparecerá el siguiente error:

Verification failed due to a difference in metadata

Es posible que observe en sus registros una discrepancia en los metadatos definidos por el sistema Amazon S3 de un objeto. En este ejemplo concreto, el objeto de origen no tiene Content-Type metadatos, pero el objeto de destino sí. Esto se debía a que el depósito S3 de destino aplicaba automáticamente "ContentType": "application/octet-stream" los metadatos al objeto cuando lo DataSync transfería allí.

Ejemplo de registro de modo mejorado
{ "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" }
Acción que debe ejecutarse

Para evitar este error, actualice los objetos de ubicación de origen para incluir la propiedad de Content-Type metadatos.

Comprenda la duración de la verificación de datos

DataSync La verificación incluye una SHA256 suma de verificación del contenido de los archivos y una comparación exacta de los metadatos de los archivos entre las distintas ubicaciones. La duración de la verificación depende de varios factores, como la cantidad de archivos u objetos involucrados, el tamaño de los datos de los sistemas de almacenamiento y el rendimiento de estos sistemas.

Acción que debe ejecutarse

Dados los factores que pueden afectar al tiempo de verificación, no deberías tener que hacer nada. Sin embargo, si la ejecución de su tarea parece estar atascada con un estado de verificación, póngase en contacto con el AWS Support Centro.