Implemente manualmente el operador Trident (modo sin conexión).
Puede implementar manualmente el operador Trident para instalar Trident. Este proceso se aplica a instalaciones en las que las imágenes de contenedor requeridas por Trident se almacenan en un registro privado. Si no dispone de un registro de imágenes privado, utilice el "proceso de implementación estándar".
Información crítica sobre Trident 24,10
Debe leer la siguiente información crítica sobre Trident.
<strong>Información crítica sobre Trident </strong>
-
Kubernetes 1,31 ahora es compatible con Trident. Actualizar 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 defind_multipaths: no
desde la versión 21.07.
Implemente manualmente el operador de Trident e instale Trident
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.
Inicie sesión en el host Linux y compruebe que está gestionando un funcionamiento y. "Clúster de Kubernetes compatible" y que tenga los privilegios necesarios.
Con OpenShift, utilícelo oc en lugar de kubectl en todos los ejemplos que siguen, e inicie sesión como system:admin primero ejecutando oc login -u system:admin o. oc login -u kube-admin .
|
Details
-
Compruebe su versión de Kubernetes:
kubectl version
-
Comprobar los privilegios de administrador de clúster:
kubectl auth can-i '*' '*' --all-namespaces
-
Compruebe que puede iniciar un pod que utilice una imagen de Docker Hub para llegar al sistema de almacenamiento a través de la red de pod:
kubectl run -i --tty ping --image=busybox --restart=Never --rm -- \ ping <management IP>
Paso 1: Descargue el paquete de instalación de Trident
El paquete de instalación de Trident contiene todo lo necesario para implementar el operador Trident e instalar Trident. Descargue y extraiga la última versión del instalador de Trident de "La sección Assets de GitHub".
wget https://github.com/NetApp/trident/releases/download/v24.10.0/trident-installer-24.10.0.tar.gz tar -xf trident-installer-24.10.0.tar.gz cd trident-installer
Paso 2: Cree la TridentOrchestrator
CRD
Cree la TridentOrchestrator
definición de recursos personalizados (CRD). Posteriormente, creará TridentOrchestrator
recursos personalizados. Utilice la versión YAML de CRD adecuada en deploy/crds
para crear el TridentOrchestrator
CRD:
kubectl create -f deploy/crds/<VERSION>.yaml
Paso 3: Actualice la ubicación del registro en el operador
En /deploy/operator.yaml
, actualice image: docker.io/netapp/trident-operator:24.10.0
para reflejar la ubicación del registro de imágenes. "Imágenes Trident y CSI"Puede estar ubicado en un registro o registros diferentes, pero todas las imágenes CSI deben estar ubicadas en el mismo registro. Por ejemplo:
-
image: <your-registry>/trident-operator:24.10.0
si todas sus imágenes están ubicadas en un registro. -
image: <your-registry>/netapp/trident-operator:24.10.0
Si su imagen Trident se encuentra en un registro diferente de sus imágenes CSI.
Paso 4: Ponga en marcha el operador de Trident
El instalador de Trident proporciona un archivo de paquete que se puede utilizar para instalar el operador y crear objetos asociados. El archivo bundle es una manera fácil de implementar el operador e instalar Trident usando una configuración predeterminada.
-
Para los clústeres que ejecutan Kubernetes 1,24, utilice
bundle_pre_1_25.yaml
. -
Para los clústeres que ejecutan Kubernetes 1,25 o posterior, utilice
bundle_post_1_25.yaml
.
-
De forma predeterminada, el instalador de Trident implementa el operador en la
trident
espacio de nombres. Si latrident
el espacio de nombres no existe, créelo con:kubectl apply -f deploy/namespace.yaml
-
Para implementar el operador en un espacio de nombres distinto del
trident
espacio de nombres, actualizaciónserviceaccount.yaml
,clusterrolebinding.yaml
y..operator.yaml
y genere el archivo del paquete con elkustomization.yaml
.-
Cree el
kustomization.yaml
con el siguiente comando donde está <bundle.yaml>bundle_pre_1_25.yaml
o.bundle_post_1_25.yaml
Según su versión de Kubernetes.cp deploy/kustomization_<bundle.yaml> deploy/kustomization.yaml
-
Compile el paquete con el siguiente comando donde está <bundle.yaml>
bundle_pre_1_25.yaml
o.bundle_post_1_25.yaml
Según su versión de Kubernetes.kubectl kustomize deploy/ > deploy/<bundle.yaml>
-
-
Crear los recursos e implementar el operador:
kubectl create -f deploy/<bundle.yaml>
-
Compruebe que se han creado el operador, el despliegue y los replicasets.
kubectl get all -n <operator-namespace>
Solo debe haber una instancia del operador en un clúster de Kubernetes. No cree varias implementaciones del operador Trident. |
Paso 5: Actualice la ubicación del registro de imágenes en el TridentOrchestrator
Su "Imágenes Trident y CSI" Se pueden ubicar en un registro o en diferentes registros, pero todas las imágenes CSI deben estar ubicadas en el mismo registro. Actualizar deploy/crds/tridentorchestrator_cr.yaml
para agregar las especificaciones de ubicación adicionales basadas en la configuración de su registro.
imageRegistry: "<your-registry>" autosupportImage: "<your-registry>/trident-autosupport:24.10" tridentImage: "<your-registry>/trident:24.10.0"
imageRegistry: "<your-registry>" autosupportImage: "<your-registry>/trident-autosupport:24.10" tridentImage: "<your-registry>/trident:24.10.0"
Paso 6: Cree el TridentOrchestrator
E instale Trident
Ahora puede crear TridentOrchestrator
e instalar Trident. Si lo desea, puede "Personalice su instalación de Trident"utilizar los atributos de la TridentOrchestrator
especificación. En el siguiente ejemplo se muestra una instalación donde las imágenes Trident y CSI se encuentran 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:24.10 Debug: true Image Registry: <your-registry> Namespace: trident Trident Image: <your-registry>/trident:24.10.0 Status: Current Installation Params: IPv6: false Autosupport Hostname: Autosupport Image: <your-registry>/trident-autosupport:24.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:24.10.0 Message: Trident installed Namespace: trident Status: Installed Version: v24.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
Compruebe la instalación
Existen varias formas de verificar su instalación.
Uso TridentOrchestrator
estado
El estado de TridentOrchestrator
Indica si la instalación se realizó correctamente y muestra la versión de Trident instalada. Durante la instalación, el estado de TridentOrchestrator
cambios de Installing
para Installed
. Si observa la Failed
y el operador no puede recuperar por sí solo, "compruebe los registros".
Estado | Descripción |
---|---|
Instalación |
El operador está instalando Trident con este |
Instalado |
Trident se ha instalado correctamente. |
Desinstalando |
El operador está desinstalando Trident, porque |
Desinstalado |
Trident se ha desinstalado. |
Error |
El operador no ha podido instalar, aplicar parches, actualizar o desinstalar Trident; el operador intentará automáticamente recuperarse de este estado. Si este estado continúa, necesitará solucionar problemas. |
Actualizando |
El operador está actualizando una instalación existente. |
Error |
La |
Uso del estado de creación de pod
Puede confirmar si la instalación de Trident ha finalizado 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
Uso tridentctl
Puede utilizar tridentctl
para comprobar la versión de Trident instalada.
./tridentctl -n trident version +----------------+----------------+ | SERVER VERSION | CLIENT VERSION | +----------------+----------------+ | 24.10.0 | 24.10.0 | +----------------+----------------+