Despliega manualmente el operador Trident (modo offline)
Puedes desplegar manualmente el operador Trident para instalar Trident. Este proceso aplica a instalaciones donde las imágenes de contenedor requeridas por Trident se almacenan en un registro privado. Si no tienes un registro de imágenes privado, usa el "proceso para la implementación estándar".
Información crítica sobre Trident10
Debes leer la siguiente información crítica sobre Trident.
<strong>Información crítica sobre Trident</strong>
-
Kubernetes 1.34 ya es compatible con Trident. Actualiza Trident antes de actualizar Kubernetes.
-
Trident impone estrictamente el uso de la configuración de multivía en entornos SAN, con un valor recomendado de
find_multipaths: noen el archivo multipath.conf.El uso de una configuración sin multivía o el uso de
find_multipaths: yesofind_multipaths: smarten el archivo multipath.conf provocará fallos de montaje. Trident ha recomendado el uso defind_multipaths: nodesde la versión 21.07.
Despliega manualmente el operador Trident e instala Trident
Revisa "la visión general de la instalación" para asegurarte de que cumpliste los requisitos previos de instalación y seleccionaste la opción de instalación correcta para tu entorno.
Inicia sesión en el host Linux y verifica que está gestionando un servidor que funciona y "clúster de Kubernetes compatible" y que tienes los privilegios necesarios.
|
|
Con OpenShift, usa oc en vez de kubectl en todos los ejemplos que siguen, y primero inicia sesión como system:admin ejecutando oc login -u system:admin o oc login -u kube-admin.
|
Details
-
Verifica tu versión de Kubernetes:
kubectl version
-
Verifica los privilegios del administrador del clúster:
kubectl auth can-i '*' '*' --all-namespaces
-
Verifica que puedes lanzar un pod que use una imagen de Docker Hub y acceder a tu sistema de almacenamiento a través de la red de pods:
kubectl run -i --tty ping --image=busybox --restart=Never --rm -- \ ping <management IP>
Paso 1: descarga el paquete de instalación de Trident
El paquete instalador de Trident contiene todo lo que necesitas para desplegar el operador Trident e instalar Trident. Descarga y extrae la última versión del instalador de Trident desde "la sección Assets en GitHub".
wget https://github.com/NetApp/trident/releases/download/v6.0/trident-installer-25.10.0.tar.gz tar -xf trident-installer-25.10.0.tar.gz cd trident-installer
Paso 2: crea el TridentOrchestrator CRD
Crea la TridentOrchestrator Custom Resource Definition (CRD). Vas a crear una TridentOrchestrator Custom Resources más adelante. Usa la versión adecuada de CRD YAML en deploy/crds para crear la TridentOrchestrator CRD:
kubectl create -f deploy/crds/<VERSION>.yaml
Paso 3: actualiza la ubicación del registro en el operador
En /deploy/operator.yaml, actualiza image: docker.io/netapp/trident-operator:25.10.0 para reflejar la ubicación de tu registro de imágenes. Tu "Imágenes de Trident y CSI" puede estar en un registro o en diferentes registros, pero todas las imágenes CSI deben estar en el mismo registro. Por ejemplo:
-
image: <your-registry>/trident-operator:25.10.0si tus imágenes están todas ubicadas en un registro. -
image: <your-registry>/netapp/trident-operator:25.10.0si tu imagen de Trident está en un registro diferente al de tus imágenes CSI.
Paso 4: despliega el operador Trident
El instalador de Trident proporciona un archivo de paquete que puede usarse para instalar el operador y crear objetos asociados. El archivo de paquete es una forma sencilla de desplegar el operador e instalar Trident usando una configuración predeterminada.
-
Para los clústeres que ejecutan Kubernetes 1.24, usa
bundle_pre_1_25.yaml. -
Para clústeres que ejecutan Kubernetes 1.25 o posterior, usa
bundle_post_1_25.yaml.
-
Por defecto, el instalador de Trident despliega el operador en el
tridentnamespace. Si eltridentnamespace no existe, créalo usando:kubectl apply -f deploy/namespace.yaml
-
Para desplegar el operador en un espacio de nombres distinto del
tridentnamespace, actualizaserviceaccount.yaml,clusterrolebinding.yamlyoperator.yamly genera tu archivo bundle usando elkustomization.yaml.-
Crea el
kustomization.yamlusando el siguiente comando donde <bundle.yaml> esbundle_pre_1_25.yamlobundle_post_1_25.yamlsegún tu versión de Kubernetes.cp deploy/kustomization_<bundle.yaml> deploy/kustomization.yaml
-
Compila el paquete usando el siguiente comando donde <bundle.yaml> es
bundle_pre_1_25.yamlobundle_post_1_25.yamlsegún tu versión de Kubernetes.kubectl kustomize deploy/ > deploy/<bundle.yaml>
-
-
Crea los recursos y despliega el operador:
kubectl create -f deploy/<bundle.yaml>
-
Verifica que se hayan creado el operador, el deployment y los replicasets.
kubectl get all -n <operator-namespace>
|
|
Solo debe haber una instancia del operador en un clúster de Kubernetes. No crees varias implementaciones del operador Trident. |
Paso 5: actualiza la ubicación del registro de la imagen en la TridentOrchestrator
Tu "Imágenes de Trident y CSI" puede estar en un registro o en registros diferentes, pero todas las imágenes CSI deben estar en el mismo registro. Actualiza deploy/crds/tridentorchestrator_cr.yaml para agregar las especificaciones de ubicación adicionales según la configuración de tu registro.
imageRegistry: "<your-registry>" autosupportImage: "<your-registry>/trident-autosupport:25.10" tridentImage: "<your-registry>/trident:25.10.0"
imageRegistry: "<your-registry>" autosupportImage: "<your-registry>/trident-autosupport:25.10" tridentImage: "<your-registry>/trident:25.10.0"
Paso 6: crea el TridentOrchestrator e instala Trident
Ahora puedes crear el TridentOrchestrator e instalar Trident. Opcionalmente, puedes ampliar aún más "personaliza tu instalación Trident" usando los atributos en la TridentOrchestrator spec. El siguiente ejemplo muestra una instalación donde las imágenes de Trident y CSI están ubicadas en diferentes registros.
kubectl create -f deploy/crds/tridentorchestrator_cr.yaml
tridentorchestrator.trident.netapp.io/trident created
kubectl describe torc trident
Name: trident
Namespace:
Labels: <none>
Annotations: <none>
API Version: trident.netapp.io/v1
Kind: TridentOrchestrator
...
Spec:
Autosupport Image: <your-registry>/trident-autosupport:25.10
Debug: true
Image Registry: <your-registry>
Namespace: trident
Trident Image: <your-registry>/trident:25.10.0
Status:
Current Installation Params:
IPv6: false
Autosupport Hostname:
Autosupport Image: <your-registry>/trident-autosupport:25.10
Autosupport Proxy:
Autosupport Serial Number:
Debug: true
Http Request Timeout: 90s
Image Pull Secrets:
Image Registry: <your-registry>
k8sTimeout: 30
Kubelet Dir: /var/lib/kubelet
Log Format: text
Probe Port: 17546
Silence Autosupport: false
Trident Image: <your-registry>/trident:25.10.0
Message: Trident installed
Namespace: trident
Status: Installed
Version: v25.10.0
Events:
Type Reason Age From Message ---- ------ ---- ---- -------Normal
Installing 74s trident-operator.netapp.io Installing Trident Normal
Installed 67s trident-operator.netapp.io Trident installed
Verifica la instalación
Hay varias formas de verificar tu instalación.
Usando TridentOrchestrator status
El estado de TridentOrchestrator indica si la instalación fue exitosa y muestra la versión de Trident instalada. Durante la instalación, el estado de TridentOrchestrator cambia de Installing a Installed. Si observas el estado de Failed y el operador no puede recuperarse por sí solo, "revisa los registros".
| Estado | Descripción |
|---|---|
Instalando |
El operador está instalando Trident usando este |
Instalado |
Trident se ha instalado correctamente. |
Desinstalar |
El operador está desinstalando Trident porque |
Desinstalado |
Trident está desinstalado. |
Con errores |
El operador no pudo instalar, parchear, actualizar o desinstalar Trident; el operador intentará automáticamente recuperarse de este estado. Si este estado persiste necesitarás hacer una solución de problemas. |
Actualizando |
El operador está actualizando una instalación existente. |
Error |
El |
Uso del estado de creación de pods
Puedes confirmar si la instalación de Trident se completó revisando el estado de los pods creados:
kubectl get pods -n trident NAME READY STATUS RESTARTS AGE trident-controller-7d466bf5c7-v4cpw 6/6 Running 0 1m trident-node-linux-mr6zc 2/2 Running 0 1m trident-node-linux-xrp7w 2/2 Running 0 1m trident-node-linux-zh2jt 2/2 Running 0 1m trident-operator-766f7b8658-ldzsv 1/1 Running 0 3m
Usando tridentctl
Puedes usar tridentctl para comprobar la versión de Trident instalada.
./tridentctl -n trident version +----------------+----------------+ | SERVER VERSION | CLIENT VERSION | +----------------+----------------+ | 25.10.0 | 25.10.0 | +----------------+----------------+