Creación de un cubo de Object Storage
Cree un bloque de Object Storage para almacenar objetos.
Para obtener información sobre los permisos necesarios para crear un cubo en Object Storage, consulte Política de IAM necesaria.
El cubo se creará inmediatamente y podrá iniciar la carga de objetos en él. Los objetos agregados a los cubos de archivos se almacenan inmediatamente y se deben restaurar para poder descargarse.
Creación de un cubo de nivel de almacenamiento Estándar por defecto
Por defecto, un cubo se crea en el nivel Estándar de Object Storage. No es necesario definir explícitamente
--storage-tier
. Estándar es el nivel de almacenamiento por defecto principal utilizado para los datos del servicio de Almacenamiento de objetos. Utilice el nivel Estándar para almacenar datos que necesiten un acceso rápido e inmediato. Sin embargo, los cubos Estándar proporcionan una opción para asignar y cargar objetos en diferentes niveles de almacenamiento (Acceso poco frecuente y Archivo), mientras permanecen en el cubo Estándar.Utilice el comando oci os bucket create y los parámetros necesarios para crear un cubo:
oci os bucket create --compartment-id compartment_ocid --name bucket_name [OPTIONS]
Por ejemplo:
oci os bucket create --compartment-id ocid.compartment.oc1..exampleuniqueID --name MyStandardBucket { "data": { "approximate-count": null, "approximate-size": null, "auto-tiering": null, "compartment-id": "ocid.compartment.oc1..exampleuniqueID", "created-by": "ocid1.user.oc1..exampleuniqueID", "defined-tags": {}, "etag": "7b7c3dc1-713f-4996-b176-a938345cae8e", "freeform-tags": {}, "id": "ocid1.bucket.oc1..exampleuniqueID", "is-read-only": false, "kms-key-id": null, "metadata": {}, "name": "MyStandardBucket", "namespace": "MyNamespace", "object-events-enabled": false, "object-level-audit-mode": "Disabled", "object-lifecycle-policy-etag": null, "public-access-type": "NoPublicAccess", "replication-enabled": false, "storage-tier": "Standard", "time-created": "2020-06-12T19:04:05.879000+00:00", "versioning": "Disabled" }, "etag": "7b7c3dc1-713f-4996-b176-a938345cae8e" }
También puede activar el nivel automático en un cubo Estándar en el momento de la creación especificando el parámetro opcional--auto-tiering InfrequentAccess
. Consulte Organización automática en niveles para obtener más información. Por ejemplo:oci os bucket create --compartment-id ocid.compartment.oc1..exampleuniqueID --name MyStandardBucket --auto-tiering Infrequent Access { "data": { "approximate-count": null, "approximate-size": null, "auto-tiering": "InfrequentAccess", "compartment-id": "ocid.compartment.oc1..exampleuniqueID", "created-by": "ocid1.user.oc1..exampleuniqueID", "defined-tags": {}, "etag": "7b7c3dc1-713f-4996-b176-a938345cae8e", "freeform-tags": {}, "id": "ocid1.bucket.oc1..exampleuniqueID", "is-read-only": false, "kms-key-id": null, "metadata": {}, "name": "MyStandardBucket", "namespace": "MyNamespace", "object-events-enabled": false, "object-level-audit-mode": "Disabled", "object-lifecycle-policy-etag": null, "public-access-type": "NoPublicAccess", "replication-enabled": false, "storage-tier": "Standard", "time-created": "2020-06-12T19:04:05.879000+00:00", "versioning": "Disabled" }, "etag": "7b7c3dc1-713f-4996-b176-a938345cae8e" }
Se crea inmediatamente un cubo de nivel estándar y puede comenzar a cargar objetos.
Creación de un cubo de nivel de almacenamiento Archivo por defecto
Para crear un cubo de nivel de archivo, debe definir explícitamente
--storage-tier Archive
. Archivo es el nivel de almacenamiento por defecto utilizado para los datos del servicio de Almacenamiento de archivo. Utilice el nivel Archivo para almacenar datos que no requieren acceso inmediato, pero que requieren largos períodos de retención. El acceso a los datos del nivel Archivo no es inmediato. Los datos archivados se deben restaurar antes de acceder a los datos.oci os bucket create --compartment-id compartment_ocid --name archive_bucket_name --storage-tier Archive [OPTIONS]
Por ejemplo:
oci os bucket create --compartment-id ocid.compartment.oc1..exampleuniqueID --name MyArchiveBucket { "data": { "approximate-count": null, "approximate-size": null, "auto-tiering": null, "compartment-id": "ocid.compartment.oc1..exampleuniqueID", "created-by": "ocid1.user.oc1..exampleuniqueID", "defined-tags": {}, "etag": "7b7c3dc1-713f-4996-b176-a938345cae8e", "freeform-tags": {}, "id": "ocid1.bucket.oc1..exampleuniqueID", "is-read-only": false, "kms-key-id": null, "metadata": {}, "name": "MyArchiveBucket", "namespace": "MyNamespace", "object-events-enabled": false, "object-level-audit-mode": "Disabled", "object-lifecycle-policy-etag": null, "public-access-type": "NoPublicAccess", "replication-enabled": false, "storage-tier": "Archive", "time-created": "2020-06-12T19:04:05.879000+00:00", "versioning": "Disabled" }, "etag": "c8889cd1-8414-41fb-84b7-3738c39e62c5" }
Se crea un cubo de Archive Storage y puede comenzar a cargar objetos. Los objetos cargados en cubos de Archive Storage se almacenan inmediatamente y se deben restaurar para que estén disponibles para su descarga.
Creación de un cubo público (lista y descarga de objetos de cubo)
Para crear un cubo público que permita mostrar y descargar objetos del cubo, debe definir explícitamente --public-access-type ObjectRead
.oci os bucket create --compartment-id compartment_ocid --name bucket_name --public-access-type ObjectRead [OPTIONS]
Por ejemplo:
oci os bucket create --compartment-id ocid.compartment.oc1..exampleuniqueID --name MyPublicObjectReadBucket --public-access-type ObjectRead { "data": { "approximate-count": null, "approximate-size": null, "auto-tiering": null, "compartment-id": "ocid.compartment.oc1..exampleuniqueID", "created-by": "ocid1.user.oc1..exampleuniqueID", "defined-tags": {}, "etag": "01096e0b-659a-4d9d-a806-d57568cf1b22", "freeform-tags": {}, "id": "ocid1.bucket.oc1..exampleuniqueID", "is-read-only": false, "kms-key-id": null, "metadata": {}, "name": "MyPublicObjectReadBucket", "namespace": "MyNamespace", "object-events-enabled": false, "object-lifecycle-policy-etag": null, "public-access-type": "ObjectRead", "replication-enabled": false, "storage-tier": "Standard", "time-created": "2020-06-22T19:04:05.879000+00:00", "versioning": "Disabled" }, "etag": "01096e0b-659a-4d9d-a806-d57568cf1b22" }
Creación de un cubo público (descarga de objetos de cubo)
Para crear un cubo público que solo pueda descargar objetos del cubo, debe definir explícitamente --public-access-type ObjectReadWithoutList
.oci os bucket create --compartment-id compartment_ocid --name bucket_name --public-access-type ObjectReadWithoutList [OPTIONS]
Por ejemplo:
oci os bucket create --compartment-id ocid.compartment.oc1..exampleuniqueID --name MyPublicObjectReadBucket --public-access-type ObjectReadWithoutList { "data": { "approximate-count": null, "approximate-size": null, "auto-tiering": null, "compartment-id": "ocid.compartment.oc1..exampleuniqueID", "created-by": "ocid1.user.oc1..exampleuniqueID", "defined-tags": {}, "etag": "ec20c59a-f5ba-4a6d-8a7e-b69bb9bb76ad", "freeform-tags": {}, "id": "ocid1.bucket.oc1..exampleuniqueID", "is-read-only": false, "kms-key-id": null, "metadata": {}, "name": "MyPublicObjectReadWithoutListBucket", "namespace": "MyNamespace", "object-events-enabled": false, "object-lifecycle-policy-etag": null, "public-access-type": "ObjectReadWithoutList", "replication-enabled": false, "storage-tier": "Standard", "time-created": "2020-06-22T20:18:29.203000+00:00", "versioning": "Disabled" }, "etag": "ec20c59a-f5ba-4a6d-8a7e-b69bb9bb76ad" }
Creación de un cubo con etiquetas de recursos
Puede crear cubos de nivel de Object Storage estándar o de archivo con etiquetas de recursos.
Para agregar etiquetas de recurso cuando se crea un cubo, defina las dos opciones
--defined-tags
y--freeform-tags
o una de ellas.Consejo
Las opciones--defined-tags
y--freeform-tags
requieren que la entrada sea un tipo complejo con formato JSON válido. Consulte Transferencia de entrada compleja y Uso de un archivo JSON para entrada compleja para obtener más información sobre el formato JSON.La siguiente sintaxis de ejemplo crea un cubo de nivel de Object Storage estándar con una etiqueta definida:
oci os bucket create --compartment-id compartment_id --name bucket_name --defined-tags 'JSON_formatted_defined_tag' [OPTIONS]
Ejemplos de formato de etiqueta definido:
'{"Operations": {"CostCenter": "42"}'
'{"Logistics": {"Procurement": "Madrid Center"}},"Financials":{"Production": "Unit 5"}}'
Nota
Si ejecuta la CLI en un equipo Windows, es posible que necesite utilizar el carácter de barra invertida (\) para omitir las cadenas que contienen los valores de etiqueta. Por ejemplo, una única etiqueta definida tiene el formato siguiente'{\"Logistics\": {\"Procurement\": \"Madrid Center\"}}'
Por ejemplo:
oci os bucket create --compartment-id ocid.compartment.oc1..exampleuniqueID --name MyBucketDefined --defined-tags {"Operations": {"CostCenter": "42"}} { "data": { "approximate-count": null, "approximate-size": null, "auto-tiering": null, "compartment-id": "ocid.compartment.oc1..exampleuniqueID", "created-by": "ocid1.user.oc1..exampleuniqueID", "defined-tags": { "operations": { "costcenter": "42" } }, "etag": "ea88f444-842c-462d-965e-d3540b3b54f6", "freeform-tags": {}, "id": "ocid1.bucket.oc1..exampleuniqueID", "is-read-only": false, "kms-key-id": null, "metadata": {}, "name": "MyBucketDefined", "namespace": "MyNamespace", "object-events-enabled": false, "object-lifecycle-policy-etag": null, "public-access-type": "NoPublicAccess", "replication-enabled": false, "storage-tier": "Standard", "time-created": "2020-06-23T19:47:51.362000+00:00", "versioning": "Disabled" }, "etag": "ea88f444-842c-462d-965e-d3540b3b54f6" }
La siguiente sintaxis de ejemplo crea un cubo de nivel estándar con una etiqueta de formato libre:
oci os bucket create --compartment-id compartment_ocid --name bucket_name --freeform-tags JSON_formatted_free-form_tag [OPTIONS]
Ejemplos de formato de etiqueta de formato libre:
'{"Chicago_Team": "marketing_videos"}'
'{"Project": "prototype 3","Manager": "Meadows"}'
Nota
Si ejecuta la CLI en un equipo Windows, es posible que necesite utilizar el carácter de barra invertida (\) para omitir las cadenas que contienen los valores de etiqueta. Por ejemplo, una única etiqueta de formato libre tiene el formato siguiente:'{\"Chicago_Team\": {\"marketing_videos\"}}'
Por ejemplo:
oci os bucket create --compartment-id ocid.compartment.oc1..exampleuniqueID --name MyBucketFreeform --freeform-tags {"Chicago_Team": "marketing_videos"} { "data": { "approximate-count": null, "approximate-size": null, "compartment-id": "ocid.compartment.oc1..exampleuniqueID", "created-by": "ocid1.user.oc1..exampleuniqueID", "defined-tags": {}, "etag": "6f4bda10-fc8b-462e-8563-875639fd7294", "freeform-tags": { "Chicago_Team": "marketing_videos" }, "is-read-only": false, "id": "ocid1.bucket.oc1..exampleuniqueID", "kms-key-id": null, "metadata": {}, "name": "MyBucketFreeform", "namespace": "MyNamespace", "object-events-enabled": false, "object-lifecycle-policy-etag": null, "public-access-type": "NoPublicAccess", "storage-tier": "Standard", "time-created": "2020-06-23T20:51:16.260000+00:00" }, "etag": "6f4bda10-fc8b-462e-8563-875639fd7294" }
Para obtener una lista completa de parámetros y valores para los comandos de la CLI, consulte la Referencia de comandos de CLI.
Asignación de una clave al cubo
Puede asignar una clave de almacén a un cubo que está creando incluyendo el parámetro kms_key_id.
oci os bucket create --compartment-id ocid.compartment.oc1..exampleuniqueID --name bucket_name --kms-key-id kms_key_id [OPTIONS]
donde
kms_key_id
es el OCID de las versiones de clave que contienen el material criptográfico utilizado para cifrar y descifrar datos, lo que protege los datos donde están almacenados.Por ejemplo:
oci os bucket create --compartment-id ocid.compartment.oc1..exampleuniqueID --name MyKeyBucket --kms-key-id ocid1.key.region1.sea..exampleuniqueID { "data": { "approximate-count": null, "approximate-size": null, "auto-tiering": null, "compartment-id": "ocid.compartment.oc1..exampleuniqueID", "created-by": "ocid1.user.oc1..exampleuniqueID", "defined-tags": {}, "etag": "e7f29fdd-b5f5-42e5-a98b-80883f9f2f32", "freeform-tags": {}, "id": "ocid1.bucket.oc1..exampleuniqueID", "is-read-only": false, "kms-key-id": "ocid1.key.region1.sea..exampleuniqueID", "metadata": {}, "name": "MyKeyBucket", "namespace": "MyNamespace", "object-events-enabled": false, "object-lifecycle-policy-etag": null, "public-access-type": "NoPublicAccess" "replication-enabled": false, "storage-tier": "Standard", "time-created": "2020-06-29T23:00:35.490000+00:00", "versioning": "Disabled" }, "etag": "e7f29fdd-b5f5-42e5-a98b-80883f9f2f32" }
Para obtener una lista completa de parámetros y valores para los comandos de la CLI, consulte la Referencia de comandos de CLI.
Ejecute la operación CreateBucket para crear un cubo.
Al acceder a la API de Object Storage, el nombre del cubo se utiliza con el nombre del espacio de nombres de Object Storage para formar la URL de solicitud:
n/object_storage_namespace/b/bucket
Dos propiedades clave en la carga útil son:
-
La propiedad
publicAccessType
controla si el cubo es privado o público y limita la capacidad para mostrar contenidos del cubo público. -
La propiedad
objectEventsEnabled
controla si los eventos se emiten para los objetos de este cubo.
-