Cet article fait partie de notre guide: Les bases de l’administration des serveurs Linux

Comment utiliser Azure File Storage avec Linux

Les service de partage de fichiers Azure File Storage permet de créer des partages de fichiers SMB 3.x dans le cloud Microsoft. Ce service est accessible indifféremment par des serveurs Windows ou Linux. Voici comment configurer Linux pour en tirer parti.

Avec les services Azure File Storage, il est possible de créer un partage de fichiers SMB dans le cloud Microsoft et d’y accéder depuis une VM dans Azure ou depuis un serveur Windows local. Mais du fait du support de SMB, le service est aussi utilisable depuis des serveurs Linux, qu’ils résident dans des VM dans le Cloud Azure ou « on premises ».

La création d’un partage de fichiers s’effectue depuis le portail Azure, via PowerShell, pour ceux qui ont déjà interfacé une machine avec le cloud Azure, ou depuis la ligne de commande azure (il faut préalablement installer la CLI Azure). La seule limitation sous Linux est que pour l’instant l’implémentation SMB dans le noyau Linux ne supporte pas le chiffrement (une fonction arrivée avec la version 3.0 du protocole). Cela ne pose pas forcèment de problème pour les machines dans Azure (à condition que le client soit dans la même région que le partage). Mais il faudra être prudent lorsque l’on souhaite utiliser le service depuis un poste local (il faudra, par exemple, que l’application consommant le partage chiffre elle-même les données).

Le support du chiffrement SMB dans Linux est toutefois en cours de développement et ce problème devrait disparaître une fois que le chiffrement sera nativement supporté par le noyau.

Comment utiliser Azure File Storage avec des serveurs ou VM Linux

Les serveurs Linux (physiques ou virtuels) peuvent accéder de façon transparente aux partages de fichiers Azure File Services. Microsoft recommande d'utiliser les versions suivantes dans Azure (choisir les images appropriées) et cette recommandation est aussi valide pour les usages « on premises » :

  • Ubuntu Server 14:04
  • Ubuntu Server 15:04
  • CentOS 7.1
  • OpenSUSE 13.2
  • SUSE Linux Enterprise Server 12
  • SUSE Linux Enterprise Server 12 (image premium)

La première chose à faire pour permettre l’accès à un partage de fichiers Azure est d’installer les outils SMB dans la ditribution Linux. Avec Ubuntu (et la plupart des distributions Debian), cela passe par l’exécution de la commande :

sudo apt-get install cifs-utils

Dans CentOS et Red Hat Enterprise Linux, l'installation des clients CIFS se fait avec: 

sudo yum install samba-client samba-common cifs-utils

Pour un serveur OpenSUSE l’installation se fait avec la commande suivante :

sudo zypper installer samba*

Une fois les outils cifs/SMB installés, un « mount » classique permet de monter le partage de volume et d’y accéder. Il convient préalablement de créer un point de montage avec la commande :

sudo mkdir /mnt/monpointdemontage

puis de monter le système de fichiers distant avec la commande suivante :

sudo mount -t cifs //moncompteazure.file.core.windows.net/nomdupartageazure /mnt/monpointdemontage -o vers=3.0,username=moncompteazure,password=StorageAccountKeyEndingIn==,dir_mode=0777,file_mode=0777

Pour vérifier que le montage est opérationnel, on peut entrer la commande suivante (qui liste la taille du système de fichiers) :

df -h /mnt/monpointdemontage

Il est à noter que le montage n’est pas permanent et sera deconnecté après un redémarrage. Pour s’assurer que le partage est accessible en permanence, il convient de l’intégrer dans le fichier /etc/fstab. Utilisez donc votre éditeur de texte favori pour ouvrir le fichier /etc/fstab et ajouter la ligne suivante :

//moncompteazure.file.core.windows.net/nomdupartageazure /mnt/monpointdemontage cifs vers=3.0,username=moncompteazure,password=StorageAccountKeyEndingIn==,dir_mode=0777,file_mode=0777

Le mode 0777 correspond à l'accès en lecture, écriture et droits d'exécution.

Aucune différence entre Linux et Windows

Une fois le partage monté sur le serveur Linux, il peut être exploité comme toute autre partage de fichiers. Ainsi, lorsqu’un fichier est créé par un serveur, il devient visible par tous les autres serveurs connectés, qu’il s’agisse de serveurs Linux ou Windows. Et ce stockage est persistant (dans la mesure où l’on ne supprime pas le partage depuis la console Azure).

Côté tarification, il n’y a aucune différence de prix entre les serveurs Windows et Linux pour ce qui concerne l’accès aux données. De plus, la grille de prix ne dépend pas du nombre de noeuds mais du volume stocké, du nombre de transactions sur les fichiers et des coûts de bande passante sortante.

 

Pour approfondir sur Stockage en Cloud