Skip to main content
È disponibile una versione più recente di questo prodotto.
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Distribuire l'operatore Trident utilizzando Helm (Offline mode)

È possibile distribuire l'operatore Trident e installare Trident utilizzando Helm. Questa procedura si applica alle installazioni in cui le immagini container richieste da Trident sono memorizzate in un registro privato. Se non si dispone di un registro di immagini privato, utilizzare il "processo per la distribuzione standard".

Informazioni critiche su Trident 25.10

È necessario leggere le seguenti informazioni critiche su Trident.

<strong>Informazioni critiche su Trident</strong>
  • Kubernetes 1.34 è ora supportato in Trident. Aggiorna Trident prima di aggiornare Kubernetes.

  • Trident impone rigorosamente l'uso della configurazione multipathing negli ambienti SAN, con un valore consigliato di find_multipaths: no nel file multipath.conf.

    L'utilizzo di una configurazione non multipath o l'utilizzo di find_multipaths: yes o find_multipaths: smart nel file multipath.conf causerà errori di montaggio. Trident ha raccomandato l'utilizzo di find_multipaths: no dalla release 21.07.

Distribuire l'operatore Trident e installare Trident utilizzando Helm

Utilizzando il Trident "Helm Chart" puoi distribuire l'operatore Trident e installare Trident in un solo passaggio.

Verificate "la panoramica dell'installazione" per assicurarvi di aver soddisfatto i prerequisiti di installazione e di aver selezionato l'opzione di installazione corretta per il vostro ambiente.

Prima di iniziare

Oltre al "prerequisiti di deployment" è necessario "Helm versione 3".

Importante Quando si installa Trident in un repository privato, se si utilizza l'opzione imageRegistry per specificare la posizione del repository, non utilizzare /netapp/ nel percorso del repository.
Passaggi
  1. Aggiungi il repository Trident Helm:

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
  2. Usa helm install e specifica un nome per il deployment e la posizione del registro delle immagini. Il tuo "Trident e immagini CSI" può essere collocato in un registro o in registri diversi, ma tutte le immagini CSI devono essere collocate nello stesso registro. Negli esempi, 100.2506.0 è la versione di Trident che stai installando.

    Immagini in un registry
    helm install <name> netapp-trident/trident-operator --version 100.2506.0 --set imageRegistry=<your-registry> --create-namespace --namespace <trident-namespace> --set nodePrep={iscsi}
    Immagini in diversi registri
    helm install <name> netapp-trident/trident-operator --version 100.2506.0 --set imageRegistry=<your-registry> --set operatorImage=<your-registry>/trident-operator:25.10.0 --set tridentAutosupportImage=<your-registry>/trident-autosupport:25.10 --set tridentImage=<your-registry>/trident:25.10.0 --create-namespace --namespace <trident-namespace> --set nodePrep={iscsi}
    Nota Se hai già creato uno spazio dei nomi per Trident, il parametro --create-namespace non creerà uno spazio dei nomi aggiuntivo.

È possibile utilizzare helm list per esaminare i dettagli dell'installazione, come nome, namespace, chart, stato, versione dell'app e numero di revisione.

Passare i dati di configurazione durante l'installazione

Esistono due modi per passare i dati di configurazione durante l'installazione:

Opzione Descrizione

--values (o -f)

Specificare un file YAML con le sovrascritture. Questo può essere specificato più volte e il file più a destra avrà la precedenza.

--set

Specificare le sovrascritture sulla riga di comando.

Ad esempio, per modificare il valore predefinito di debug, eseguire il seguente comando dove 100.2506.0 è la versione di Trident che si sta installando:

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

Per aggiungere il valore nodePrep, eseguire il seguente comando:

helm install <name> netapp-trident/trident-operator --version 100.2506.0  --create-namespace --namespace trident --set nodePrep={iscsi}

Opzioni di configurazione

Questa tabella e il file values.yaml, che fa parte dell'Helm chart, forniscono l'elenco delle chiavi e i loro valori predefiniti.

Attenzione Non rimuovere l'affinità predefinita dal file values.yaml. Quando vuoi fornire un'affinità personalizzata, estendi l'affinità predefinita.
Opzione Descrizione Predefinito

nodeSelector

Etichette dei nodi per l'assegnazione dei pod

podAnnotations

Annotazioni del pod

deploymentAnnotations

Annotazioni di distribuzione

tolerations

Tolleranze per l'assegnazione dei pod

affinity

Affinità per l'assegnazione dei pod

affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        - matchExpressions:
            - key: kubernetes.io/arch
              operator: In
              values:
              - arm64
              - amd64
            - key: kubernetes.io/os
              operator: In
              values:
              - linux
Attenzione Non rimuovere l'affinità predefinita dal file values.yaml. Quando vuoi fornire un'affinità personalizzata, estendi l'affinità predefinita.

tridentControllerPluginNodeSelector

Selettori di nodi aggiuntivi per i pod. Consultare "Comprendere i pod controller e i pod nodo" per i dettagli.

tridentControllerPluginTolerations

Sovrascrive le tolleranze di Kubernetes per i pod. Consultare "Comprendere i pod controller e i pod nodo" per i dettagli.

tridentNodePluginNodeSelector

Selettori di nodi aggiuntivi per i pod. Consultare "Comprendere i pod controller e i pod nodo" per i dettagli.

tridentNodePluginTolerations

Sovrascrive le tolleranze di Kubernetes per i pod. Consultare "Comprendere i pod controller e i pod nodo" per i dettagli.

imageRegistry

Identifica il registro per le trident-operator, trident e altre immagini. Lascia vuoto per accettare l'impostazione predefinita. IMPORTANTE: Quando si installa Trident in un repository privato, se si utilizza l'opzione imageRegistry per specificare la posizione del repository, non usare /netapp/ nel percorso del repository.

""

imagePullPolicy

Imposta il criterio di pull dell'immagine per il trident-operator.

IfNotPresent

imagePullSecrets

Imposta i segreti di estrazione delle immagini per le trident-operator, trident e altre immagini.

kubeletDir

Consente di sovrascrivere la posizione host dello stato interno di kubelet.

"/var/lib/kubelet"

operatorLogLevel

Consente di impostare il livello di log dell'operatore Trident su: trace, debug, info, warn, error o fatal.

"info"

operatorDebug

Consente di impostare il livello di log dell'operatore Trident su debug.

true

operatorImage

Consente la completa sostituzione dell'immagine per trident-operator.

""

operatorImageTag

Permette di sovrascrivere il tag dell' trident-operator immagine.

""

tridentIPv6

Consente di abilitare Trident per funzionare in cluster IPv6.

false

tridentK8sTimeout

Sovrascrive il timeout predefinito di 180 secondi per la maggior parte delle operazioni dell'API Kubernetes (se diverso da zero, in secondi).

Nota Il tridentK8sTimeout parametro è applicabile solo per l'installazione Trident.

180

tridentHttpRequestTimeout

Sovrascrive il timeout predefinito di 90 secondi per le richieste HTTP, con 0s che rappresenta una durata infinita per il timeout. Non sono ammessi valori negativi.

"90s"

tridentSilenceAutosupport

Consente di disabilitare la segnalazione periodica AutoSupport di Trident.

false

tridentAutosupportImageTag

Consente di sovrascrivere il tag dell'immagine per il container Trident AutoSupport.

<version>

tridentAutosupportProxy

Consente al container Trident AutoSupport di telefonare a casa tramite un proxy HTTP.

""

tridentLogFormat

Imposta il formato di logging Trident (text o json).

"text"

tridentDisableAuditLog

Disattiva il logger di audit di Trident.

true

tridentLogLevel

Consente di impostare il livello di log di Trident su: trace, debug, info, warn, error, o fatal.

"info"

tridentDebug

Consente di impostare il livello di log di Trident su debug.

false

tridentLogWorkflows

Consente di abilitare flussi di lavoro Trident specifici per la registrazione delle tracce o la soppressione dei log.

""

tridentLogLayers

Consente di abilitare specifici livelli Trident per la registrazione delle tracce o la soppressione dei log.

""

tridentImage

Consente la completa sostituzione dell'immagine per Trident.

""

tridentImageTag

Consente di sovrascrivere il tag dell'immagine per Trident.

""

tridentProbePort

Consente di sovrascrivere la porta predefinita utilizzata per le sonde liveness/readiness di Kubernetes.

""

windows

Consente l'installazione di Trident sul nodo worker di Windows.

false

enableForceDetach

Consente di abilitare la funzionalità di distacco forzato. È possibile automatizzare il processo di distacco forzato tramite l'integrazione con l'operatore node health check (NHC). Per informazioni, vedere "Automatizzare il failover delle applicazioni stateful con Trident".

false

excludePodSecurityPolicy

Esclude la pod security policy dell'operatore dalla creazione.

false

nodePrep

Consente a Trident di preparare i nodi del cluster Kubernetes per gestire i volumi utilizzando il protocollo storage specificato. Attualmente, iscsi è l'unico valore supportato.

Nota A partire da OpenShift 4.19, la versione minima di Trident supportata per questa funzionalità è la 25.06.1.

resources

Imposta i limiti delle risorse Kubernetes e le richieste per i pod del controller, del nodo e dell'operatore Trident. Puoi configurare CPU e memoria per ogni container e sidecar per gestire l'allocazione delle risorse in Kubernetes.

Per ulteriori informazioni sulla configurazione delle richieste e dei limiti delle risorse, fare riferimento a "Gestione delle risorse per pod e container".

Attenzione
  • NON modificare i nomi di alcun container o campo.

  • NON modificare l'indentazione - l'indentazione YAML è fondamentale per una corretta analisi.

Nota
  • Nessun limite viene applicato per impostazione predefinita: solo le richieste hanno valori predefiniti.

  • I nomi dei container sono elencati così come appaiono nelle specifiche del pod.

  • I sidecar sono elencati sotto ogni container principale.

  • Controllare il campo status.CurrentInstallationParams TORC per visualizzare i valori attualmente applicati.

resources:
  controller:
    trident-main:
      requests:
        cpu: 10m
        memory: 80Mi
      limits:
          cpu:
          memory:
    csi-provisioner:
      requests:
        cpu: 2m
        memory: 20Mi
      limits:
        cpu:
        memory:
    csi-attacher:
      requests:
        cpu: 2m
        memory: 20Mi
      limits:
        cpu:
        memory:
    csi-resizer:
      requests:
        cpu: 3m
        memory: 20Mi
      limits:
        cpu:
        memory:
    csi-snapshotter:
      requests:
        cpu: 2m
        memory: 20Mi
      limits:
        cpu:
        memory:
    trident-autosupport:
      requests:
        cpu: 1m
        memory: 30Mi
      limits:
        cpu:
        memory:
  node:
    linux:
      trident-main:
        requests:
          cpu: 10m
          memory: 60Mi
        limits:
          cpu:
          memory:
      node-driver-registrar:
        requests:
          cpu: 1m
          memory: 10Mi
        limits:
          cpu:
          memory:
    windows:
      trident-main:
        requests:
          cpu: 6m
          memory: 40Mi
        limits:
          cpu:
          memory:
      node-driver-registrar:
        requests:
          cpu: 6m
          memory: 40Mi
        limits:
          cpu:
          memory:
      liveness-probe:
        requests:
          cpu: 2m
          memory: 40Mi
        limits:
          cpu:
          memory:
  operator:
    requests:
      cpu: 10m
      memory: 40Mi
    limits:
      cpu:
      memory: