Skip to main content
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Déploiement de l'opérateur Trident à l'aide de Helm (mode standard)

Contributeurs

Vous pouvez déployer l'opérateur Trident et installer Trident à l'aide de Helm. Ce processus s'applique aux installations où les images de conteneur requises par Trident ne sont pas stockées dans un registre privé. Si vous disposez d'un registre d'images privé, utilisez le "processus de déploiement hors ligne".

Informations critiques sur Trident 24.10

Vous devez lire les informations critiques suivantes sur Trident.

<strong> informations sur le Trident </strong>
  • Kubernetes 1.31 est désormais pris en charge dans Trident. Mise à niveau de Trident avant la mise à niveau de Kubernetes.

  • Trident applique strictement l'utilisation de la configuration de chemins d'accès multiples dans les environnements SAN, avec une valeur recommandée de find_multipaths: no dans le fichier multipath.conf.

    Utilisation d'une configuration sans chemins d'accès multiples ou de l'utilisation de find_multipaths: yes ou find_multipaths: smart la valeur du fichier multipath.conf entraînera des échecs de montage. Trident a recommandé l'utilisation de find_multipaths: no depuis la version 21.07.

Déployez l'opérateur Trident et installez Trident à l'aide d'Helm

Avec Trident "Graphique Helm" Vous pouvez déployer l'opérateur Trident et installer Trident en une étape.

Révision "présentation de l'installation" pour vous assurer que les conditions préalables à l'installation sont respectées et que vous avez sélectionné l'option d'installation appropriée pour votre environnement.

Avant de commencer

En plus du "conditions préalables au déploiement" dont vous avez besoin "Version 3 de Helm".

Étapes
  1. Ajout du référentiel Trident Helm :

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
  2. Utilisez helm install et spécifiez un nom pour votre déploiement comme dans l'exemple suivant où 100.2404.0 est la version de Trident que vous installez.

    helm install <name> netapp-trident/trident-operator --version 100.2410.0 --create-namespace --namespace <trident-namespace>
    Remarque Si vous avez déjà créé un namespace pour Trident, le --create-namespace le paramètre ne crée pas d'espace de noms supplémentaire.

Vous pouvez utiliser helm list pour vérifier les détails de l'installation tels que le nom, l'espace de noms, le graphique, l'état, la version de l'application, et numéro de révision.

Transmettre les données de configuration pendant l'installation

Il existe deux façons de passer les données de configuration au cours de l'installation :

Option Description

--values (ou -f)

Spécifiez un fichier YAML avec les remplacements. Ceci peut être spécifié plusieurs fois et le fichier le plus à droite sera prioritaire.

--set

Spécifiez les remplacements sur la ligne de commande.

Par exemple, pour modifier la valeur par défaut de debug, exécutez la commande suivante où 100.2410.0 est la version de Trident que vous installez :

helm install <name> netapp-trident/trident-operator --version 100.2410.0  --create-namespace --namespace trident --set tridentDebug=true

Options de configuration

Ce tableau et le values.yaml Le fichier, qui fait partie du graphique Helm, fournit la liste des clés et leurs valeurs par défaut.

Option Description Valeur par défaut

nodeSelector

Libellés des nœuds pour l'affectation des pods

podAnnotations

Annotations de pod

deploymentAnnotations

Annotations de déploiement

tolerations

Tolérances pour l'affectation de pod

affinity

Affinité pour l'affectation de pod

affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        - matchExpressions:
            - key: kubernetes.io/arch
              operator: In
              values:
              - arm64
              - amd64
            - key: kubernetes.io/os
              operator: In
              values:
              - linux
Avertissement Ne supprimez pas l'affinité par défaut du fichier values.yaml. Lorsque vous souhaitez fournir une affinité personnalisée, étendez l'affinité par défaut.

tridentControllerPluginNodeSelector

Sélecteurs de nœuds supplémentaires pour les pods. Reportez-vous à la section Présentation des pods de contrôleur et des nœuds pour plus d'informations.

tridentControllerPluginTolerations

Remplace les tolérances Kubernetes pour les pods. Reportez-vous à la section Présentation des pods de contrôleur et des nœuds pour plus d'informations.

tridentNodePluginNodeSelector

Sélecteurs de nœuds supplémentaires pour les pods. Reportez-vous à la section Présentation des pods de contrôleur et des nœuds pour plus d'informations.

tridentNodePluginTolerations

Remplace les tolérances Kubernetes pour les pods. Reportez-vous à la section Présentation des pods de contrôleur et des nœuds pour plus d'informations.

imageRegistry

Identifie le registre pour les trident-operator images , trident et autres. Laissez vide pour accepter la valeur par défaut. IMPORTANT : lorsque vous installez Trident dans un référentiel privé, si vous utilisez le imageRegistry commutateur pour spécifier l'emplacement du référentiel, n'utilisez pas /netapp/ dans le chemin du référentiel.

""

imagePullPolicy

Définit la stratégie d'extraction d'image pour le trident-operator.

IfNotPresent

imagePullSecrets

Définit les secrets d'extraction d'image pour le trident-operator, trident, et autres images.

kubeletDir

Permet de remplacer l'emplacement hôte de l'état interne du kubelet.

"/var/lib/kubelet"

operatorLogLevel

Permet de définir le niveau du journal de l'opérateur Trident sur : trace, debug, info, warn, error, ou fatal.

"info"

operatorDebug

Permet de définir le niveau du journal de l'opérateur Trident sur DEBUG.

true

operatorImage

Permet la neutralisation complète de l'image pour trident-operator.

""

operatorImageTag

Permet de remplacer la balise du trident-operator image.

""

tridentIPv6

Permet d'activer Trident pour fonctionner dans des clusters IPv6.

false

tridentK8sTimeout

Remplace le délai d'expiration par défaut de 30 secondes pour la plupart des opérations de l'API Kubernetes (s'il n'est pas égal à zéro, en secondes).

0

tridentHttpRequestTimeout

Remplace le délai par défaut de 90 secondes pour les requêtes HTTP, par 0s étant une durée infinie pour le délai d'expiration. Les valeurs négatives ne sont pas autorisées.

"90s"

tridentSilenceAutosupport

Permet de désactiver les rapports AutoSupport périodiques Trident.

false

tridentAutosupportImageTag

Permet de remplacer la balise de l'image pour le conteneur Trident AutoSupport.

<version>

tridentAutosupportProxy

Permet au conteneur Trident AutoSupport de téléphoner à domicile via un proxy HTTP.

""

tridentLogFormat

Définit le format de journalisation Trident (text`ou `json).

"text"

tridentDisableAuditLog

Désactive l'enregistreur d'audit Trident.

true

tridentLogLevel

Permet de définir le niveau de journal de Trident sur trace , debug, , info, warn, error ou fatal.

"info"

tridentDebug

Permet de définir le niveau de journal de Trident sur debug.

false

tridentLogWorkflows

Permet d'activer des flux de travail Trident spécifiques pour la consignation des traces ou la suppression des journaux.

""

tridentLogLayers

Permet d'activer des couches Trident spécifiques pour la consignation des tracés ou la suppression des journaux.

""

tridentImage

Permet le remplacement complet de l'image pour Trident.

""

tridentImageTag

Permet de remplacer la balise de l'image pour Trident.

""

tridentProbePort

Permet de remplacer le port par défaut utilisé pour les sondes de disponibilité/préparation Kubernetes.

""

windows

Permet d'installer Trident sur le nœud de travail Windows.

false

enableForceDetach

Permet d'activer la fonction forcer le détachement.

false

excludePodSecurityPolicy

Exclut la stratégie de sécurité du module opérateur de la création.

false

cloudProvider

Réglez sur "Azure" Lors de l'utilisation d'identités gérées ou d'une identité de cloud sur un cluster AKS. Défini sur AWS lors de l'utilisation d'une identité de cloud sur un cluster EKS.

""

cloudIdentity

Défini sur l'identité de la charge de travail (« Azure.Workload.Identity/client-ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxxx ») lors de l'utilisation de l'identité cloud sur un cluster AKS. Défini sur le rôle IAM AWS (« eks.amazonaws.com/role-arn: arn:aws:iam::123456:role/Trident-role ») lors de l'utilisation de l'identité cloud sur un cluster EKS.

""

iscsiSelfHealingInterval

Intervalle d'appel de l'auto-rétablissement iSCSI.

5m0s

iscsiSelfHealingWaitTime

Durée après laquelle l'auto-rétablissement iSCSI lance une tentative de résolution d'une session obsolète en effectuant une déconnexion et une connexion ultérieure.

7m0s

nodePrep

Permet à Trident de préparer les nœuds du cluster Kubernetes à gérer les volumes à l'aide du protocole de stockage de données spécifié. Actuellement, iscsi est la seule valeur prise en charge.

Présentation des pods de contrôleur et des nœuds

Trident s'exécute comme un seul pod de contrôleur, plus un pod de nœud sur chaque nœud worker du cluster. Le pod de nœud doit s'exécuter sur n'importe quel hôte sur lequel vous souhaitez potentiellement monter un volume Trident.

Kubernetes "sélecteurs de nœuds" et "tolérances et rejets" sont utilisés pour contraindre un pod à s'exécuter sur un nœud spécifique ou préféré. En utilisant le « ControllerPlugin » et NodePlugin, vous pouvez spécifier des contraintes et des remplacements.

  • Le plug-in du contrôleur gère le provisionnement et la gestion des volumes, tels que les snapshots et le redimensionnement.

  • Le plug-in du nœud permet d'attacher le stockage au nœud.