Skip to main content
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Puesta en marcha del operador de Trident con Helm (modo estándar)

Colaboradores netapp-aruldeepa juliantap

Puede desplegar el operador Trident e instalar Trident con Helm. Este proceso se aplica a instalaciones en las que las imágenes de contenedor requeridas por Trident no se almacenan en un registro privado. Si tiene un registro de imágenes privado, utilice el "proceso de puesta en marcha sin conexión".

Información crítica sobre Trident 25.10

Debe leer la siguiente información crítica sobre Trident.

<strong>Información crítica sobre Trident </strong>
  • Kubernetes 1.34 ahora es compatible con Trident. Actualice Trident antes de actualizar Kubernetes.

  • Trident aplica estrictamente el uso de la configuración de múltiples rutas en entornos SAN, con un valor recomendado de find_multipaths: no en archivo multipath.conf.

    Uso de la configuración sin multivía o el uso de find_multipaths: yes o. find_multipaths: smart el valor del archivo multipath.conf provocará fallos de montaje. Trident ha recomendado el uso de find_multipaths: no desde la versión 21.07.

Despliegue el operador Trident e instale Trident usando Helm

Usar Trident "Carta del timón" Es posible poner en marcha el operador de Trident e instalar Trident en un paso.

Revisar "descripción general de la instalación" para asegurarse de cumplir con los requisitos previos de instalación y seleccionar la opción de instalación correcta para el entorno.

Antes de empezar

Además de la "requisitos previos a la implementación" que necesita "Versión timón 3".

Pasos
  1. Añada el repositorio Helm de Trident:

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
  2. Utilice helm install y especifique un nombre para la implementación como en el siguiente ejemplo, donde 100.2506.0 se encuentra la versión de Trident que está instalando.

    helm install <name> netapp-trident/trident-operator --version 100.2506.0 --create-namespace --namespace <trident-namespace>
    Nota Si ya creó un espacio de nombres para Trident, el --create-namespace el parámetro no creará un espacio de nombres adicional.

Puede utilizar helm list para revisar detalles de la instalación como nombre, espacio de nombres, gráfico, estado, versión de la aplicación, y el número de revisión.

Pasar los datos de configuración durante la instalación

Existen dos formas de pasar los datos de configuración durante la instalación:

Opción Descripción

--values (o. -f)

Especifique un archivo YAML con anulaciones. Esto se puede especificar varias veces y el archivo de la derecha tendrá prioridad.

--set

Especifique anulaciones en la línea de comandos.

Por ejemplo, para cambiar el valor predeterminado de debug, ejecute el siguiente comando donde 100.2506.0 es la versión de Trident que está instalando:

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

Opciones de configuración

Esta tabla y la values.yaml File, que forma parte del gráfico Helm, proporciona la lista de claves y sus valores predeterminados.

Opción Descripción Predeterminado

nodeSelector

Etiquetas de nodo para la asignación de pod

podAnnotations

Anotaciones del pod

deploymentAnnotations

Anotaciones de despliegue

tolerations

Toleraciones para la asignación de POD

affinity

Afinidad para la asignación de pod

affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        - matchExpressions:
            - key: kubernetes.io/arch
              operator: In
              values:
              - arm64
              - amd64
            - key: kubernetes.io/os
              operator: In
              values:
              - linux
Advertencia No elimine la afinidad predeterminada del archivo values.yaml. Cuando desee proporcionar una afinidad personalizada, amplíe la afinidad predeterminada.

tridentControllerPluginNodeSelector

Selectores de nodos adicionales para POD. Consulte Descripción de los pods de la controladora y los pods de nodo para obtener más detalles.

tridentControllerPluginTolerations

Anula la toleración de Kubernetes en pods. Consulte Descripción de los pods de la controladora y los pods de nodo para obtener más detalles.

tridentNodePluginNodeSelector

Selectores de nodos adicionales para POD. Consulte Descripción de los pods de la controladora y los pods de nodo para obtener más detalles.

tridentNodePluginTolerations

Anula la toleración de Kubernetes en pods. Consulte Descripción de los pods de la controladora y los pods de nodo para obtener más detalles.

imageRegistry

Identifica el registro de trident-operator , trident y otras imágenes. Déjelo vacío para aceptar el valor predeterminado. IMPORTANTE: Al instalar Trident en un repositorio privado, si está utilizando el imageRegistry conmutador para especificar la ubicación del repositorio, no lo utilice /netapp/ en la ruta de acceso del repositorio.

""

imagePullPolicy

Establece la política de extracción de imágenes para el trident-operator.

IfNotPresent

imagePullSecrets

Establece los secretos de extracción de imágenes para el trident-operator, trident, y otras imágenes.

kubeletDir

Permite anular la ubicación del host del estado interno de kubelet.

"/var/lib/kubelet"

operatorLogLevel

Permite establecer el nivel de registro del operador Trident en: trace, debug, info, warn, error, o. fatal.

"info"

operatorDebug

Permite configurar en debug el nivel de registro del operador Trident.

true

operatorImage

Permite la sustitución completa de la imagen durante trident-operator.

""

operatorImageTag

Permite sobrescribir la etiqueta del trident-operator imagen.

""

tridentIPv6

Permite permitir que Trident funcione en clústeres de IPv6.

false

tridentK8sTimeout

Anula el tiempo de espera predeterminado de 30 segundos para la mayoría de las operaciones de la API de Kubernetes (si no es cero, en segundos).

0

tridentHttpRequestTimeout

Sustituye el timeout por defecto de 90 segundos para las solicitudes HTTP, con 0s ser una duración infinita para el timeout. No se permiten valores negativos.

"90s"

tridentSilenceAutosupport

Permite deshabilitar la generación de informes periódicos de AutoSupport de Trident.

false

tridentAutosupportImageTag

Permite sobrescribir la etiqueta de la imagen para el contenedor Trident AutoSupport.

<version>

tridentAutosupportProxy

Permite al contenedor Trident AutoSupport llamar a casa a través de un proxy HTTP.

""

tridentLogFormat

Define el formato de registro de Trident (text`o `json).

"text"

tridentDisableAuditLog

Deshabilita el registrador de auditorías de Trident.

true

tridentLogLevel

Permite definir el nivel de log de Trident en: trace, , , , , debug, info warn error O fatal.

"info"

tridentDebug

Permite configurar el nivel de registro de Trident a debug . Puede automatizar el proceso de desconexión forzada mediante la integración con el operador de comprobación del estado del nodo (NHC). Para obtener más información, consulte"Automatización de la conmutación por error de aplicaciones con estado con Trident" .

false

tridentLogWorkflows

Permite habilitar flujos de trabajo de Trident específicos para el registro de seguimiento o la supresión de registros.

""

tridentLogLayers

Permite activar capas de Trident específicas para el registro de rastreo o la supresión de registros.

""

tridentImage

Permite la sustitución completa de la imagen para Trident.

""

tridentImageTag

Permite sobrescribir la etiqueta de la imagen para Trident.

""

tridentProbePort

Permite sobrescribir el puerto predeterminado utilizado para las sondas de vida/preparación de Kubernetes.

""

windows

Permite instalar Trident en el nodo de trabajo de Windows.

false

enableForceDetach

Permite habilitar la función Forzar separación.

false

excludePodSecurityPolicy

Excluye la política de seguridad del pod del operador de la creación.

false

cloudProvider

Establezca en "Azure" Cuando se utilizan identidades gestionadas o una identidad de nube en un clúster de AKS. Establecer en «AWS» cuando se utiliza una identidad de nube en un clúster de EKS.

""

cloudIdentity

Defina la identidad de carga de trabajo («azure.workload.identity/client-id: Xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx») cuando utilice la identidad de cloud en un clúster de AKS. Establezca el rol de AWS IAM ('eks.amazonaws.com/role-arn: arn:aws:iam::123456:ROLE/Trident-ROLE') cuando utilice la identidad de cloud en un clúster de EKS.

""

iscsiSelfHealingInterval

El intervalo en el que se invoca la reparación automática de iSCSI.

5m0s

iscsiSelfHealingWaitTime

La duración después del cual la reparación automática de iSCSI inicia un intento de resolver una sesión obsoleta realizando un cierre de sesión y un inicio de sesión posterior.

7m0s

nodePrep

Permite a Trident preparar los nodos del clúster Kubernetes para administrar volúmenes utilizando el protocolo de almacenamiento de datos especificado. Actualmente, iscsi Es el único valor admitido. NOTA: A partir de OpenShift 4.19, la versión mínima de Trident compatible con esta función es 25.06.1.

enableConcurrency

Permite operaciones simultáneas del controlador Trident para mejorar el rendimiento.

Nota Vista previa técnica: Esta función es experimental y actualmente admite flujos de trabajo paralelos limitados con los controladores ONTAP-NAS (solo NFS) y ONTAP-SAN (NVMe para unified ONTAP 9), además de la vista previa técnica existente para el controlador ONTAP-SAN (protocolos iSCSI y FCP en unified ONTAP 9).

falso

k8sAPIQPS

El límite de consultas por segundo (QPS) utilizado por el controlador mientras se comunica con el servidor de API de Kubernetes. El valor de ráfaga se establece automáticamente en función del valor QPS.

100; opcional

resources

Establece los límites de recursos y las solicitudes de Kubernetes para los pods del controlador, nodo y operador de Trident . Puedes configurar la CPU y la memoria para cada contenedor y sidecar para gestionar la asignación de recursos en Kubernetes.

Para obtener más información sobre la configuración de solicitudes y límites de recursos, consulte"Gestión de recursos para pods y contenedores" .

Advertencia
  • NO cambie los nombres de ningún contenedor ni campo.

  • NO cambie la sangría: la sangría de YAML es fundamental para un análisis correcto.

Nota
  • Por defecto no se aplican límites; solo las solicitudes tienen valores predeterminados y se aplican automáticamente si no se especifican.

  • Los nombres de los contenedores se enumeran tal como aparecen en las especificaciones del pod.

  • Los sidecares se enumeran debajo de cada contenedor principal.

  • Consulta el TORC status.CurrentInstallationParams campo para ver los valores aplicados actualmente.

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:

httpsMetrics

Habilita HTTPS para el punto de conexión de métricas de Prometheus.

falso

hostNetwork

Habilita la conexión en red del host para el controlador Trident . Esto resulta útil cuando se desea separar el tráfico del frontend del tráfico del backend en una red multihome.

falso

Descripción de los pods de la controladora y los pods de nodo

Trident se ejecuta como un pod de controladora único, más un pod de nodo en cada nodo trabajador del clúster. El pod de nodo debe ejecutarse en cualquier host en el que desee potencialmente montar un volumen de Trident.

Kubernetes "selectores de nodos" y.. "toleraciones y tintes" se utilizan para restringir un pod para ejecutarse en un nodo concreto o preferido. Uso del "ControllerPlugin" y. NodePlugin, puede especificar restricciones y anulaciones.

  • El complemento de la controladora se ocupa del aprovisionamiento y la gestión de volúmenes, como snapshots y redimensionamiento.

  • El complemento de nodo se encarga de conectar el almacenamiento al nodo.