Skip to main content
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Operaciones en bloques

Colaboradores

El sistema StorageGRID admite un máximo de 1,000 bloques para cada cuenta de inquilino de S3.

Las restricciones de nombres de bloque siguen las restricciones de región del estándar estadounidense de AWS, pero debe restringirlas a convenciones de nomenclatura de DNS para admitir solicitudes de estilo hospedado virtual de S3.

Las operaciones GET Bucket (List Objects) Y GET Bucket admiten los controles de coherencia de StorageGRID.

Puede comprobar si las actualizaciones a la hora del último acceso están habilitadas o deshabilitadas para grupos individuales.

En la siguiente tabla se describe cómo StorageGRID implementa operaciones de bloque de API DE REST de S3. Para realizar alguna de estas operaciones, se deben proporcionar las credenciales de acceso necesarias para la cuenta.

Funcionamiento Implementación

ELIMINAR bloque

Se implementa con todo el comportamiento de la API DE REST de Amazon S3.

ELIMINAR los cors de cucharón

Esta operación elimina la configuración de CORS para el cucharón.

DELETE Bucket Encryption

Esta operación elimina el cifrado predeterminado del bloque. Los objetos cifrados existentes permanecen cifrados, pero los nuevos objetos agregados al bloque no están cifrados.

ELIMINAR ciclo de vida de bloque

Esta operación elimina la configuración del ciclo de vida del bloque.

ELIMINE la política de bloques

Esta operación elimina la política asociada al bloque.

DELETE Bucket replicación

Esta operación elimina la configuración de replicación conectada al bloque.

DELETE Bucket tagging

Esta operación utiliza tagging subrecurso para quitar todas las etiquetas de un bloque.

GET Bucket (List Objects), versión 1 y versión 2

Esta operación devuelve algunos o todos (hasta 1,000) de los objetos de un bloque. La clase de almacenamiento para los objetos puede tener cualquiera de dos valores, incluso si el objeto se ingirió con la REDUCED_REDUNDANCY opción de clase de almacenamiento:

  • STANDARD, Que indica que el objeto se almacena en una agrupación de almacenamiento que consta de nodos de almacenamiento.

  • GLACIER, Que indica que el objeto se ha movido al bloque externo especificado por el grupo de almacenamiento en la nube.

Si el bloque contiene un gran número de claves eliminadas que tienen el mismo prefijo, la respuesta podría incluir algunas CommonPrefixes que no contienen claves.

GET Bucket acl

Esta operación devuelve una respuesta positiva y el ID, DisplayName y permiso del propietario del bloque, lo que indica que el propietario tiene acceso completo al bloque.

OBTENGA los cors del cucharón

Esta operación devuelve el cors configuración del bloque.

OBTENGA el cifrado de bloque

Esta operación devuelve la configuración de cifrado predeterminada del bloque.

OBTENGA el ciclo de vida de la cuchara

Esta operación devuelve la configuración del ciclo de vida del bloque.

OBTENER ubicación de bloque

Esta operación devuelve la región que se estableció mediante el LocationConstraint Elemento de la solicitud PUT Bucket. Si la región del cucharón es us-east-1, se devuelve una cadena vacía para la región.

OBTENGA la notificación DE BUCKET

Esta operación devuelve la configuración de notificación asociada al bloque.

OBTENGA las versiones DE objeto Bucket

Con el acceso DE LECTURA en un bloque, esta operación con el versions subrecurso enumera los metadatos de todas las versiones de objetos del bloque.

OBTENGA la política de bloques

Esta operación devuelve la política asociada al bloque.

OBTENGA la replicación de Bucket

Esta operación devuelve la configuración de replicación asociada al bloque.

GET Bucket tagging

Esta operación utiliza tagging subrecurso para devolver todas las etiquetas de un bloque.

OBTENGA el control de versiones de Bucket

Esta implementación usa la versioning subrecurso para devolver el estado de control de versiones de un bloque. El estado de control de versiones devuelto indica si el cucharón está "'no versionado" o si el cucharón tiene la versión "'habilitado'" o "acabado".

OBTENER configuración de bloqueo de objeto

Esta operación determina si el bloqueo de objetos S3 está habilitado para un bloque. "Uso del bloqueo de objetos de S3"

Cubo DE CABEZA

Esta operación determina si existe un bloque y tiene permiso para acceder a él.

COLOQUE el cucharón

Esta operación crea un nuevo bloque. Al crear la cuchara, se convierte en el propietario de la cuchara.

  • Los nombres de los bloques deben cumplir con las siguientes reglas:

    • Debe ser único en cada sistema StorageGRID (no solo dentro de la cuenta de inquilino).

    • Debe ser compatible con DNS.

    • Debe incluir al menos 3 y no más de 63 caracteres.

    • Puede ser una serie de una o más etiquetas, con etiquetas adyacentes separadas por un punto. Cada etiqueta debe comenzar y terminar con una letra minúscula o un número y solo puede utilizar letras minúsculas, números y guiones.

    • No debe ser una dirección IP con formato de texto.

    • No debe utilizar periodos en solicitudes de estilo alojadas virtuales. Los períodos provocarán problemas en la verificación del certificado comodín del servidor.

  • De forma predeterminada, los bloques se crean en la us-east-1 región; sin embargo, puede utilizar la LocationConstraint elemento de solicitud en el cuerpo de solicitud para especificar una región diferente. Cuando utilice la LocationConstraint Elemento, debe especificar el nombre exacto de una región que se ha definido mediante el Administrador de grid o la API de gestión de grid. Póngase en contacto con el administrador del sistema si no conoce el nombre de región que debe utilizar. Nota: Se producirá un error si la solicitud PUT Bucket utiliza una región que no se ha definido en StorageGRID.

  • Puede incluir el x-amz-bucket-object-lock-enabled Solicite el encabezado para crear un bucket con el bloqueo de objetos S3 habilitado.

    Debe habilitar S3 Object Lock cuando crea el bloque. No se puede añadir o deshabilitar el bloqueo de objetos de S3 después de crear un bloque. S3 Object Lock requiere el control de versiones de bloques, que se habilita automáticamente al crear el bloque.

COLOQUE los cors del cucharón

Esta operación establece la configuración de CORS para un cucharón para que éste pueda atender solicitudes de origen cruzado. El uso compartido de recursos de origen cruzado (CORS) es un mecanismo de seguridad que permite a las aplicaciones web de cliente de un dominio acceder a los recursos de un dominio diferente. Por ejemplo, supongamos que se utiliza un bloque de S3 llamado images para almacenar gráficos. Mediante el ajuste de la configuración de CORS para images bloque, puede permitir que las imágenes de ese bloque se muestren en el sitio web http://www.example.com.

PUT Bucket Encryption

Esta operación establece el estado de cifrado predeterminado de un bloque existente. Cuando se habilita el cifrado a nivel de bloque, se cifran todos los objetos nuevos que se añadan al bloque.StorageGRID admite el cifrado en el lado del servidor con claves gestionadas por StorageGRID. Al especificar la regla de configuración de cifrado del servidor, defina la SSEAlgorithm parámetro a. AES256, y no utilice KMSMasterKeyID parámetro.

La configuración de cifrado predeterminada de bloque se omite si la solicitud de carga de objeto ya especifica cifrado (es decir, si la solicitud incluye la x-amz-server-side-encryption-* encabezado de solicitud).

CICLO de vida DE la cuchara

Esta operación crea una nueva configuración del ciclo de vida para el bloque o reemplaza una configuración de ciclo de vida existente. StorageGRID admite hasta 1,000 reglas de ciclo de vida en una configuración del ciclo de vida. Cada regla puede incluir los siguientes elementos XML:

  • Caducidad (días, fecha)

  • NoncurrentVersionExpiración (NoncurrentDays)

  • Filtro (prefijo, etiqueta)

  • Estado

  • ID

StorageGRID no admite estas acciones:

  • AbortEncompleteMultipartUpload

  • ExpiredObjectDeleteMarker

  • Transición

Para comprender cómo la acción de caducidad en el ciclo de vida de un bloque interactúa con las instrucciones de colocación de ILM, consulte ""Cómo funciona ILM durante la vida de un objeto" en las instrucciones para gestionar objetos con gestión del ciclo de vida de la información.

Nota: La configuración del ciclo de vida de la cuchara se puede utilizar con cucharones que tengan habilitado el bloqueo de objetos S3, pero la configuración del ciclo de vida de la cuchara no es compatible con cucharones legados compatibles.

NOTIFICACIÓN DE PUT Bucket

Esta operación configura notificaciones para el bloque mediante el XML de configuración de notificación incluido en el cuerpo de la solicitud. Debe tener en cuenta los siguientes detalles de implementación:

  • StorageGRID admite temas como destinos el Servicio de notificación simple (SNS). No se admiten extremos de simple Queue Service (SQS) o Amazon Lambda.

  • El destino de las notificaciones debe especificarse como URN de un extremo de StorageGRID. Se pueden crear extremos con el administrador de inquilinos o la API de gestión de inquilinos.

    El extremo debe existir para que la configuración de la notificación se realice correctamente. Si el extremo no existe, un 400 Bad Request se devuelve un error con el código InvalidArgument.

  • No es posible configurar una notificación para los siguientes tipos de eventos. Estos tipos de evento no son compatibles.

    • s3:ReducedRedundancyLostObject

    • s3:ObjectRestore:Completed

  • Las notificaciones de eventos enviadas desde StorageGRID utilizan el formato JSON estándar excepto que no incluyen algunas claves y utilizan valores específicos para otros, como se muestra en el siguiente listado:

  • EventSource

    sgws:s3

  • * AwsRegion*

    no incluido

  • x-amz-id-2

    no incluido

  • arn

    urn:sgws:s3:::bucket_name

POLÍTICA DE PUT Bucket

Esta operación establece la política asociada al bloque.

PUT Bucket replication

Esta operación configura la replicación de CloudMirror de StorageGRID para el bloque con el XML de configuración de replicación que se proporciona en el cuerpo de la solicitud. Para la replicación de CloudMirror, debe tener en cuenta los siguientes detalles de la implementación:

  • StorageGRID solo admite V1 de la configuración de replicación. Esto significa que StorageGRID no admite el uso de Filter Elemento para reglas y sigue las convenciones V1 para eliminar versiones de objetos. Consulte la documentación de Amazon sobre la configuración de replicación para obtener más información.

  • La replicación de bloques se puede configurar en bloques con versiones o sin versiones.

  • Puede especificar un segmento de destino diferente en cada regla del XML de configuración de replicación. Un bloque de origen puede replicar en más de un bloque de destino.

  • Los bloques de destino se deben especificar como URN de extremos StorageGRID tal y como se especifica en el administrador de inquilinos o la API de gestión de inquilinos.

    El extremo debe existir para que la configuración de replicación se complete correctamente. Si el extremo no existe, la solicitud falla como un 400 Bad Request. El mensaje de error indica: Unable to save the replication policy. The specified endpoint URN does not exist: URN.

  • No es necesario especificar un Role En el XML de configuración. StorageGRID no utiliza este valor y se ignorará si se envía.

  • Si omite la clase de almacenamiento del XML de configuración, StorageGRID utiliza STANDARD clase de almacenamiento de forma predeterminada.

  • Si elimina un objeto del bloque de origen o elimina el propio bloque de origen, el comportamiento de replicación entre regiones es el siguiente:

    • Si elimina el objeto o bloque antes de que se haya replicado, el objeto o bloque no se replicará y no se le notificará.

    • Si elimina el objeto o bloque después de haber sido replicado, StorageGRID sigue el comportamiento estándar de eliminación de Amazon S3 para V1 de replicación entre regiones.

PUT Bucket etiquetaje

Esta operación utiliza tagging subrecurso para agregar o actualizar un conjunto de etiquetas para un bloque. Al añadir etiquetas de bloque, tenga en cuenta las siguientes limitaciones:

  • Tanto StorageGRID como Amazon S3 admiten hasta 50 etiquetas por cada bloque.

  • Las etiquetas asociadas con un bloque deben tener claves de etiqueta únicas. Una clave de etiqueta puede tener hasta 128 caracteres Unicode de longitud.

  • Los valores de etiqueta pueden tener una longitud máxima de 256 caracteres Unicode.

  • La clave y los valores distinguen entre mayúsculas y minúsculas.

PONER creación de versiones de bloques

Esta implementación usa la versioning subrecurso para establecer el estado de control de versiones de un bloque existente. Puede establecer el estado de control de versiones con uno de los siguientes valores:

  • Enabled: Activa el control de versiones de los objetos del bloque. Todos los objetos que se agregan al bloque reciben un ID de versión único.

  • Suspendido: Desactiva el control de versiones de los objetos del bloque. Todos los objetos agregados al bloque reciben el ID de versión null.

Crear una configuración del ciclo de vida de S3

Puede crear una configuración del ciclo de vida de S3 para controlar cuándo se eliminan objetos específicos del sistema StorageGRID.

El ejemplo sencillo de esta sección muestra cómo puede controlar una configuración del ciclo de vida de S3 cuando se eliminan ciertos objetos (caducados) de bloques S3 específicos. El ejemplo de esta sección es solo con fines ilustrativos. Para obtener detalles completos sobre la creación de configuraciones del ciclo de vida de S3, consulte la sección sobre la gestión del ciclo de vida de objetos en la Amazon simple Storage Service Developer Guide. Tenga en cuenta que StorageGRID solo admite acciones de caducidad, no admite acciones de transición.

Qué es una configuración del ciclo de vida

Una configuración de ciclo de vida es un conjunto de reglas que se aplican a los objetos en bloques de S3 específicos. Cada regla especifica qué objetos se ven afectados y cuándo caducarán dichos objetos (en una fecha específica o después de un número determinado de días).

StorageGRID admite hasta 1,000 reglas de ciclo de vida en una configuración del ciclo de vida. Cada regla puede incluir los siguientes elementos XML:

  • Caducidad: Elimine un objeto cuando se alcance una fecha especificada o cuando se alcance un número especificado de días, empezando desde el momento en que se ingirió el objeto.

  • NoncurrentVersionExpiration: Elimine un objeto cuando se alcance un número especificado de días, empezando desde el momento en que el objeto se volvió no actual.

  • Filtro (prefijo, etiqueta)

  • Estado

  • ID

Si aplica una configuración del ciclo de vida a un bloque, la configuración del ciclo de vida del bloque siempre anula la configuración de ILM de StorageGRID. StorageGRID utiliza la configuración de caducidad del bloque, no de ILM, para determinar si se deben eliminar o conservar objetos específicos.

Como resultado, es posible que se elimine un objeto de la cuadrícula aunque las instrucciones de colocación de una regla de ILM aún se apliquen al objeto. O bien, es posible que un objeto se conserve en la cuadrícula incluso después de que hayan transcurrido las instrucciones de colocación de ILM para el objeto. Para obtener información detallada, consulte «"Cómo funciona ILM durante la vida de un objeto" en las instrucciones para gestionar objetos con gestión del ciclo de vida de la información.

Nota La configuración del ciclo de vida de bloques se puede usar con bloques que tienen habilitado el bloqueo de objetos S3, pero la configuración del ciclo de vida de bloques no se admite para bloques compatibles con versiones anteriores.

StorageGRID admite el uso de las siguientes operaciones de bloques para gestionar las configuraciones del ciclo de vida:

  • ELIMINAR ciclo de vida de bloque

  • OBTENGA el ciclo de vida de la cuchara

  • CICLO de vida DE la cuchara

Creando la configuración del ciclo de vida

Como primer paso en la creación de una configuración de ciclo de vida, se crea un archivo JSON que incluye una o varias reglas. Por ejemplo, este archivo JSON incluye tres reglas, de la siguiente manera:

  1. La regla 1 sólo se aplica a los objetos que coinciden con el prefijo category1/ y que tienen un key2 valor de tag2. La Expiration Parámetro especifica que los objetos que coinciden con el filtro caducarán a medianoche el 22 de agosto de 2020.

  2. La regla 2 sólo se aplica a los objetos que coinciden con el prefijo category2/. La Expiration el parámetro especifica que los objetos que coinciden con el filtro caducarán 100 días después de que se ingieran.

    Importante Las reglas que especifican un número de días son relativas al momento en que se ingirió el objeto. Si la fecha actual supera la fecha de ingesta más el número de días, es posible que algunos objetos se eliminen del bloque en cuanto se aplique la configuración del ciclo de vida.
  3. La regla 3 sólo se aplica a los objetos que coinciden con el prefijo category3/. La Expiration parámetro especifica que cualquier versión no actual de objetos coincidentes caducará 50 días después de que se conviertan en no actualizados.

{
	"Rules": [
        {
		    "ID": "rule1",
			"Filter": {
                "And": {
                    "Prefix": "category1/",
                    "Tags": [
                        {
                            "Key": "key2",
							"Value": "tag2"
                        }
                    ]
                }
            },
			"Expiration": {
                "Date": "2020-08-22T00:00:00Z"
            },
            "Status": "Enabled"
        },
		{
            "ID": "rule2",
			"Filter": {
                "Prefix": "category2/"
            },
			"Expiration": {
                "Days": 100
            },
            "Status": "Enabled"
        },
		{
            "ID": "rule3",
			"Filter": {
                "Prefix": "category3/"
            },
			"NoncurrentVersionExpiration": {
                "NoncurrentDays": 50
            },
            "Status": "Enabled"
        }
    ]
}

Aplicar una configuración de ciclo de vida a un bloque

Después de crear el archivo de configuración del ciclo de vida, se aplica a un bloque emitiendo una solicitud PUT Bucket Lifecycle.

Esta solicitud aplica la configuración del ciclo de vida del archivo de ejemplo a los objetos de un bloque denominado testbucket:cucharón

aws s3api --endpoint-url <StorageGRID endpoint> put-bucket-lifecycle-configuration
--bucket testbucket --lifecycle-configuration file://bktjson.json

Para validar que se ha aplicado correctamente una configuración del ciclo de vida al bloque, emita una solicitud GET Bucket Lifecycle. Por ejemplo:

aws s3api --endpoint-url <StorageGRID endpoint> get-bucket-lifecycle-configuration
 --bucket testbucket

Una respuesta correcta muestra la configuración del ciclo de vida que acaba de aplicar.

Validar que la caducidad del ciclo de vida de los bloques se aplica a un objeto

Puede determinar si una regla de caducidad en la configuración del ciclo de vida se aplica a un objeto específico al emitir una solicitud PUT Object, HEAD Object o GET Object. Si se aplica una regla, la respuesta incluye una Expiration parámetro que indica cuándo caduca el objeto y qué regla de caducidad se ha coincidido.

Nota Dado que el ciclo de vida de los bloques anula la gestión del ciclo de vida de expiry-date se muestra la fecha real en la que se eliminará el objeto. Para obtener información detallada, consulte «"Cómo se determina la retención de objetos" en las instrucciones para realizar la administración de StorageGRID.

Por ejemplo, esta solicitud PUT Object fue emitida el 22 de junio de 2020 y coloca un objeto en el testbucket cucharón.

aws s3api --endpoint-url <StorageGRID endpoint> put-object
--bucket testbucket --key obj2test2 --body bktjson.json

La respuesta correcta indica que el objeto caducará en 100 días (01 de octubre de 2020) y que coincide con la regla 2 de la configuración del ciclo de vida.

{
      *"Expiration": "expiry-date=\"Thu, 01 Oct 2020 09:07:49 GMT\", rule-id=\"rule2\"",
      "ETag": "\"9762f8a803bc34f5340579d4446076f7\""
}

Por ejemplo, esta solicitud DE OBJETO HEAD se utilizó para obtener metadatos para el mismo objeto en el bloque testbucket.

aws s3api --endpoint-url <StorageGRID endpoint> head-object
--bucket testbucket --key obj2test2

La respuesta correcta incluye los metadatos del objeto e indica que el objeto caducará en 100 días y que coincide con la regla 2.

{
      "AcceptRanges": "bytes",
      *"Expiration": "expiry-date=\"Thu, 01 Oct 2020 09:07:48 GMT\", rule-id=\"rule2\"",
      "LastModified": "2020-06-23T09:07:48+00:00",
      "ContentLength": 921,
      "ETag": "\"9762f8a803bc34f5340579d4446076f7\""
      "ContentType": "binary/octet-stream",
      "Metadata": {}
}
Información relacionada

"Operaciones en bloques"