Préparez le nœud de travail
Tous les nœuds workers du cluster Kubernetes doivent pouvoir monter les volumes provisionnés pour vos pods. Pour préparer les nœuds workers, vous devez installer les outils NFS, iSCSI, NVMe/TCP ou FC en fonction de votre sélection de pilotes.
Choisir les bons outils
Si vous utilisez une combinaison de pilotes, vous devez installer tous les outils requis pour vos pilotes. Les versions récentes de RedHat CoreOS ont les outils installés par défaut.
"Installez les outils NFS" si vous utilisez : ontap-nas
, ontap-nas-economy
, ontap-nas-flexgroup
, azure-netapp-files
, gcp-cvs
.
"Installez les outils iSCSI" si vous utilisez : ontap-san
, ontap-san-economy
, solidfire-san
.
"Installez les outils NVMe" si vous utilisez ontap-san
Pour le protocole NVMe (Nonvolatile Memory Express) sur TCP (NVMe/TCP).
ONTAP 9.12 ou version ultérieure est recommandé pour NVMe/TCP. |
SCSI over Fibre Channel (FC) est une fonctionnalité de prévisualisation technique dans la version Trident 24.10.
"Installez les outils iSCSI" Si vous utilisez ontap-san
avec sanType fcp
(SCSI sur FC).
Pour plus d'informations, reportez-vous à la section "Manières de configurer FC ; hôtes SAN FC-NVMe" .
Détection des services de nœud
Trident tente de détecter automatiquement si le nœud peut exécuter des services iSCSI ou NFS.
La découverte de services de nœuds identifie les services détectés, mais ne garantit pas que les services sont correctement configurés. Inversement, l'absence d'un service découvert ne garantit pas l'échec du montage du volume. |
Trident crée des événements pour le nœud afin d'identifier les services détectés. Pour passer en revue ces événements, exécutez :
kubectl get event -A --field-selector involvedObject.name=<Kubernetes node name>
Trident identifie les services activés pour chaque nœud sur le nœud Trident CR. Pour afficher les services découverts, exécutez :
tridentctl get node -o wide -n <Trident namespace>
Volumes NFS
Installez les outils NFS à l'aide des commandes de votre système d'exploitation. Assurez-vous que le service NFS est démarré pendant le démarrage.
sudo yum install -y nfs-utils
sudo apt-get install -y nfs-common
Redémarrez les nœuds workers après l'installation des outils NFS afin d'éviter toute défaillance lors de la connexion des volumes aux conteneurs. |
Volumes iSCSI
Trident peut automatiquement établir une session iSCSI, analyser les LUN et détecter les périphériques à chemins d'accès multiples, les formater et les monter sur un pod.
Fonctionnalités d'auto-rétablissement de l'iSCSI
Pour les systèmes ONTAP, Trident exécute l'autorétablissement iSCSI toutes les cinq minutes pour :
-
Identifier l'état de session iSCSI souhaité et l'état de session iSCSI en cours.
-
Comparer l'état souhaité à l'état actuel pour identifier les réparations nécessaires. Trident détermine les priorités de réparation et le moment où les réparations doivent être effectuées.
-
Effectuez les réparations requises pour rétablir l'état de session iSCSI actuel à l'état de session iSCSI souhaité.
Les journaux d'activité d'auto-rétablissement se trouvent dans trident-main le conteneur sur le pod Demeset respectif. Pour afficher les journaux, vous devez avoir défini debug la valeur « true » lors de l'installation de Trident.
|
Les fonctionnalités d'auto-rétablissement iSCSI de Trident permettent d'éviter :
-
Sessions iSCSI obsolètes ou non saines pouvant survenir après un problème de connectivité réseau. Dans le cas d'une session obsolète, Trident attend sept minutes avant de se déconnecter pour rétablir la connexion avec un portail.
Par exemple, si les secrets CHAP ont tourné sur le contrôleur de stockage et que le réseau perd la connectivité, les anciens secrets CHAP (obsolète) pourraient persister. L'auto-rétablissement peut reconnaître ceci et rétablir automatiquement la session pour appliquer les secrets CHAP mis à jour. -
Sessions iSCSI manquantes
-
LUN manquantes
Points à prendre en compte avant de mettre à niveau Trident
-
Si seuls les igroups par nœud (introduits dans 23.04+) sont utilisés, l'auto-rétablissement iSCSI lance des renumérisations SCSI pour tous les périphériques du bus SCSI.
-
Si seuls les igroups dont le périmètre est back-end (obsolète à partir de la version 23.04) sont utilisés, l'auto-rétablissement iSCSI lance des renumérisations SCSI pour obtenir les ID de LUN exacts dans le bus SCSI.
-
Si une combinaison d'igroups par nœud et d'igroups scoped back-end est utilisée, l'autorétablissement iSCSI lance des renumérisations SCSI pour obtenir des ID de LUN exacts sur le bus SCSI.
Installez les outils iSCSI
Installez les outils iSCSI à l'aide des commandes de votre système d'exploitation.
-
Chaque nœud du cluster Kubernetes doit avoir un IQN unique. C'est une condition préalable nécessaire.
-
En cas d'utilisation de RHCOS version 4.5 ou ultérieure ou d'une autre distribution Linux compatible RHEL, avec le
solidfire-san
Pilote et Element OS 12.5 ou version antérieure, assurez-vous que l'algorithme d'authentification CHAP est défini sur MD5 dans/etc/iscsi/iscsid.conf
. Les algorithmes CHAP sécurisés conformes à la norme FIPS SHA1, SHA-256 et SHA3-256 sont disponibles avec Element 12.7.sudo sed -i 's/^\(node.session.auth.chap_algs\).*/\1 = MD5/' /etc/iscsi/iscsid.conf
-
Lorsque vous utilisez des nœuds workers exécutant RHEL/RedHat CoreOS avec iSCSI PVS, spécifiez le
discard
MounOption dans la classe de stockage pour effectuer la réclamation d'espace en ligne. Reportez-vous à la section "Documentation Red Hat".
-
Installez les packages système suivants :
sudo yum install -y lsscsi iscsi-initiator-utils device-mapper-multipath
-
Vérifiez que la version iscsi-initiator-utils est 6.2.0.874-2.el7 ou ultérieure :
rpm -q iscsi-initiator-utils
-
Activer les chemins d'accès multiples :
sudo mpathconf --enable --with_multipathd y --find_multipaths n
Bien sûr etc/multipath.conf
contientfind_multipaths no
sousdefaults
. -
S'assurer que
iscsid
etmultipathd
sont en cours d'exécution :sudo systemctl enable --now iscsid multipathd
-
Activer et démarrer
iscsi
:sudo systemctl enable --now iscsi
-
Installez les packages système suivants :
sudo apt-get install -y open-iscsi lsscsi sg3-utils multipath-tools scsitools
-
Vérifiez que la version Open-iscsi est 2.0.874-5ubuntu2.10 ou ultérieure (pour bionique) ou 2.0.874-7.1ubuntu6.1 ou ultérieure (pour focaux) :
dpkg -l open-iscsi
-
Définir la numérisation sur manuelle :
sudo sed -i 's/^\(node.session.scan\).*/\1 = manual/' /etc/iscsi/iscsid.conf
-
Activer les chemins d'accès multiples :
sudo tee /etc/multipath.conf <<-EOF defaults { user_friendly_names yes find_multipaths no } EOF sudo systemctl enable --now multipath-tools.service sudo service multipath-tools restart
Bien sûr etc/multipath.conf
contientfind_multipaths no
sousdefaults
. -
S'assurer que
open-iscsi
etmultipath-tools
sont activées et en cours d'exécution :sudo systemctl status multipath-tools sudo systemctl enable --now open-iscsi.service sudo systemctl status open-iscsi
Pour Ubuntu 18.04, vous devez découvrir les ports cibles avec iscsiadm
avant de commenceropen-iscsi
Pour que le démon iSCSI démarre. Vous pouvez également modifier leiscsi
service à démarreriscsid
automatiquement.
Configurez ou désactivez l'auto-rétablissement iSCSI
Vous pouvez configurer les paramètres d'auto-rétablissement iSCSI Trident suivants pour corriger les sessions obsolètes :
-
Intervalle d'auto-rétablissement iSCSI : détermine la fréquence à laquelle l'auto-rétablissement iSCSI est appelé (par défaut : 5 minutes). Vous pouvez le configurer pour qu'il s'exécute plus fréquemment en définissant un nombre plus petit ou moins fréquemment en définissant un nombre plus grand.
La définition de l'intervalle d'auto-rétablissement iSCSI sur 0 arrête complètement l'auto-rétablissement iSCSI. Nous ne recommandons pas de désactiver l'auto-rétablissement iSCSI. Il ne doit être désactivé que dans certains cas lorsque l'auto-rétablissement iSCSI ne fonctionne pas comme prévu ou à des fins de débogage. |
-
Délai d'attente d'auto-rétablissement iSCSI : détermine la durée d'attente de l'auto-rétablissement iSCSI avant de se déconnecter d'une session défectueuse et de tenter de se reconnecter (par défaut : 7 minutes). Vous pouvez le configurer sur un nombre plus grand de sorte que les sessions identifiées comme non saines doivent attendre plus longtemps avant d'être déconnectées, puis une tentative de connexion est faite, ou un nombre plus petit pour se déconnecter et se connecter plus tôt.
Pour configurer ou modifier les paramètres d'auto-rétablissement iSCSI, passez le iscsiSelfHealingInterval
et iscsiSelfHealingWaitTime
paramètres lors de l'installation de helm ou de la mise à jour de helm.
L'exemple suivant définit l'intervalle d'auto-rétablissement iSCSI sur 3 minutes et le temps d'attente d'auto-rétablissement sur 6 minutes :
helm install trident trident-operator-100.2410.0.tgz --set iscsiSelfHealingInterval=3m0s --set iscsiSelfHealingWaitTime=6m0s -n trident
Pour configurer ou modifier les paramètres d'auto-rétablissement iSCSI, passez le iscsi-self-healing-interval
et iscsi-self-healing-wait-time
paramètres lors de l'installation ou de la mise à jour de tridentctl.
L'exemple suivant définit l'intervalle d'auto-rétablissement iSCSI sur 3 minutes et le temps d'attente d'auto-rétablissement sur 6 minutes :
tridentctl install --iscsi-self-healing-interval=3m0s --iscsi-self-healing-wait-time=6m0s -n trident
Volumes NVMe/TCP
Installez les outils NVMe à l'aide des commandes correspondant à votre système d'exploitation.
|
sudo yum install nvme-cli sudo yum install linux-modules-extra-$(uname -r) sudo modprobe nvme-tcp
sudo apt install nvme-cli sudo apt -y install linux-modules-extra-$(uname -r) sudo modprobe nvme-tcp
Vérifiez l'installation
Après l'installation, vérifiez que chaque nœud du cluster Kubernetes dispose d'un NQN unique via la commande :
cat /etc/nvme/hostnqn
Trident modifie la ctrl_device_tmo valeur pour s'assurer que NVMe ne renonce pas au chemin s'il tombe en panne. Ne modifiez pas ce paramètre.
|