Personalice la instalación del operador de Trident
El operador Trident te permite personalizar la instalación de Astra Trident con los atributos de la TridentOrchestrator
especificación. Si desea personalizar la instalación más allá de lo que TridentOrchestrator
permiten los argumentos, considere utilizar tridentctl
para generar manifiestos YAML personalizados para modificarlos según sea necesario.
Descripción de los pods de la controladora y los pods de nodo
Astra Trident se ejecuta como un único pod de la controladora, más un pod de nodos en cada nodo de trabajo del clúster. El pod del nodo debe ejecutarse en cualquier host en el que desee montar potencialmente un volumen Astra Trident.
Kubernetes "selectores de nodos" y "toleraciones y tintes" se utilizan para restringir que un pod se ejecute en un nodo específico o preferido. Usando el`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.
Opciones de configuración
spec.namespace Se especifica en TridentOrchestrator para indicar el espacio de nombres donde está instalado Astra Trident. Este parámetro no se puede actualizar después de instalar Astra Trident. Si lo intenta, el TridentOrchestrator estado cambia a Failed . Astra Trident no está pensado para la migración entre espacios de nombres.
|
Esta tabla detalla TridentOrchestrator
los atributos.
Parámetro | Descripción | Predeterminado |
---|---|---|
|
Espacio de nombres para instalar Astra Trident en |
|
|
Habilite la depuración para Astra Trident |
|
|
|
|
|
La configuración |
|
|
Establecer como |
|
|
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/astratrident-role) cuando utilice la identidad de la nube en un clúster de EKS. |
|
|
Instale Astra Trident sobre IPv6 |
falso |
|
Tiempo de espera para las operaciones de Kubernetes |
|
|
No envíe paquetes AutoSupport a NetApp automáticamente |
|
|
La imagen contenedora para telemetría AutoSupport |
|
|
La dirección/puerto de un proxy para enviar telemetría AutoSupport |
|
|
Una Marca utilizada para desinstalar Astra Trident |
|
|
Formato de registro de Astra Trident para utilizar [text,json] |
|
|
Imagen de Astra Trident para instalar |
|
|
Ruta al registro interno, del formato |
|
|
Ruta al directorio kubelet del host |
|
|
Una lista de recursos para eliminar y realizar una eliminación completa de Astra Trident |
|
|
Secretos para extraer imágenes de un registro interno |
|
|
Establece la política de extracción de imágenes para el operador Trident. Los valores válidos son: |
|
|
Selectores de nodos adicionales para POD. Sigue el mismo formato que |
Sin valores predeterminados; opcional |
|
Anula la toleración de Kubernetes en pods. Sigue el mismo formato que |
Sin valores predeterminados; opcional |
|
Selectores de nodos adicionales para POD. Sigue el mismo formato que |
Sin valores predeterminados; opcional |
|
Anula la toleración de Kubernetes en pods. Sigue el mismo formato que |
Sin valores predeterminados; opcional |
Para obtener más información sobre el formato de los parámetros del pod, consulte "Asignación de pods a nodos". |
Detalles acerca de forzar separación
Forzar separación está disponible sólo para ontap-san
y. ontap-san-economy
Antes de habilitar la desconexión forzada, se debe habilitar el cierre de nodos (NGN) no controlado en el clúster de Kubernetes. Para obtener más información, consulte "Kubernetes: Cierre de nodo sin gracia".
Dado que Astra Trident se basa en LAS NGN de Kubernetes, no elimine out-of-service los daños de un nodo en mal estado hasta que se reprogramen todas las cargas de trabajo no tolerables. La aplicación o eliminación imprudente de la contaminación puede poner en peligro la protección de datos de back-end.
|
Cuando el administrador de clúster de Kubernetes haya aplicado la node.kubernetes.io/out-of-service=nodeshutdown:NoExecute
tinte al nodo y enableForceDetach
se establezca en true
, Astra Trident determinará el estado del nodo y:
-
Cese el acceso de I/O back-end para los volúmenes montados en ese nodo.
-
Marque el objeto de nodo de Astra Trident como
dirty
(no es seguro para las nuevas publicaciones).El controlador Trident rechazará nuevas solicitudes de volumen de publicación hasta que el nodo se vuelva a calificar (después de haberse marcado como dirty
) por el pod del nodo Trident. No se aceptarán todas las cargas de trabajo programadas con una RVP montada (incluso después de que el nodo del clúster esté en buen estado y listo) hasta que Astra Trident pueda verificar el nodoclean
(seguro para las nuevas publicaciones).
Cuando se restaure el estado del nodo y se elimine el tinte, Astra Trident:
-
Identifique y limpie las rutas publicadas obsoletas en el nodo.
-
Si el nodo está en un
cleanable
estado (se ha quitado la intonía de fuera de servicio y el nodo está enReady
estado) y todas las rutas obsoletas publicadas están limpias, Astra Trident readmitirá el nodo a medida queclean
se admitan nuevos volúmenes publicados al nodo.
Configuraciones de ejemplo
Puede utilizar los atributos de Opciones de configuraciónal definir TridentOrchestrator
para personalizar la instalación.
Configuración personalizada básica
Este es un ejemplo de una instalación personalizada básica.
cat deploy/crds/tridentorchestrator_cr_imagepullsecrets.yaml apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullSecrets: - thisisasecret
Selectores de nodos
Este ejemplo instala Astra Trident con selectores de nodos.
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident controllerPluginNodeSelector: nodetype: master nodePluginNodeSelector: storage: netapp
Nodos de trabajo de Windows
En este ejemplo se instala Astra Trident en un nodo de trabajo de Windows.
cat deploy/crds/tridentorchestrator_cr.yaml apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident windows: true
Identidades administradas en un cluster AKS
En este ejemplo se instala Astra Trident para habilitar identidades gestionadas en un clúster de AKS.
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "Azure"
Identidad de nube en un clúster de AKS
En este ejemplo se instala Astra Trident para usarlo con una identidad de cloud en un clúster de AKS.
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "Azure" cloudIdentity: 'azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx'
Identidad de nube en un clúster de EKS
En este ejemplo se instala Astra Trident para usarlo con una identidad de cloud en un clúster de AKS.
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "AWS" cloudIdentity: "'eks.amazonaws.com/role-arn: arn:aws:iam::123456:role/astratrident-role'"