Ce premier article sur les stockage va nous permettre de mettre en place un stockage persistant pour nos pods sur une structure assez classique de stockage, un serveur NFS. Nous verrons dans un prochain article un autre type de stockage pour nos clusters Kubernetes.

 

Mise en place du serveur NFS

La première chose qu'il nous faut c'est un serveur NFS, j'ai donc une machine Debian 10 avec un disque de 100Go que je vais exporter pour mon cluster. Mon disque est monté dans le répertoire /data/nfs.

On installe ensuite le service nfs :

Copy to Clipboard

 

On met ensuite en place l'export :

Copy to Clipboard

 

Notre serveur NFS est prêt.

Sur chacun des noeuds worker il va falloir ajouter le paquet client nfs :

Notre serveur NFS est prêt.

Sur chacun des noeuds worker il va falloir ajouter le paquet client nfs :

Copy to Clipboard

 

Provisionning dynamique de stockage NFS

J'ai utilisé ce projet comme base de travail : https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner

Dans le fichier deployment.yaml on dois adapter les paramètres suivant :

Copy to Clipboard

 

Par exemple pour moi :

Copy to Clipboard

 

Attention si PROVISIONER_NAME est modifié il faut aussi le modifier dans class.yaml.

J'ai aussi changé le namespace dans les fichiers rbac.yaml et deployment.yaml

On déploie

Copy to Clipboard

 

On vérifie :

Copy to Clipboard

 

Test

On va utiliser le pod et le pvc suivant :

Copy to Clipboard

 

Une fois le pvc et le pod déployé on va pouvoir se connecter dans le conteneur et aller écrire des données dans le répertoire /data

Copy to Clipboard

 

Si on regarde maintenant côté serveur NFS :

Copy to Clipboard

 

It's works !! Notre serveur nfs est fonctionnel pour stocker les fichiers de nos pods.