Aller au contenu

Longhorn

Introduction

Longhorn est un logiciel de stockage persistant pour les clusters Kubernetes

Installation

Vérification des pré-requis

sudo dnf -y install jq
curl -sSfL https://raw.githubusercontent.com/longhorn/longhorn/v1.8.0/scripts/environment_check.sh | bash

Note

Si les prérequis ne sont pas remplis exécutez les commandes ci-dessous:
sudo systemctl enable iscsid
sudo systemctl start iscsid
sudo modprobe iscsi_tcp

Fichiers valeurs

cd /tmp
curl https://gmodocs.dyndns.org/files/longhorn-1.0.3.tar.gz -o longhorn-1.0.3.tar.gz
tar zxvf longhorn-1.0.3.tar.gz
cd longhorn

Installation de longhorn

Il faut installer une version stable (1.7.2)

helm repo add longhorn https://charts.longhorn.io
helm repo update
helm search repo longhorn --versions
helm upgrade longhorn longhorn/longhorn \
--install \
--atomic \
--cleanup-on-fail \
--version 1.7.2 \
--values=longhorn-values.yaml \
--namespace longhorn-system \
--create-namespace

Note

L'installation prend du temps. Soyez patient !

Vérfication

Attendre que tous les pods soient Running

kubectl get pods -n longhorn-system

Sauvegarde des volumes longhorn

Secret

La connection au serveur S3 nécessite un nom d'utilisateur (awsAccessKey), un mot de passe (awsSecretAccessKey) et un serveur S3 (awsEndpoint). Ces données doivent être en base64

echo -n "longhorn-backups-user" | base64
bG9uZ2hvcm4tYmFja3Vwcy11c2Vy

echo -n "userPasswordAChanger" | base64
awsSecretAccessKey: dXNlclBhc3N3b3JkQUNoYW5nZXI=

echo -n "http://172.31.10.13:9000" | base64
awsEndpoint: aHR0cDovLzE3Mi4zMS4xMC4xMzo5MDAw

Note

La valeur des clés awsSecretAccessKey (utilisateur) et awsSecretAccessKey (mot de passe) doit correspondre à ce qui a été saisi lors de la création de l'utilisateur et la valeur awsEndpoint doit correspondre à l'adresse IP de votre serveur S3

vim longhornbackups/longhorn-secret-values.yaml
data:
  # echo -n "longhorn-backups-user" | base64
  awsAccessKey: bG9uZ2hvcm4tYmFja3Vwcy11c2Vy
  # echo -n "userPasswordAChanger" | base64  
  awsSecretAccessKey: dXNlclBhc3N3b3JkQUNoYW5nZXI=
  # echo -n "http://<adresse_ip_du_serveur_sr>:9000" | base64 
  # dans cet exemple http://172.31.10.13:9000 
  awsEndpoint: aHR0cDovLzE3Mi4zMS4xMC4xMzo5MDAw

Installation

helm upgrade minio-sos-secret ./longhornbackups \
--install \
--atomic \
--cleanup-on-fail \
--values=./longhornbackups/longhorn-secret-values.yaml \
--namespace longhorn-system \
--create-namespace

Vérification

kubectl get secret -n longhorn-system

Connexion

kubectl port-forward deployment/longhorn-ui 7000:8000 -n longhorn-system

Puis http://127.0.0.1:7000


Version Date Change Auteur
1.1 15.12.2024 Updated longhorn version(1.7.2) GMo
1.0 04.03.2023 Création GMo