Skip to main content
Uma versão mais recente deste produto está disponível.
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Implantar o operador Trident usando Helm (modo offline)

Você pode implantar o operador Trident e instalar o Trident usando o Helm. Esse processo se aplica a instalações onde as imagens de contêiner necessárias pelo Trident estão armazenadas em um registro privado. Se você não tiver um registro de imagens privado, use o "processo para implantação padrão".

Informações críticas sobre Trident 25.10

Você deve ler as seguintes informações críticas sobre Trident.

<strong>Informações críticas sobre Trident</strong>
  • Kubernetes 1.34 agora é compatível com Trident. Atualize Trident antes de atualizar Kubernetes.

  • Trident impõe rigorosamente o uso da configuração de multipath em ambientes SAN, com um valor recomendado de find_multipaths: no no arquivo multipath.conf.

    O uso de configuração sem multipath ou o uso de find_multipaths: yes ou find_multipaths: smart valor no arquivo multipath.conf resultará em falhas de montagem. Trident recomenda o uso de find_multipaths: no desde o lançamento 21.07.

Implante o operador Trident e instale o Trident usando o Helm

Utilizando o Trident "Helm Chart" você pode implantar o operador Trident e instalar o Trident em uma única etapa.

Revise "visão geral da instalação" para garantir que você atendeu aos pré-requisitos de instalação e selecionou a opção de instalação correta para o seu ambiente.

Antes de começar

Além do "pré-requisitos de deployment" você precisa de "Helm versão 3".

Importante Ao instalar Trident em um repositório privado, se você estiver usando o imageRegistry switch para especificar a localização do repositório, não use /netapp/ no caminho do repositório.
Passos
  1. Adicione o repositório Trident:

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
  2. Use helm install e especifique um nome para sua implantação e o local do registro de imagens. Seu "Imagens do Trident e do CSI" pode estar localizado em um registro ou em registros diferentes, mas todas as imagens CSI devem estar no mesmo registro. Nos exemplos, 100.2506.0 é a versão do Trident que você está instalando.

    Imagens em um registro
    helm install <name> netapp-trident/trident-operator --version 100.2506.0 --set imageRegistry=<your-registry> --create-namespace --namespace <trident-namespace> --set nodePrep={iscsi}
    Imagens em diferentes repositórios
    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}
    Observação Se você já criou um namespace para Trident, o --create-namespace parâmetro não criará um namespace adicional.

Você pode usar helm list para revisar detalhes da instalação, como nome, namespace, chart, status, versão do app e número da revisão.

Passe os dados de configuração durante a instalação

Existem duas maneiras de passar dados de configuração durante a instalação:

Opção Descrição

--values (ou -f)

Especifique um arquivo YAML com sobrescritas. Isso pode ser especificado várias vezes e o arquivo mais à direita terá precedência.

--set

Especifique as substituições na linha de comando.

Por exemplo, para alterar o valor padrão de debug, execute o seguinte comando onde 100.2506.0 é a versão do Trident que você está instalando:

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

Para adicionar o valor nodePrep, execute o seguinte comando:

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

Opções de configuração

Esta tabela e o arquivo values.yaml, que faz parte do Helm chart, fornecem a lista de chaves e seus valores padrão.

Aviso Não remova a afinidade padrão do arquivo values.yaml. Quando desejar fornecer uma afinidade personalizada, estenda a afinidade padrão.
Opção Descrição Padrão

nodeSelector

Rótulos de nós para atribuição de pods

podAnnotations

Anotações de pod

deploymentAnnotations

Anotações de deployment

tolerations

Tolerâncias para atribuição de pod

affinity

Afinidade para atribuição de pod

affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        - matchExpressions:
            - key: kubernetes.io/arch
              operator: In
              values:
              - arm64
              - amd64
            - key: kubernetes.io/os
              operator: In
              values:
              - linux
Aviso Não remova a afinidade padrão do arquivo values.yaml. Quando desejar fornecer uma afinidade personalizada, estenda a afinidade padrão.

tridentControllerPluginNodeSelector

Seletores de nós adicionais para pods. Consulte "Entendendo os pods do controlador e os pods do nó" para obter detalhes.

tridentControllerPluginTolerations

Substitui as tolerâncias do Kubernetes para pods. Consulte "Entendendo os pods do controlador e os pods do nó" para obter detalhes.

tridentNodePluginNodeSelector

Seletores de nós adicionais para pods. Consulte "Entendendo os pods do controlador e os pods do nó" para obter detalhes.

tridentNodePluginTolerations

Substitui as tolerâncias do Kubernetes para pods. Consulte "Entendendo os pods do controlador e os pods do nó" para obter detalhes.

imageRegistry

Identifica o registro para as trident-operator, trident e outras imagens. Deixe em branco para aceitar o padrão. IMPORTANTE: Ao instalar Trident em um repositório privado, se você estiver usando o imageRegistry para especificar a localização do repositório, não use /netapp/ no caminho do repositório.

""

imagePullPolicy

Define a política de pull de imagens para o trident-operator.

IfNotPresent

imagePullSecrets

Define os segredos de extração de imagens para as trident-operator, trident e outras imagens.

kubeletDir

Permite substituir a localização do host do estado interno do kubelet.

"/var/lib/kubelet"

operatorLogLevel

Permite definir o nível de log do operador Trident para: trace, debug, info, warn, error, ou fatal.

"info"

operatorDebug

Permite definir o nível de registro do operador Trident como depuração.

true

operatorImage

Permite a substituição completa da imagem para trident-operator.

""

operatorImageTag

Permite sobrescrever a tag da trident-operator imagem.

""

tridentIPv6

Permite habilitar Trident para funcionar em clusters IPv6.

false

tridentK8sTimeout

Substitui o tempo limite padrão de 180 segundos para a maioria das operações da API do Kubernetes (se diferente de zero, em segundos).

Observação O `tridentK8sTimeout`parâmetro aplica-se apenas à instalação do Trident.

180

tridentHttpRequestTimeout

Substitui o tempo limite padrão de 90 segundos para as solicitações HTTP, com 0s sendo uma duração infinita para o tempo limite. Valores negativos não são permitidos.

"90s"

tridentSilenceAutosupport

Permite desativar o relatório periódico AutoSupport do Trident.

false

tridentAutosupportImageTag

Permite substituir a tag da imagem para o contêiner Trident AutoSupport.

<version>

tridentAutosupportProxy

Permite que o contêiner Trident AutoSupport se comunique com um servidor externo via um proxy HTTP.

""

tridentLogFormat

Define o formato de registro do Trident (text ou json).

"text"

tridentDisableAuditLog

Desativa o registrador de auditoria do Trident.

true

tridentLogLevel

Permite definir o nível de log do Trident para: trace, debug, info, warn, error, ou fatal.

"info"

tridentDebug

Permite definir o nível de registro do Trident para debug.

false

tridentLogWorkflows

Permite que fluxos de trabalho específicos do Trident sejam habilitados para registro de rastreamento ou supressão de logs.

""

tridentLogLayers

Permite que camadas específicas do Trident sejam ativadas para registro de rastreamento ou supressão de logs.

""

tridentImage

Permite a substituição completa da imagem para Trident.

""

tridentImageTag

Permite substituir a tag da imagem para Trident.

""

tridentProbePort

Permite substituir a porta padrão usada para as sondagens de liveness/readiness do Kubernetes.

""

windows

Permite que o Trident seja instalado em nó de trabalho Windows.

false

enableForceDetach

Permite ativar o recurso de desanexação forçada. Você pode automatizar o processo de desanexação forçada por meio da integração com o operador de verificação de integridade do nó (NHC). Para obter informações, consulte "Automatizando o failover de aplicações stateful com Trident".

false

excludePodSecurityPolicy

Exclui a política de segurança do pod do operador da criação.

false

nodePrep

Permite que Trident prepare os nós do cluster Kubernetes para gerenciar volumes usando o protocolo de storage especificado. Atualmente, iscsi é o único valor suportado.

Observação A partir do OpenShift 4.19, a versão mínima do Trident compatível com este recurso é 25.06.1.

resources

Define os limites e solicitações de recursos do Kubernetes para os pods do Trident controller, node e operator. Você pode configurar CPU e memória para cada contêiner e sidecar para gerenciar a alocação de recursos no Kubernetes.

Para mais informações sobre como configurar solicitações e limites de recursos, consulte "Gerenciamento de recursos para pods e contêineres".

Aviso
  • NÃO altere os nomes de nenhum container ou campo.

  • NÃO altere a indentação - a indentação do YAML é fundamental para a análise correta.

Observação
  • Por padrão, não há limites aplicados - apenas as solicitações possuem valores padrão.

  • Os nomes dos contêineres são listados conforme aparecem nas especificações do pod.

  • Os sidecars estão listados sob cada contêiner principal.

  • Verifique o campo status.CurrentInstallationParams do TORC para visualizar os valores atualmente aplicados.

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: