Skip to main content
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Implementare l'operatore Trident utilizzando Helm (modalità standard)

Collaboratori

È possibile distribuire l'operatore Trident e installare Trident utilizzando Helm. Questo processo si applica alle installazioni in cui le immagini contenitore richieste da Trident non sono memorizzate in un registro privato. Se si dispone di un registro delle immagini privato, utilizzare "processo per l'implementazione offline".

Informazioni critiche su Trident 24,10

È necessario leggere le seguenti informazioni critiche su Trident.

<strong> informazioni aggiornate su Trident </strong>
  • Kubernetes 1,31 è ora supportato in Trident. Aggiornare Trident prima di aggiornare Kubernetes.

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

    Utilizzo di configurazioni o utilizzo non multipathing di find_multipaths: yes oppure find_multipaths: smart il valore nel file multipath.conf causerà errori di montaggio. Trident ha raccomandato l'uso di find_multipaths: no dalla release 21.07.

Distribuire l'operatore Trident e installare Trident utilizzando Helm

Utilizzo di Trident "Grafico di comando" È possibile implementare l'operatore Trident e installare Trident in un'unica fase.

Revisione "panoramica dell'installazione" per assicurarsi di aver soddisfatto i prerequisiti di installazione e selezionato l'opzione di installazione corretta per il proprio ambiente.

Prima di iniziare

Oltre a "prerequisiti per l'implementazione" di cui hai bisogno "Helm versione 3".

Fasi
  1. Aggiungere il repository Trident Helm:

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
  2. Utilizzare helm install e specificare un nome per la distribuzione come nell'esempio seguente dove si trova 100.2404.0 la versione di Trident che si sta installando.

    helm install <name> netapp-trident/trident-operator --version 100.2410.0 --create-namespace --namespace <trident-namespace>
    Nota Se è già stato creato uno spazio dei nomi per Trident, il --create-namespace il parametro non crea uno spazio dei nomi aggiuntivo.

È possibile utilizzare helm list per rivedere i dettagli dell'installazione, ad esempio nome, spazio dei nomi, grafico, stato, versione dell'applicazione, 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 override. Questo valore può essere specificato più volte e il file più a destra avrà la precedenza.

--set

Specificare le sostituzioni sulla riga di comando.

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

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

Opzioni di configurazione

Questa tabella e il values.yaml Il file, che fa parte del grafico Helm, fornisce l'elenco delle chiavi e i relativi valori predefiniti.

Opzione Descrizione Predefinito

nodeSelector

Etichette dei nodi per l'assegnazione dei pod

podAnnotations

Annotazioni Pod

deploymentAnnotations

Annotazioni di implementazione

tolerations

Pedaggi per l'assegnazione del pod

affinity

Affinità per l'assegnazione del 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. Se si desidera fornire un'affinità personalizzata, estendere l'affinità predefinita.

tridentControllerPluginNodeSelector

Selettori di nodi aggiuntivi per i pod. Fare riferimento a. Comprensione dei pod controller e dei pod di nodi per ulteriori informazioni.

tridentControllerPluginTolerations

Ignora le tolleranze Kubernetes per i pod. Fare riferimento a. Comprensione dei pod controller e dei pod di nodi per ulteriori informazioni.

tridentNodePluginNodeSelector

Selettori di nodi aggiuntivi per i pod. Fare riferimento a. Comprensione dei pod controller e dei pod di nodi per ulteriori informazioni.

tridentNodePluginTolerations

Ignora le tolleranze Kubernetes per i pod. Fare riferimento a. Comprensione dei pod controller e dei pod di nodi per ulteriori informazioni.

imageRegistry

Identifica il Registro di sistema per trident-operator , trident e altre immagini. Lasciare vuoto per accettare l'impostazione predefinita. IMPORTANTE: Quando si installa Trident in un repository privato, se si utilizza imageRegistry lo switch per specificare la posizione del repository, non utilizzare /netapp/ nel percorso del repository.

""

imagePullPolicy

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

IfNotPresent

imagePullSecrets

Imposta i segreti di pull dell'immagine per trident-operator, `trident`e altre immagini.

kubeletDir

Consente di ignorare la posizione host dello stato interno del 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 di eseguire l'override completo dell'immagine per trident-operator.

""

operatorImageTag

Consente di sovrascrivere il tag di trident-operator immagine.

""

tridentIPv6

Permette a Trident di lavorare in cluster IPv6.

false

tridentK8sTimeout

Esegue l'override del timeout predefinito di 30 secondi per la maggior parte delle operazioni API di Kubernetes (se diverso da zero, in secondi).

0

tridentHttpRequestTimeout

Esegue l'override del timeout predefinito di 90 secondi per le richieste HTTP, con 0s è una durata infinita per il timeout. Non sono consentiti valori negativi.

"90s"

tridentSilenceAutosupport

Consente di disattivare la creazione di rapporti periodici AutoSupport Trident.

false

tridentAutosupportImageTag

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

<version>

tridentAutosupportProxy

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

""

tridentLogFormat

Consente di impostare il formato di registrazione Trident (text`o `json).

"text"

tridentDisableAuditLog

Disattiva il registro di controllo Trident.

true

tridentLogLevel

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

"info"

tridentDebug

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

false

tridentLogWorkflows

Consente di attivare flussi di lavoro Trident specifici per la registrazione delle tracce o l'eliminazione dei registri.

""

tridentLogLayers

Consente di attivare livelli Trident specifici per la registrazione delle tracce o la soppressione dei registri.

""

tridentImage

Consente la sostituzione completa dell'immagine per Trident.

""

tridentImageTag

Consente di sovrascrivere il tag dell'immagine per Trident.

""

tridentProbePort

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

""

windows

Consente di installare Trident sul nodo di lavoro Windows.

false

enableForceDetach

Consente di attivare la funzione di distacco forzato.

false

excludePodSecurityPolicy

Esclude la creazione della policy di sicurezza del pod operatore.

false

cloudProvider

Impostare su "Azure" Quando si utilizzano identità gestite o un'identità cloud su un cluster AKS. Impostato su "AWS" quando si utilizza un'identità cloud su un cluster EKS.

""

cloudIdentity

Impostare sull'identità del workload ("Azure.workload.Identity/client-id: Xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx") quando si utilizza l'identità cloud su un cluster AKS. Impostato sul ruolo AWS IAM ("'eks.amazonaws.com/role-arn: arn:AWS:iam::123456:role/Trident-role'") quando si utilizza l'identità cloud su un cluster EKS.

""

iscsiSelfHealingInterval

Intervallo in cui viene richiamata la riparazione automatica iSCSI.

5m0s

iscsiSelfHealingWaitTime

La durata dopo la quale l'autoriparazione iSCSI avvia un tentativo di risolvere una sessione obsoleta eseguendo una disconnessione e un login successivo.

7m0s

nodePrep

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

Comprensione dei pod controller e dei pod di nodi

Trident funziona come un singolo pod controller, più un pod di nodo su ciascun nodo di lavoro nel cluster. Il pod di nodo deve essere in esecuzione su qualsiasi host in cui si desidera montare potenzialmente un volume Trident.

Kubernetes "selettori di nodi" e. "tollerazioni e contamini" vengono utilizzati per vincolare l'esecuzione di un pod su un nodo specifico o preferito. Utilizzo di`ControllerPlugin` e. NodePlugin, è possibile specificare vincoli e override.

  • Il plug-in del controller gestisce il provisioning e la gestione dei volumi, ad esempio snapshot e ridimensionamento.

  • Il plug-in del nodo gestisce il collegamento dello storage al nodo.