Tutoriel : Démarrer avec OOS avec AWS CLI

Le but de ce tutoriel est de présenter les principales opérations possibles avec OUTSCALE Object Storage (OOS) par le biais de AWS CLI.

Ces opérations ne sont pas présentées sous leurs formes exhaustives. Pour en savoir plus, vous pouvez vous référer aux procédures complètes liées.

Créer un bucket

Avant de commencer : Installez et configurez AWS CLI et définissez votre profil. Pour en savoir plus, voir Utiliser et configurer AWS CLI.

Pour créer un bucket, utilisez la commande create-bucket suivant cette syntaxe :

Exemple de requête
$ aws s3api create-bucket \
    --profile YOUR_PROFILE \
    --bucket BUCKET \
    --endpoint https://oos.<REGION>.outscale.com

Cette commande contient les attributs suivants que vous devez spécifier :

  • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI.

  • bucket : Le nom que vous voulez donner à votre bucket, selon les règles de nommage correspondantes.

    Pour rappel, le nom d’un bucket doit :

    • Être unique pour toute la Région

    • Contenir entre 3 et 63 caractères

    • Contenir uniquement des minuscules, chiffres et tirets (-)

    • Commencer par un caractère alphanumérique

  • endpoint : Le endpoint correspondant à la Région vers laquelle vous voulez envoyer la requête, selon le format suivant : https://oos.<REGION>.outscale.com

Le bucket est créé.

Pour en savoir plus, voir Créer un bucket.

Déposer un objet dans un bucket

Avant de commencer : Installez et configurez AWS CLI et définissez votre profil. Pour en savoir plus, voir Utiliser et configurer AWS CLI.

Les objets ne sont pas limités en taille. La taille maximale pour un dépôt simple est de 5 Gio, mais vous pouvez effectuer vos dépôts en plusieurs parties. Ainsi, il est recommandé de déposer les fichiers supérieurs à 100 Mio en plusieurs parties afin de s’assurer une performance de dépôt optimale. Pour en savoir plus, voir Utiliser un dépôt partitionné.

Pour déposer un objet local dans un bucket, utilisez la commande put-object suivant cette syntaxe :

Exemple de requête
$ aws s3api put-object \
    --profile YOUR_PROFILE \
    --bucket BUCKET \
    --key OBJECT \
    --body usr/bin/OBJECT \
    --endpoint https://oos.<REGION>.outscale.com

Cette commande contient les attributs suivants que vous devez spécifier :

  • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI.

  • bucket : Le nom du bucket dans lequel vous voulez déposer l’objet.

  • key : Le nom que vous voulez donner à l’objet dans le bucket.

  • body : Le chemin d’accès vers l’objet sur votre machine.

  • endpoint : Le endpoint correspondant à la Région vers laquelle vous voulez envoyer la requête, selon le format suivant : https://oos.<REGION>.outscale.com

L’objet est déposé sur le bucket.

Pour afficher correctement un fichier binaire tel qu’un PDF dans un navigateur web, vous devez le déposer par le biais de la commande s3 suivante :

$ aws s3 cp --profile YOUR_PROFILE LOCAL_PATH/OBJECT_TO_UPLOAD s3://YOUR_BUCKET --endpoint ENDPOINT

Pour en savoir plus, voir Déposer un objet dans un bucket.

Configurer l’ACL d’un bucket

Avant de commencer : Installez et configurez AWS CLI et définissez votre profil. Pour en savoir plus, voir Utiliser et configurer AWS CLI.

Pour configurer l’ACL d’un bucket, utilisez la commande put-bucket-acl suivant cette syntaxe :

Exemple de requête
$ aws s3api put-bucket-acl \
    --profile YOUR_PROFILE \
    --bucket BUCKET \
    --grant-read id=S3_USER_ID \
    --endpoint https://oos.<REGION>.outscale.com

Cette commande contient les attributs suivants que vous devez spécifier :

  • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI.

  • bucket : Le nom du bucket dans lequel vous voulez déposer l’objet.

  • grant-read : L’ID S3 de l’utilisateur auquel vous accordez la permission read.

    Pour récupérer les ID S3 d’utilisateurs, vous devez utiliser les méthodes Lister vos buckets ou Lister les objets d’un bucket.

  • endpoint : Le endpoint correspondant à la Région vers laquelle vous voulez envoyer la requête, selon le format suivant : https://oos.<REGION>.outscale.com

L’ACL est configurée pour le bucket.

Pour en savoir plus, voir Configurer l’ACL d’un bucket.

Configurer l’ACL d’un objet

Avant de commencer : Installez et configurez AWS CLI et définissez votre profil. Pour en savoir plus, voir Utiliser et configurer AWS CLI.

Pour configurer l’ACL d’un objet, utilisez la commande put-object-acl suivant cette syntaxe :

Exemple de requête
$ aws s3api put-object-acl \
    --profile YOUR_PROFILE \
    --bucket BUCKET \
    --key OBJECT \
    --grant-read id=S3_USER_ID \
    --endpoint https://oos.<REGION>.outscale.com

Cette commande contient les attributs suivants que vous devez spécifier :

  • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI.

  • bucket : Le nom du bucket dans lequel vous voulez déposer l’objet.

  • key : Le nom de l’objet dans le bucket.

  • grant-read : L’ID S3 de l’utilisateur auquel vous accordez la permission read.

    Pour récupérer les ID S3 d’utilisateurs, vous devez utiliser les méthodes Lister vos buckets ou Lister les objets d’un bucket.

  • endpoint : Le endpoint correspondant à la Région vers laquelle vous voulez envoyer la requête, selon le format suivant : https://oos.<REGION>.outscale.com

L’ACL est configurée pour l’objet.

Pour en savoir plus, voir Configurer l’ACL d’un objet.

Configurer une URL pré-signée

Avant de commencer : Installez et configurez AWS CLI et définissez votre profil. Pour en savoir plus, voir Utiliser et configurer AWS CLI.

Pour configurer une URL pré-signée, utilisez la commande presign suivant cette syntaxe :

Exemple de requête
$ aws s3 presign s3://BUCKET/OBJECT \
    --profile YOUR_PROFILE \
    --expires-in 3600 \
    --endpoint ENDPOINT

Cette commande contient les attributs suivants que vous devez spécifier :

  • s3://BUCKET/OBJECT : Le chemin d’accès vers l’objet que vous voulez partager dans le bucket.

  • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI.

  • expires-in : La durée avant que l’URL n’expire, en secondes.

  • endpoint : Le endpoint correspondant à la Région vers laquelle vous voulez envoyer la requête, selon le format suivant : https://oos.<REGION>.outscale.com

Pour en savoir plus, voir Configurer une URL pré-signée.

Créer un site web

Avant de commencer : Installez et configurez AWS CLI et définissez votre profil. Pour en savoir plus, voir Utiliser et configurer AWS CLI.

  1. Copiez un objet index.html sur votre bucket et configurez une ACL public-read :

    Exemple de requête
    $ aws s3 cp index.html s3://BUCKET/ \
       --profile YOUR_PROFILE \
       --acl public-read \
       --endpoint https://oos.<REGION>.outscale.com

    Cette commande contient les attributs suivants que vous devez spécifier :

    • s3://BUCKET/OBJECT : Le chemin d’accès vers l’objet que vous voulez partager dans le bucket.

    • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI.

    • (optionnel) acl : Les permissions que vous accordez pour votre objet (private | public-read | public-read-write | authenticated-read | bucket-owner-read | bucket-owner-full-control).

    • endpoint : Le endpoint correspondant à la Région vers laquelle vous voulez envoyer la requête, selon le format suivant : https://oos.<REGION>.outscale.com

  2. Copiez un objet error.html sur votre bucket et configurez une ACL public-read :

    Exemple de requête
    $ aws s3 cp error.html s3://BUCKET/ \
       --profile YOUR_PROFILE \
       --acl public-read \
       --endpoint https://oos.<REGION>.outscale.com

    Cette commande contient les attributs suivants que vous devez spécifier :

    • s3://BUCKET/OBJECT : Le chemin d’accès vers l’objet que vous voulez partager dans le bucket.

    • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI.

    • (optionnel) acl : Les permissions que vous accordez pour votre objet (private | public-read | public-read-write | authenticated-read | bucket-owner-read | bucket-owner-full-control).

    • endpoint : Le endpoint correspondant à la Région vers laquelle vous voulez envoyer la requête, selon le format suivant : https://oos.<REGION>.outscale.com

  3. Créez un fichier website.json avec le contenu suivant :

    {
        "IndexDocument": {
            "Suffix": "index.html"
        },
        "ErrorDocument": {
            "Key": "error.html"
        }
    }
  4. Copiez le fichier website.json sur votre bucket et configurez une ACL public-read :

    Exemple de requête
    $ aws s3 cp website.json s3://BUCKET/ \
        --profile YOUR_PROFILE \
        --acl public-read \
        --endpoint https://oos.<REGION>.outscale.com

    Cette commande contient les attributs suivants que vous devez spécifier :

    • s3://BUCKET/OBJECT : Le chemin d’accès vers l’objet que vous voulez partager dans le bucket.

    • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI.

    • (optionnel) acl : Les permissions que vous accordez pour votre objet (private | public-read | public-read-write | authenticated-read | bucket-owner-read | bucket-owner-full-control).

    • endpoint : Le endpoint correspondant à la Région vers laquelle vous voulez envoyer la requête, selon le format suivant : https://oos.<REGION>.outscale.com

  5. Créez votre site web par le biais de la commande website suivant cette syntaxe :

    Exemple de requête
    $ aws s3 website s3://BUCKET/ \
        --profile YOUR_PROFILE \
        --index-document index.html \
        --error-document error.html \
        --endpoint https://oos.<REGION>.outscale.com

    Cette commande contient les attributs suivants que vous devez spécifier :

    • s3://BUCKET/OBJECT : Le chemin d’accès vers l’objet que vous voulez partager dans le bucket.

    • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI.

    • index-document: Le chemin vers le fichier d’index à utiliser pour le site web.

    • error-document: Le chemin vers le fichier d’erreur à utiliser pour le site web.

    • endpoint : Le endpoint correspondant à la Région vers laquelle vous voulez envoyer la requête, selon le format suivant : https://oos.<REGION>.outscale.com

Votre site web est créé et accessible au format d’adresse suivant : https://<BUCKET>.oos-website.<REGION>.outscale.com

Pages connexes

AWS™ et Amazon Web Services™ sont des marques de commerce d'Amazon Technologies, Inc. ou de ses affiliées aux États-Unis et/ou dans les autres pays.