Cumplimiento de los requisitos de conformidad mediante el control de tiempo de replicación de S3 (S3 RTC) - Amazon Simple Storage Service

Cumplimiento de los requisitos de conformidad mediante el control de tiempo de replicación de S3 (S3 RTC)

S3 RTC (Control del tiempo de replicación de S3) le ayuda a cumplir requisitos de conformidad o requisitos empresariales para la replicación de datos y proporciona visibilidad de los tiempos de replicación de Amazon S3. S3 RTC replica la mayoría de los objetos que se cargan en Amazon S3 en unos segundos y el 99,99 % de esos objetos en un plazo de 15 minutos.

De forma predeterminada, S3 RTC incluye métricas de replicación de S3 y notificaciones de eventos de Amazon S3, que puede utilizar para supervisar la cantidad total de operaciones de la API de S3 con replicación pendiente, el tamaño total de los objetos con replicación pendiente, así como el tiempo máximo de replicación. Puede habilitar las métricas de replicación independientemente de S3 RTC. Para obtener más información, consulte Monitoreo del progreso con métricas de replicación. Además, S3 RTC proporciona eventos OperationMissedThreshold y OperationReplicatedAfterThreshold que notifican al propietario del bucket si la replicación de objetos supera o se replica después del umbral de 15 minutos.

Con S3 RTC, los eventos de Amazon S3 le pueden notificar los pocos casos en que los objetos no se replican en 15 minutos y cuando esos objetos se replican después del umbral de 15 minutos. Los eventos de Amazon S3 están disponibles a través de Amazon SQS, Amazon SNS o AWS Lambda. Para obtener más información, consulte Notificaciones de eventos de Amazon S3.

Control del tiempo de replicación de S3

Puede comenzar a utilizar S3 Replication Time Control (S3, RTC, Control del tiempo de replicación de S3) con una regla de replicación nueva o existente. Puede optar por aplicar la regla de replicación a un bucket de S3 completo o a objetos de Amazon S3 con un prefijo o etiqueta específicos. Cuando habilita S3 RTC, las métricas de replicación también se habilitan en la regla de replicación.

Si utiliza la última versión de la configuración de replicación (es decir, si especifica el Filter elemento en una regla de configuración de replicación), Amazon S3 no replicará el marcador de eliminación de forma predeterminada. Sin embargo, puede agregar la replicación de marcador de eliminación a reglas no basadas en etiquetas.

nota

Estas métricas de replicación se facturan al mismo precio que las métricas personalizadas de Amazon CloudWatch. Para obtener más información, consulte los precios de Amazon CloudWatch.

Para obtener más información acerca de cómo crear una regla con S3 RTC, consulte Habilitación del control del tiempo de replicación de S3 (S3 RTC).

Métricas de replicación con S3 RTC

Las reglas de replicación que tengan habilitado S3 Replication Time Control (S3 RTC, Control del tiempo de replicación de S3) pueden publicar métricas de replicación. Con las métricas de replicación, puede supervisar el número total de operaciones de la API de S3 que están pendientes de replicación, el tamaño total de los objetos pendientes de replicación, el tiempo máximo de replicación en la región de destino y el número total de operaciones que no se ha podido replicar. A continuación, puede monitorizar cada conjunto de datos que se replica por separado.

Las métricas de replicación están disponibles dentro de los 15 minutos siguientes a la habilitación de S3 RTC. Las métricas de replicación están disponibles a través de la consola de Amazon S3, la API de Amazon S3, los AWS SDK, la AWS Command Line Interface (AWS CLI) y Amazon CloudWatch. Para obtener más información, consulte Monitorización de métricas con Amazon CloudWatch.

Para obtener más información sobre cómo buscar métricas de replicación a través de la consola de Amazon S3, consulte Visualización de métricas de replicación mediante la consola de Amazon S3.

Uso de notificaciones de eventos de Amazon S3 para realizar un seguimiento de objetos de replicación

Puede realizar un seguimiento del tiempo de replicación de los objetos que no se replicaron en 15 minutos monitoreando las notificaciones de eventos específicas que S3 Replicacion Time Control (S3 RTC, Control del tiempo de replicación) publica. Estos eventos se publican cuando un objeto que cumplía los requisitos para la replicación mediante S3 RTC no se ha replicado en el plazo de 15 minutos y cuando ese objeto se replica después del umbral de 15 minutos.

Las métricas de replicación están disponibles dentro de los 15 minutos siguientes a la habilitación de S3 RTC. Los eventos de Amazon S3 están disponibles a través de Amazon SQS, Amazon SNS o AWS Lambda. Para obtener más información, consulte Notificaciones de eventos de Amazon S3.

Prácticas recomendadas y directrices para S3 RTC

Al replicar datos en Amazon S3 mediante S3 Replication Time Control (S3 RTC, Control del tiempo de replicación de S3), siga estas prácticas recomendadas para optimizar el rendimiento de replicación de sus cargas de trabajo.

Directrices para optimizar la tasa de solicitudes y el rendimiento de replicación de Amazon S3

Al cargar y recuperar almacenamiento de Amazon S3, sus aplicaciones pueden lograr fácilmente miles de transacciones por segundo en el rendimiento de la solicitud. Por ejemplo, una aplicación puede lograr al menos 3500 solicitudes PUT/COPY/POST/DELETE o 5500 GET/HEAD por segundo y prefijo en un bucket de S3, incluidas las solicitudes que realiza la replicación S3 en su nombre. No existe ningún límite en cuanto al número de prefijos dentro de un bucket. Puede aumentar el rendimiento de lectura o escritura ejecutando en paralelo las operaciones de lectura. Por ejemplo, si crea 10 prefijos en un bucket de S3 para ejecutar en paralelo las operaciones de lectura, podría escalar el rendimiento de lectura a 55.000 solicitudes de lectura por segundo.

Amazon S3 se escala automáticamente en respuesta a las tasas de solicitudes sostenidas por encima de estas directrices, o de tasas de solicitudes sostenidas simultáneas con solicitudes LIST. Aunque Amazon S3 se está optimizando internamente para una nueva velocidad de solicitudes, podría recibir respuestas a las solicitudes HTTP 503 de forma temporal hasta que se complete la optimización. Esto puede ocurrir cuando se producen aumentos en las tasas de solicitudes por segundo o cuando se habilita S3 RTC por primera vez. Durante estos periodos, la latencia de replicación puede aumentar. El acuerdo de nivel de servicio (SLA) de S3 RTC no se aplica a los periodos en los que se exceden las directrices de rendimiento de Amazon S3 sobre solicitudes por segundo.

El SLA de S3 RTC tampoco se aplica durante los periodos de tiempo en los que la velocidad de transferencia de datos de replicación supera el límite predeterminado de 1 Gbps. Si prevé que la tasa de transferencia de replicación superará 1 Gbps, puede contactar con el Centro de AWS Support o utilizar Service Quotas para solicitar un aumento del límite.

Cálculo de las tasas de solicitudes de replicación

Su tasa total de solicitudes, incluidas las solicitudes que realiza la replicación de Amazon S3 en su nombre, debe estar comprendida en las directrices de tasa de solicitudes de Amazon S3 para los buckets de origen y destino de la replicación. Para cada objeto replicado, la replicación de Amazon S3 realiza hasta cinco solicitudes GET/HEAD y una solicitud PUT al bucket de origen y una solicitud PUT destinada a cada bucket de destino.

Por ejemplo, si prevé replicar 100 objetos por segundo, la replicación de Amazon S3 podría realizar 100 solicitudes PUT adicionales en su nombre para un total de 200 solicitudes PUT por segundo al bucket de S3 de origen. Además, la replicación de Amazon S3 puede realizar hasta 500 solicitudes GET/HEAD (5 solicitudes GET/HEAD por cada objeto replicado).

nota

Usted incurre en costos solamente por una solicitud PUT por cada objeto replicado. Para obtener más información, consulte la información de precios en las preguntas frecuentes sobre replicación de Amazon S3.

Superación de los límites de la tasa de transferencia de datos S3 RTC

Si prevé que la tasa de transferencia de datos de control de tiempo de replicación de S3 superará el límite predeterminado de 1 Gbps, póngase en contacto con el Centro deAWS Support o utilice Service Quotas para solicitar un aumento del límite.

Tasas de solicitudes de replicación de objetos cifrados con AWS KMS

Cuando replica objetos cifrados con cifrado del lado del servidor (SSE-KMS) mediante la replicación de Amazon S3, se aplican los límites de solicitudes por segundo de AWS Key Management Service (AWS KMS). AWS KMS podría rechazar una solicitud válida si su tasa de solicitudes excede el límite del número de solicitudes por segundo. Cuando se limita una solicitud de forma controlada, AWS KMS devuelve un error ThrottlingException. El límite de la tasa de solicitudes de AWS KMS se aplica a las solicitudes que usted realiza directamente y a aquellas que la replicación de Amazon S3 efectúa en su nombre.

Por ejemplo, si prevé replicar 1000 objetos por segundo, puede restar 2000 solicitudes del límite de tasa de solicitudes de AWS KMS. La tasa de solicitudes por segundo resultante estará disponible para las cargas de trabajo de AWS KMS, excluida la replicación. Puede utilizar las métricas de solicitudes de AWS KMS en Amazon CloudWatch para monitorear la tasa total de solicitudes de AWS KMS en la Cuenta de AWS.

Habilitación del control del tiempo de replicación de S3 (S3 RTC)

S3 RTC (Control del tiempo de replicación de S3) le ayuda a cumplir requisitos de conformidad o requisitos empresariales para la replicación de datos y proporciona visibilidad de los tiempos de replicación de Amazon S3. S3 RTC replica la mayoría de los objetos que se cargan en Amazon S3 en unos segundos y el 99,99 % de esos objetos en un plazo de 15 minutos.

Con S3 RTC, puede monitorizar el número total y el tamaño de los objetos que están pendientes de replicación, así como el tiempo máximo de replicación en la región de destino. Las métricas de replicación se encuentran disponibles en la AWS Management Console y la Guía del usuario de Amazon CloudWatch. Para obtener más información, consulte Métricas de replicación de S3 en CloudWatch .

Temas

    Para obtener instrucciones paso a paso, consulte Configuración de la replicación para buckets de origen y destino que son propiedad de la misma cuenta. En este tema, se proporcionan instrucciones para habilitar S3 RTC en la configuración de replicación cuando los buckets son propiedad de la misma y de diferentes Cuentas de AWS.

    Para utilizar la AWS CLI con el propósito de replicar objetos con S3 RTC habilitado, es necesario crear buckets, habilitar el control de versiones en los buckets, crear un rol de IAM que conceda permiso a Amazon S3 para replicar objetos y agregar la configuración de replicación al bucket de origen. La configuración de replicación debe tener habilitado el control de tiempo de replicación de S3 (S3 RTC).

    Para replicar con S3 RTC habilitado (AWS CLI)
    • En el ejemplo siguiente se establece ReplicationTime y Metric, luego se agrega la configuración de replicación al bucket de origen.

      { "Rules": [ { "Status": "Enabled", "Filter": { "Prefix": "Tax" }, "DeleteMarkerReplication": { "Status": "Disabled" }, "Destination": { "Bucket": "arn:aws:s3:::destination", "Metrics": { "Status": "Enabled", "EventThreshold": { "Minutes": 15 } }, "ReplicationTime": { "Status": "Enabled", "Time": { "Minutes": 15 } } }, "Priority": 1 } ], "Role": "IAM-Role-ARN" }
      importante

      Metrics:EventThreshold:Minutes y ReplicationTime:Time:Minutes solo aceptan 15 como valor válido.

    En el siguiente ejemplo de Java se agrega la configuración de replicación con el control del tiempo de replicación de S3 (S3 RTC).

    import software.amazon.awssdk.auth.credentials.AwsBasicCredentials; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3.model.DeleteMarkerReplication; import software.amazon.awssdk.services.s3.model.Destination; import software.amazon.awssdk.services.s3.model.Metrics; import software.amazon.awssdk.services.s3.model.MetricsStatus; import software.amazon.awssdk.services.s3.model.PutBucketReplicationRequest; import software.amazon.awssdk.services.s3.model.ReplicationConfiguration; import software.amazon.awssdk.services.s3.model.ReplicationRule; import software.amazon.awssdk.services.s3.model.ReplicationRuleFilter; import software.amazon.awssdk.services.s3.model.ReplicationTime; import software.amazon.awssdk.services.s3.model.ReplicationTimeStatus; import software.amazon.awssdk.services.s3.model.ReplicationTimeValue; public class Main { public static void main(String[] args) { S3Client s3 = S3Client.builder() .region(Region.US_EAST_1) .credentialsProvider(() -> AwsBasicCredentials.create( "AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY") ) .build(); ReplicationConfiguration replicationConfig = ReplicationConfiguration .builder() .rules( ReplicationRule .builder() .status("Enabled") .priority(1) .deleteMarkerReplication( DeleteMarkerReplication .builder() .status("Disabled") .build() ) .destination( Destination .builder() .bucket("destination_bucket_arn") .replicationTime( ReplicationTime.builder().time( ReplicationTimeValue.builder().minutes(15).build() ).status( ReplicationTimeStatus.ENABLED ).build() ) .metrics( Metrics.builder().eventThreshold( ReplicationTimeValue.builder().minutes(15).build() ).status( MetricsStatus.ENABLED ).build() ) .build() ) .filter( ReplicationRuleFilter .builder() .prefix("testtest") .build() ) .build()) .role("role_arn") .build(); // Put replication configuration PutBucketReplicationRequest putBucketReplicationRequest = PutBucketReplicationRequest .builder() .bucket("source_bucket") .replicationConfiguration(replicationConfig) .build(); s3.putBucketReplication(putBucketReplicationRequest); } }

    Para obtener más información, consulte Cumplimiento de los requisitos de conformidad mediante el control de tiempo de replicación de S3 (S3 RTC).