logo swift ovh nextcloud

S3 swift OVH avec nextcloud

Besoin initial

Plusieurs personnes ( non informaticien ) devait mettre à disposition des fichiers accessible depuis une URL. Ces fichiers pouvais être potentiellement très consultés  et donc devait bénéficier d’une grande bande passante. Après réflexion, je me suis tourné vers du stockage S3 mais il fallait que ces utilisateurs puisse facilement ajouté et retirer les fichiers. Et c’est là que nextcloud intervient comme GUI pour interagir avec le S3. Comme j’ai eu quelques soucis pour la mise en œuvre, je me suis dis que cela valait bien un article

Choix du type de stockage

J’ai commencé à faire des essais avec les S3 standard d’ OVH, mais cela ne répondait pas à toutes mes attentes. A l’heure où j’écris ces lignes il n’est pas possible de mettre un bucket S3 en public et que tous les fichiers hérite du droit public directement. Il faut mettre le droit public à chaque fichier déposé. Je ne voyais pas mes utilisateurs faire cela. De plus le stockage S3 classique est accessible uniquement en https et cela me pose un problème lorsque je fais un cname avec mon domaine. Après quelques tests je me suis tourné vers le stockage object openstack swift d’OVH.

Création du bucket et d’un utilisateur chez OVH

Pour créer notre stockage S3, il faut avoir un compte OVH actif et créer un projet.

création containeur

Ensuite aller dans Object storage et cliquer Créer un nouveau containeur d’objets

choix swift

Choisir standard object storage – Swift API et cliquer sur suivant

choix de la localisation

Choisir son lieu et cliquer sur suivant

choix type public

Choisir public et cliquer sur suivant

nom du bucket

choisir un nom de container.  Ce sera votre nom de bucket

 

Création d’un utilisateur

Maintenant il va falloir créer un utilisateur. Pour cela il faut aller

users  roles

Il faut bien passer par Project management -> Users & roles . Cela n’a pas fonctionné quand je suis passé par les utilisateur d’object storage

ajout utilisateur

cliquer sur Ajouter un utilisateur

description utilisateur

rentrer une description et cliquer sur suivant

roles utilisateur

ici notre utilisateur aura simplement besoin du role ObjectStore operator et valider

validation utilisateurs

Une fois générer le nom d’utilisateur va apparaitre avec le mot de passe. copier coller dans un notepad le nom d’utilisateeur et le mot de passe, on s’en resservira lors de la configuration du nextcloud. Pour pouvoir configurer le nextcloud il va falloir également récupérer votre id de tenant.

Pour cela il faut cliquer sur les 3 points à droite de votre utilisateur et cliquer sur Télécharger un fichier de configuration rclone

 

recuperation config rclone
localisation rclone

Choisir Swift et sélectionner votre région que vous avez choisi plus dans la création du bucket et cliquer sur télécharger. Ainsi vous aller télécharger un fichier de config ou vous trouverez plusieurs informations et notamment l’identifiant de votre tenant.

Configuration du Nextcloud

NB: cette configuration a été validé avec la version 26 de nextcloud car cela ne fonctionné pas avec la version 25.

La documentation d’OVH étant assez bien faite je ne vais pas la reprendre

https://help.ovhcloud.com/csm/fr-public-cloud-storage-s3-nextcloud?id=kb_article_view&sysparm_article=KB0047426

La subtilité c’est de bien prendre le lien Storage Externe dans la partie administration

stockage externe nextcloud

Dans la documentation d’OVH il connecte nextcloud sur un stockage S3 standad et pas du stockage swift. Et comme j’ai un peu galéré pour trouver la config, je vous explique tout.

config nextcloud
  1. Nom du dossier qui apparaitra dans votre nextcloud
  2. Il faut bien choisir openstack v3
  3. il faut mettre swift
  4. Mettre l’abréviation du nom de la région. Dans mon cas c’est GRA vous pouvez le retrouver dans la colonne localisation de votre containeur
  5. nom de votre containeur ou du bucket rentré plus haut
  6. nom d’utilisateur dans notre cas cela va être user-n9SN7XGsmB9X
  7. Pour le domain il faut mettre default
  8. password mettre le mot de passe récupérer plus haut
  9. tenant name mettre le numéro de tenant récupérer plus haut
  10. Identity endpoint URL mettre https://auth.cloud.ovh.net/v3
  11. Mettre les utilisateurs nextcloud qui doivent gérer les fichiers

Une fois les informations rentré vous cliquer sur l’icône validation sur la droite et vous devez obtenir un icône vert sur la gauche

Ainsi sur votre nextcloud vous allez voir apparaitre un dossier s3-daminoux et vous pourrez uploader des fichiers.

Récupération de l’URL

Pour récupérer  votre URL il faut retourner dans votre backoffice OVH et aller dans object storage et cliquer sur container

 

liste bucket
lien bucket s3

Ainsi vous retrouverez votre URL complète (1) et faire un copier (2) , la coller dans un navigateur et rajouter /lenomdemonfichier.png et vous verrez votre fichier.

Configuration DNS

Si vous souhaitez rendre accessible vos fichiers à partir de votre nom de domaine il faut créé un CNAME dans votre DNS avec l’URL récupéré ci dessus

voir doc OVH sur les cname

URL utile

L’interface d’administration d’OVH

https://www.ovh.com/manager/

La documentation pour configurer nextcloud et S3 d’OVH

https://help.ovhcloud.com/csm/fr-public-cloud-storage-s3-nextcloud?id=kb_article_view&sysparm_article=KB0047426

la configuration du cname

https://help.ovhcloud.com/csm/fr-public-cloud-storage-pcs-link-domain?id=kb_article_view&sysparm_article=KB0047174

 

Laisser un commentaire