Opérations sur les compartiments S3 et détails d’implémentation dans StorageGRID
Le système StorageGRID prend en charge un maximum de 5 000 compartiments pour chaque compte locataire S3.
Chaque grille peut comporter un maximum de 100 000 compartiments.
Pour prendre en charge 5 000 compartiments, chaque nœud de stockage de la grille doit disposer d’un minimum de 64 Go de RAM.
Les restrictions relatives aux noms de compartiments suivent les restrictions de la région standard AWS US, mais vous devez les restreindre davantage aux conventions de nommage DNS pour prendre en charge les requêtes de type hébergement virtuel S3.
Pour plus d'informations, veuillez consulter les documents suivants :
Les opérations ListObjects (GET Bucket) et ListObjectVersions (GET Bucket object versions) prennent en charge StorageGRID "valeurs de cohérence".
Vous pouvez vérifier si les mises à jour du temps d'accès sont activées ou désactivées pour chaque compartiment. Voir "Obtenir le temps d'accès du compartiment".
Le tableau suivant décrit comment StorageGRID implémente les opérations sur les compartiments de l'API REST S3. Pour effectuer l'une de ces opérations, les identifiants d'accès nécessaires doivent être fournis pour le compte.
| Opération | Mise en œuvre |
|---|---|
CreateBucket |
Crée un nouveau compartiment. En créant le compartiment, vous en devenez le propriétaire.
|
DeleteBucket |
Supprime le compartiment. |
DeleteBucketCors |
Supprime la configuration CORS du compartiment. |
DeleteBucketEncryption |
Supprime le chiffrement par défaut du compartiment. Les objets chiffrés existants restent chiffrés, mais les nouveaux objets ajoutés au compartiment ne sont pas chiffrés. |
DeleteBucketLifecycle |
Supprime la configuration du cycle de vie du compartiment. Voir "Créer une configuration de cycle de vie S3". |
DeleteBucketPolicy |
Supprime la stratégie associée au compartiment. |
DeleteBucketReplication |
Supprime la configuration de réplication associée au compartiment. |
DeleteBucketTagging |
Utilise la sous-ressource Attention : Si une balise de règle de configuration ILM non par défaut est définie pour ce compartiment, il y aura une balise |
GetBucketAcl |
Renvoie une réponse positive ainsi que l'ID, DisplayName et la permission du propriétaire du compartiment, indiquant que ce dernier dispose d'un accès complet au compartiment. |
GetBucketCors |
Renvoie la `cors`configuration du compartiment. |
GetBucketEncryption |
Renvoie la configuration de chiffrement par défaut du compartiment. |
GetBucketLifecycleConfiguration (anciennement nommé GET Bucket lifecycle) |
Renvoie la configuration du cycle de vie du compartiment. Voir "Créer une configuration de cycle de vie S3". |
GetBucketLocation |
Renvoie la région qui a été définie à l'aide de l'élément |
GetBucketNotificationConfiguration (anciennement nommé GET Bucket notification) |
Renvoie la configuration de notification associée au compartiment. |
GetBucketPolicy |
Renvoie la règle de configuration associée au compartiment. |
GetBucketReplication |
Renvoie la configuration de réplication associée au compartiment. |
GetBucketTagging |
Utilise la Attention : Si une étiquette de règle ILM non par défaut est définie pour ce compartiment, il y aura une étiquette de compartiment |
GetBucketVersioning |
Cette implémentation utilise la
|
GetObjectLockConfiguration |
Renvoie le mode de rétention par défaut et la période de rétention par défaut du compartiment, si configurés. |
HeadBucket |
Détermine si un compartiment existe et si vous avez l'autorisation d'y accéder. Cette opération renvoie :
|
ListObjects et ListObjectsV2 (anciennement nommé GET Bucket) |
Renvoie tout ou partie (jusqu'à 1 000) des objets d'un compartiment. La classe de stockage des objets peut prendre l'une ou l'autre de deux valeurs, même si l'objet a été ingéré avec l'option de classe de stockage
Si le compartiment contient un grand nombre de clés supprimées ayant le même préfixe, la réponse peut inclure certaines Pour les requêtes HeadObject et ListObject, StorageGRID renvoie les horodatages LastModified avec une précision différente, tandis qu’AWS renvoie les horodatages avec la même précision, comme le montrent les exemples suivants :
|
ListObjectVersions (anciennement nommé GET Bucket Object versions) |
Avec un accès en lecture sur un compartiment, l'utilisation de cette opération avec la |
PutBucketCors |
Définit la configuration CORS d’un compartiment afin que celui-ci puisse traiter des requêtes inter-origines. Le partage de ressources inter-origines (CORS) est un mécanisme de sécurité qui permet aux applications web clientes d’un domaine d’accéder aux ressources d’un domaine différent. Par exemple, supposons que vous utilisiez un compartiment S3 nommé |
PutBucketEncryption |
Définit l'état de chiffrement par défaut d'un compartiment existant. Lorsque le chiffrement au niveau du compartiment est activé, tout nouvel objet ajouté au compartiment est chiffré. StorageGRID prend en charge le chiffrement côté serveur avec des clés gérées par StorageGRID. Lors de la spécification de la règle de configuration du chiffrement côté serveur, définissez le paramètre La configuration de chiffrement par défaut du compartiment est ignorée si la requête de téléchargement d'objet spécifie déjà un chiffrement (c'est-à-dire si la requête inclut l' `x-amz-server-side-encryption-*`en-tête de requête). |
PutBucketLifecycleConfiguration (anciennement nommé PUT Bucket lifecycle) |
Crée une nouvelle configuration de cycle de vie pour le compartiment ou remplace une configuration de cycle de vie existante. StorageGRID prend en charge jusqu'à 1 000 règles de cycle de vie dans une règle de configuration. Chaque règle peut inclure les éléments XML suivants :
StorageGRID ne prend pas en charge ces actions :
Voir "Créer une configuration de cycle de vie S3". Pour comprendre comment l’action d’expiration dans un cycle de vie de compartiment interagit avec les instructions de placement ILM, voir "Comment l'ILM fonctionne tout au long du cycle de vie d'un objet". Remarque : La configuration du cycle de vie des compartiments peut être utilisée avec les compartiments dont le S3 Object Lock est activé, mais la configuration du cycle de vie des compartiments n’est pas prise en charge pour les anciens compartiments Compliant. |
PutBucketNotificationConfiguration (anciennement nommé PUT Bucket notification) |
Configure les notifications pour le compartiment à l'aide du fichier XML de configuration des notifications inclus dans le corps de la requête. Veuillez prendre en compte les détails d'implémentation suivants :
|
PutBucketPolicy |
Définit la politique associée au compartiment. Voir "Utilisez les stratégies d'accès aux compartiments et aux groupes". |
PutBucketReplication |
Configure "Réplication CloudMirror StorageGRID" pour le compartiment à l'aide du fichier XML de configuration de réplication fourni dans le corps de la requête. Pour la réplication CloudMirror, veuillez prendre en compte les détails d'implémentation suivants :
|
PutBucketTagging |
Utilise la
Attention : Si une balise de stratégie ILM non standard est définie pour ce compartiment, il y aura une balise Remarque : Cette opération écrasera toutes les étiquettes existantes du compartiment. Si des étiquettes existantes sont omises de l'ensemble, ces étiquettes seront supprimées du compartiment. |
PutBucketVersioning |
Utilise la
|
PutObjectLockConfiguration |
Configure ou supprime le mode de rétention par défaut et la période de rétention par défaut du compartiment. Si la période de conservation par défaut est modifiée, la date limite de conservation des versions d'objets existantes reste la même et n'est pas recalculée en fonction de la nouvelle période de conservation par défaut. Voir "Utilisez l'API REST S3 pour configurer S3 Object Lock" pour plus d'informations. |