For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/public-cloud/ai-machine-learning/ai-s3-compliance.md.

Données - Conformité entre les produits AI et Object Storage compatible S3

Voir en Markdown

Apprendre à utiliser les buckets Object Storage compatibles S3* avec les AI Tools

Objectif

Ce guide a pour but de vous aider à utiliser des buckets Object Storage compatibles S3* avec les OVHcloud AI Solutions via l'OVHcloud Control Panel et la CLI ovhai.

En effet, vous apprendrez comment :

Prérequis

Pour suivre ce guide, assurez-vous de répondre aux exigences suivantes :

  • Un projet Public Cloud.
  • Un compte utilisateur créé sur ce projet Public Cloud, avec les rôles AI et Object Storage attribués. Pour plus d'informations sur la création d'un tel utilisateur, veuillez consulter la documentation Gérer les utilisateurs et rôles AI.
  • La CLI ovhai installée. Veuillez vous référer à notre guide sur comment installer la CLI ovhai pour obtenir de l'aide.

Accès à l'espace client OVHcloud

  • Lien direct :
  • Pour accéder à vos services : Public Cloud > Sélectionnez votre projet > Object Storage

En pratique

Créer un bucket compatible S3

Pour créer votre premier bucket Object Storage compatible S3, cliquez sur pour accéder à votre projet Public Cloud, puis cliquez sur le bouton Object Storage dans la barre latérale gauche, dans la section Stockage :

S3 compatible bucket creation

Cela devrait vous ramener à la page présentée ci-dessus, où vous pouvez voir tous les buckets que vous avez déjà créés sur votre projet Public Cloud. En vous rendant dans la section Mes conteneurs, où vous vous trouvez par défaut, vous pouvez créer un nouveau bucket en cliquant sur le bouton Créer un conteneur d'objets, juste au-dessus de la liste des buckets.

Si vous n'avez pas encore créé de bucket, l'interface sera légèrement différente, mais vous invitera également à Créer un conteneur d'objets.

1. Type de conteneur

Une fois ce bouton cliqué, il vous sera demandé de spécifier le type de bucket que vous souhaitez créer. Dans ce guide, nous choisirons l'API compatible S3 :

S3 compatible bucket solution

2. Mode de déploiement

Ensuite, spécifiez le mode de déploiement que vous souhaitez utiliser (3-AZ, 1-AZ ou Local Zone). Pour en savoir plus, consultez la comparaison des modes de déploiement :

S3 compatible bucket deployment

3. Région

Sélectionnez une région :

S3 compatible bucket region

4. Utilisateur associé

Une fois le mode de déploiement et la région de votre bucket compatible S3 sélectionnés, les étapes suivantes varieront en fonction du mode de déploiement choisi :

Pour les modes de déploiement 1-AZ et 3-AZ :

Vous devrez lier un utilisateur de votre projet Public Cloud à votre nouveau bucket.

Pour effectuer cette étape, vous avez deux options. Vous pouvez d'abord choisir parmi vos utilisateurs existants dans votre projet Public Cloud. Vous pouvez également créer un nouvel utilisateur, qui sera automatiquement lié au bucket.

S3 compatible bucket user

Warning

Attention ! Si vous créez un nouvel utilisateur, veillez à sauvegarder ses identifiants (nom d'utilisateur, clé d'accès, clé secrète). Bien sûr, vous pourrez les récupérer plus tard si vous les perdez.

Pour le mode de déploiement Local Zone :

Aucune étape supplémentaire n'est requise pour lier un utilisateur au bucket, car tous les utilisateurs de votre projet Public Cloud auront automatiquement accès à tous les conteneurs des Local Zones.

5. Versioning, chiffrement et nom du bucket

Enfin, activez ou désactivez le versioning des objets et le chiffrement des données, et nommez votre bucket. Notez que le nom du bucket doit être unique parmi tous les buckets de votre compte Public Cloud et doit respecter les conditions suivantes :

  • Entre 3 et 63 caractères
  • Composé uniquement de lettres minuscules, de chiffres, de points (.) et de tirets (-)
  • Doit commencer et se terminer par des caractères alphanumériques en minuscules (a à z et 0 à 9)

S3 compatible bucket name

Une fois votre bucket nommé et ses paramètres configurés, cliquez sur le bouton Créer le conteneur pour confirmer la création du bucket compatible S3.

Vous devriez donc le retrouver dans la liste de vos buckets Object Storage existants.

En cliquant sur son nom, vous pouvez voir les objets qu'il contient (vide pour le moment), ainsi que des informations telles que son endpoint et son emplacement (région), que nous utiliserons plus tard :

S3 compatible bucket user

Modifier les rôles utilisateur compatibles S3

Une fois votre bucket compatible S3 créé, vous devez vérifier que l'utilisateur associé dispose des droits nécessaires pour interagir avec vos données et les OVHcloud AI Solutions (AI Notebooks, Training et Deploy).

Pour un déploiement en Local Zone, vous n'avez pas eu besoin d'associer un utilisateur à votre bucket. Cependant, il est important de vérifier que vous disposez également d'au moins un utilisateur avec les droits nécessaires.

Pour cela, cliquez sur Utilisateurs & Rôles dans la catégorie Project management, dans la barre latérale gauche de l'OVHcloud Control Panel (interface).

Que vous ayez créé un nouvel utilisateur ou que vous en utilisiez un existant, vérifiez que cet utilisateur dispose au moins des droits suivants : AI Training Operator et ObjectStore Operator, comme illustré ci-dessous :

S3 compatible user roles

Pour plus d'informations sur la modification des droits utilisateur, vous pouvez consulter la documentation dédiée.

Récupérer les identifiants utilisateur

Avant de continuer, vous devez vous assurer de disposer des informations suivantes afin de pouvoir vous authentifier via la CLI et utiliser votre bucket :

  • Nom d'utilisateur
  • Mot de passe
  • Clé d'accès compatible S3
  • Clé secrète compatible S3

Comme nous l'avons vu à l'étape précédente, tous les utilisateurs de votre projet Public Cloud sont affichés dans le menu Utilisateurs & Rôles de la catégorie Project Management. Vous y trouverez vos noms d'utilisateur existants. Le nom d'utilisateur qui nous intéresse est celui auquel vous avez donné des permissions à l'étape précédente.

Si vous avez perdu le mot de passe associé à ce nom d'utilisateur, vous pouvez le régénérer en cliquant sur ..., puis sur Générer un mot de passe, ce qui révoquera l'ancien.

user credentials

Ensuite, vous devez récupérer la clé d'accès et la clé secrète associées à cet utilisateur. Pour cela, retournez à la section Object Storage. Par défaut, vous serez redirigé vers la section Mes conteneurs. Cliquez sur la catégorie Object Storage Users. Vous y trouverez la clé d'accès de chacun de vos utilisateurs existants. Vous pouvez également afficher la clé secrète en cliquant sur le bouton ..., puis sur Voir la clé secrète, comme illustré sur la capture d'écran ci-dessous :

user keys

Configurer les permissions d'accès appropriées

Il est également important de vous assurer que cet utilisateur dispose des permissions appropriées pour accéder à tous les fichiers du bucket. Sinon, vous pourriez rencontrer des problèmes de permission lors du déploiement de la solution IA.

Pour accorder l'accès à votre bucket à votre utilisateur, cliquez sur le bouton ... situé à côté du nom de votre bucket. Cliquez ensuite sur l'option Ajouter un utilisateur à mon conteneur et sélectionnez le même utilisateur que celui utilisé lors de la création du bucket.

s3 bucket add user

En suivant ces étapes, vous pouvez accorder les permissions nécessaires à votre utilisateur, garantissant ainsi un déploiement fluide pour votre notebook, job ou app.

Ajouter un datastore via la CLI ovhai

Maintenant que votre bucket a été créé et que l'utilisateur associé dispose des permissions nécessaires, vous pouvez passer à la CLI ovhai. Si vous ne l'avez pas encore installée, veuillez vous référer au guide d'installation de la CLI ovhai.

La première étape consiste à vous authentifier avec l'utilisateur auquel vous avez accordé l'accès à votre bucket. Pour cela, utilisez la commande suivante :

ovhai login

Nous vous recommandons de choisir le mode d'authentification par terminal, et de saisir votre nom d'utilisateur et le mot de passe associé pour vous connecter.

Si vous rencontrez une erreur d'authentification, veuillez revérifier cette étape et vous assurer que vous disposez du droit AI.

Une fois authentifié, vous pouvez lister vos datastores existants avec la commande suivante :

ovhai datastore list

Vous devriez obtenir le résultat suivant :

ALIAS STORE_TYPE OWNER    ENDPOINT
BHS   swift      ovhcloud ~
DE    swift      ovhcloud ~
GRA   swift      ovhcloud ~
SBG   swift      ovhcloud ~
SGP   swift      ovhcloud ~
UK    swift      ovhcloud ~
WAW   swift      ovhcloud ~
Info

Vous pouvez voir ici qu'il n'y a aucun data store compatible S3 dans la liste pour le moment. C'est pourquoi vous allez ajouter le vôtre, afin d'accéder ensuite aux buckets d'une région donnée, pour une combinaison spécifique de clé d'accès et de clé secrète !

Pour ajouter ce datastore, vous utiliserez le modèle de commande ovhai datastore add s3. Vous pouvez utiliser le flag --help pour en savoir plus sur l'ajout de datastores compatibles S3 :

ovhai datastore add s3 --help

Cela nous donnera les différents arguments à renseigner :

Add an S3 compatible data store

Usage: ovhai datastore add s3 [OPTIONS] <ALIAS> <ENDPOINT_URL> <REGION> <ACCESS_KEY> <SECRET_KEY>

Arguments:
  <ALIAS>         Alias for the data store
  <ENDPOINT_URL>  Data store connection URL
  <REGION>        Data store region
  <ACCESS_KEY>    Connection access key
  <SECRET_KEY>    Connection secret key

Options:
      --store-credentials-locally  Whether or not to store the data store credentials locally when creating or updating a data store
      --token <TOKEN>              Authentication using Token rather than OAuth
      --no-color                   Remove colors from output
  -h, --help                       Print help

Voici le modèle de commande pour ajouter un datastore compatible S3 OVHcloud :

ovhai datastore add s3 <ALIAS> <endpoint_url> <region> <my-access-key> <my-secret-key> --store-credentials-locally

Vous devrez remplacer :

  • <alias> par le nom que vous souhaitez donner à votre datastore
  • <endpoint_url> par la valeur d'Endpoint que vous avez récupérée à la fin de l'étape de création du bucket. Cet endpoint doit commencer par : https://s3....
  • <region> par la région dans laquelle vous avez créé votre bucket. Cette région est indiquée comme Location de votre bucket, sur la dernière capture d'écran de l'étape de création du bucket. Assurez-vous d'utiliser des lettres minuscules.
  • <my-access-key> par la clé d'accès de l'utilisateur associé
  • my-secret-key par la clé secrète de l'utilisateur associé
Info

Puisque vous avez utilisé --store-credentials-locally, ce datastore n'est enregistré que dans la configuration locale de votre CLI ovhai, pour le contexte régional (ovhai config set <region>) que vous utilisiez au moment d'exécuter la commande. Il n'est pas partagé entre régions. Si vous souhaitez utiliser ce datastore depuis des notebooks, jobs ou apps qui tournent dans une autre région, relancez la même commande ovhai datastore add après avoir basculé sur le contexte de cette région.

Info

Remarque : cet endpoint vous permet également de choisir entre les classes de stockage Standard et High Performance. La classe de stockage que vous sélectionnez déterminera celle utilisée lors du téléversement de fichiers vers le bucket avec la CLI ovhai. Si vous prévoyez de téléverser des fichiers via le Control Panel (interface), vous aurez la possibilité de choisir entre le stockage Standard et High Performance. Cependant, avec la CLI, l'endpoint par défaut utilisera le stockage Standard. Si vous avez besoin du stockage High Performance, veuillez vous assurer que l'endpoint se termine par .perf.cloud.ovh.net.

Pour plus d'informations sur les classes de stockage, veuillez consulter cette documentation.

Voici un exemple pour ajouter un datastore nommé 1azgra qui gérera les buckets 1-AZ créés dans la région de Gravelines (gra) (puisqu'ils partagent le même endpoint_url) :

ovhai datastore add s3 1azgra https://s3.gra.io.cloud.ovh.net/ gra <my-access-key> <my-secret-key> --store-credentials-locally

Vous pouvez maintenant vérifier la liste des datastores :

ovhai datastore list

Vous devriez voir votre nouveau datastore dans la liste :

ALIAS STORE_TYPE OWNER    ENDPOINT
BHS   swift      ovhcloud ~
DE    swift      ovhcloud ~
GRA   swift      ovhcloud ~
1azgra s3         customer https://s3.gra.io.cloud.ovh.net/
SBG   swift      ovhcloud ~
SGP   swift      ovhcloud ~
UK    swift      ovhcloud ~
WAW   swift      ovhcloud ~

Maintenant que vous disposez d'un datastore dédié à la région spécifiée, vous pouvez lister les buckets associés à cette combinaison région/clé d'accès/clé secrète en exécutant la commande suivante (remplacez <alias> par le nom de votre datastore, 1azgra dans l'exemple précédent) :

ovhai bucket list <alias> 
DATE                     NAME
2024-12-25T09:00:00.000Z s3-gra-1az

Vous pouvez voir que le bucket s3-gra-1az que vous avez créé à l'aide du Control Panel (interface) a bien été récupéré.

Créer de nouveaux buckets liés à ce datastore avec la CLI (Optionnel)

Cette étape est optionnelle et fournie à titre informatif uniquement.

Maintenant que votre datastore est configuré, vous pouvez simplement créer de nouveaux buckets pour la région et l'utilisateur associés à votre datastore à l'aide de la commande suivante, plutôt que d'utiliser l'OVHcloud Control Panel (interface) :

ovhai bucket create <alias> <new_bucket-name>
Warning

Gardez à l'esprit que le nom du bucket doit comporter entre 3 et 63 caractères, ne peut être composé que de lettres minuscules, de chiffres, de points (.) et de tirets (-), et doit commencer et se terminer par des caractères alphanumériques en minuscules (a à z et 0 à 9).

Vous pouvez ensuite vérifier que votre bucket compatible S3 a bien été créé et lié à votre datastore (remplacez <alias> par le nom de votre datastore, 1azgra dans l'exemple précédent) :

ovhai bucket list <alias>

Vous devriez voir votre bucket dans la liste :

DATE                     NAME
2024-12-25T09:00:00.000Z s3-gra-1az
2024-12-25T10:00:00.000Z new-bucket-name

Téléverser des fichiers dans votre bucket

Avant de connecter votre bucket aux solutions IA, vous allez y téléverser quelques objets (images, codes, modèles, etc.) afin de pouvoir ensuite récupérer ces fichiers depuis les Solutions IA. Vous pouvez le faire en utilisant le Control Panel (interface) ou la CLI ovhai :

Depuis l'espace client (UI)
Depuis la CLI ovhai

Rendez-vous dans la section Object Storage (dans la catégorie Storage) et cliquez sur le nom de votre bucket. Cliquez ensuite sur le bouton Ajouter des objets :

S3 compatible bucket upload

Sélectionnez les fichiers que vous souhaitez téléverser dans votre bucket. Si nécessaire, vous pouvez préfixer leurs noms. Choisissez ensuite entre le stockage Standard ou High Performance (plus d'informations sur les classes de stockage ici). Une fois votre sélection effectuée, confirmez en cliquant sur Import.

S3 compatible bucket upload file

Dans cet exemple, le fichier python file.py est ajouté et préfixé par /scripts, ce qui donne le chemin de fichier /scripts/file.py.

Une fois le téléversement terminé, vous devriez voir les fichiers téléversés dans la liste des objets.

S3 compatible bucket overview

Utiliser des buckets compatibles S3 avec les Solutions IA

Maintenant que votre bucket compatible S3 a été créé et rempli avec quelques objets, vous pouvez le monter sur n'importe quelle Solution IA OVHcloud pour accéder à vos données.

Info

Veuillez noter que pour le moment, cette fonctionnalité compatible S3 ne peut être utilisée que via la CLI ovhai. Elle sera bientôt disponible depuis l'OVHcloud Control Panel (interface).

AI Notebooks
AI Training
AI Deploy

Pour lancer un notebook AI avec un bucket compatible S3 monté comme donnée distante, vous pouvez utiliser le modèle de commande suivant :

ovhai notebook run <framework-id> <editor-id> \
   --volume <bucket-name>@<datastore-alias>:<mount_path>:<permission>

Assurez-vous simplement de remplacer le framework et l'éditeur par ceux de votre choix. Spécifiez également le bon <bucket-name> et <datastore-alias>, et désignez la destination où vous souhaitez que les données du bucket soient stockées (<mount_path>) ainsi que sa permission d'accès (rw pour lecture-écriture, ou ro pour lecture seule).

Par exemple, pour lancer un notebook Jupyter basique sur 2 CPU, avec un environnement préconfiguré Conda, et le bucket s3-gra-1az du datastore 1azgra monté comme donnée distante sur /workspace/my-codes avec les permissions lecture-écriture (RW), utilisez la commande suivante :

ovhai notebook run conda jupyterlab \
   --volume s3-gra-1az@1azgra/:/workspace/my-codes:rw \
   --cpu 2

Cette commande créera un notebook AI avec le framework et l'éditeur spécifiés, et montera le bucket spécifié à la destination indiquée avec les permissions spécifiées. Après vous être connecté à l'interface de votre notebook (en utilisant les mêmes identifiants que ceux utilisés pour ovhai login), vous devriez voir le fichier téléversé dans le workspace de votre notebook :

notebook content bucket

Pour plus d'informations sur les capacités de la commande ovhai notebook run, vous pouvez exécuter la commande suivante :

ovhai notebook run --help

Vous pouvez également consulter la documentation dédiée CLI - Lancer un notebook AI pour en savoir plus sur les options, frameworks et éditeurs disponibles.

Si vous souhaitez utiliser la bibliothèque boto3 pour gérer les objets de votre bucket compatible S3, voici un notebook contenant des commandes de base.

Votre avis nous intéresse !

N’hésitez pas à nous faire part de vos questions, retours et suggestions pour améliorer le service :

Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.

*: S3 est une marque déposée d'Amazon Technologies, Inc. Le service d'OVHcloud n'est ni sponsorisé, ni approuvé, ni autrement affilié à Amazon Technologies, Inc.

Cette page vous a-t-elle aidé ?