Opciones y ejemplos de configuración SAN de ONTAP
Descubre cómo crear y utilizar controladores SAN de ONTAP con tu instalación de Astra Trident. Esta sección proporciona ejemplos de configuración de backend y detalles para la asignación de back-ends a StorageClasses.
Opciones de configuración del back-end
Consulte la siguiente tabla para ver las opciones de configuración del back-end:
Parámetro | Descripción | Predeterminado |
---|---|---|
|
Siempre 1 |
|
|
Nombre del controlador de almacenamiento |
|
|
Nombre personalizado o el back-end de almacenamiento |
Nombre de controlador + «_» + LIF de datos |
|
La dirección IP de un clúster o una LIF de gestión de SVM. Se puede especificar un nombre de dominio completo (FQDN). Puede configurarse para que utilice direcciones IPv6 si Astra Trident se instaló mediante la marca IPv6. Las direcciones IPv6 deben definirse entre corchetes, |
“10.0.0.1”, “[2001:1234:abcd::fefe]” |
|
Dirección IP de LIF de protocolo. No especifique para iSCSI. Astra Trident utiliza "Asignación de LUN selectiva de ONTAP" para descubrir las LIF iSCI necesarias para establecer una sesión multivía. Se genera una advertencia si |
Derivado del SVM |
|
Máquina virtual de almacenamiento para usar Omitir para MetroCluster. Consulte la [mcc-best]. |
Derivada si se especifica una SVM |
|
Use CHAP para autenticar iSCSI para los controladores SAN de ONTAP [Boolean]. Establezca en |
|
|
Secreto CHAP del iniciador. Obligatorio si |
"" |
|
Conjunto de etiquetas con formato JSON arbitrario que se aplica en los volúmenes |
"" |
|
Secreto CHAP del iniciador de destino. Obligatorio si |
"" |
|
Nombre de usuario entrante. Obligatorio si |
"" |
|
Nombre de usuario de destino. Obligatorio si |
"" |
|
Valor codificado en base64 del certificado de cliente. Se utiliza para autenticación basada en certificados |
"" |
|
Valor codificado en base64 de la clave privada de cliente. Se utiliza para autenticación basada en certificados |
"" |
|
Valor codificado en base64 del certificado de CA de confianza. Opcional. Se utiliza para autenticación basada en certificados. |
"" |
|
El nombre de usuario necesario para comunicarse con el clúster de ONTAP. Se utiliza para autenticación basada en credenciales. |
"" |
|
La contraseña necesaria para comunicarse con el clúster de ONTAP. Se utiliza para autenticación basada en credenciales. |
"" |
|
Máquina virtual de almacenamiento que usar |
Derivada si se especifica una SVM |
|
El prefijo que se utiliza cuando se aprovisionan volúmenes nuevos en la SVM. No se puede modificar más adelante. Para actualizar este parámetro, deberá crear un nuevo backend. |
|
|
Error al aprovisionar si el uso supera este porcentaje. Si estás usando un backend de Amazon FSx for NetApp ONTAP, no especifiques |
"" (no se aplica de forma predeterminada) |
|
Error en el aprovisionamiento si el tamaño del volumen solicitado es superior a este valor. También restringe el tamaño máximo de los volúmenes que gestiona para qtrees y LUN. |
"" (no se aplica de forma predeterminada) |
|
El número máximo de LUN por FlexVol debe estar comprendido entre [50 y 200] |
|
|
Indicadores de depuración que se deben usar para la solución de problemas. Ejemplo, {“api”:false, “method”:true} no lo utilice a menos que esté solucionando problemas y requiera un volcado de log detallado. |
|
|
Parámetro booleano para usar las API DE REST de ONTAP. |
|
|
Utilice para seleccionar |
|
Opciones de configuración de back-end para el aprovisionamiento de volúmenes
Puede controlar el aprovisionamiento predeterminado mediante estas opciones en la defaults
sección de la configuración. Para ver un ejemplo, vea los ejemplos de configuración siguientes.
Parámetro | Descripción | Predeterminado |
---|---|---|
|
Asignación de espacio para las LUN |
verdadero |
|
Modo de reserva de espacio; «ninguno» (fino) o «volumen» (grueso) |
ninguno |
|
Política de Snapshot que se debe usar |
ninguno |
|
Grupo de políticas de calidad de servicio que se asignará a los volúmenes creados. Elija uno de qosPolicy o adaptiveQosPolicy por pool/back-end de almacenamiento. El uso de grupos de políticas de calidad de servicio con Astra Trident requiere ONTAP 9.8 o posterior. Recomendamos utilizar un grupo de políticas QoS no compartido y garantizar que el grupo de políticas se aplique a cada componente por separado. Un grupo de políticas de calidad de servicio compartido hará que se aplique el techo para el rendimiento total de todas las cargas de trabajo. |
"" |
|
Grupo de políticas de calidad de servicio adaptativo que permite asignar los volúmenes creados. Elija uno de qosPolicy o adaptiveQosPolicy por pool/back-end de almacenamiento |
"" |
|
Porcentaje de volumen reservado para las Snapshot |
«0» si |
|
Divida un clon de su elemento principal al crearlo |
"falso" |
|
Habilite el cifrado de volúmenes de NetApp (NVE) en el nuevo volumen; los valores predeterminados son |
"falso" |
|
Active el cifrado LUKS. Consulte "Usar la configuración de clave unificada de Linux (LUKS)". El cifrado LUKS no es compatible con NVMe/TCP. |
"" |
|
Estilo de seguridad para nuevos volúmenes |
|
|
Política de organización en niveles para utilizar ninguna |
«Solo Snapshot» para la configuración SVM-DR anterior a ONTAP 9,5 |
|
Plantilla para crear nombres de volúmenes personalizados. |
"" |
|
Tamaño máximo de FlexVol solicitable al usar LUN en back-end económico de ONTAP-san. |
"" (no se aplica de forma predeterminada) |
Ejemplos de aprovisionamiento de volúmenes
Aquí hay un ejemplo con los valores predeterminados definidos:
--- version: 1 storageDriverName: ontap-san managementLIF: 10.0.0.1 svm: trident_svm username: admin password: <password> labels: k8scluster: dev2 backend: dev2-sanbackend storagePrefix: alternate-trident debugTraceFlags: api: false method: true defaults: spaceReserve: volume qosPolicy: standard spaceAllocation: 'false' snapshotPolicy: default snapshotReserve: '10'
Para todos los volúmenes creados con ontap-san el controlador, Astra Trident añade un 10 % de capacidad adicional al FlexVol para acomodar los metadatos del LUN. La LUN se aprovisionará con el tamaño exacto que el usuario solicite en la RVP. Astra Trident añade el 10 % a FlexVol (se muestra como tamaño disponible en ONTAP). Los usuarios obtienen ahora la cantidad de capacidad utilizable que soliciten. Este cambio también impide que las LUN se conviertan en de solo lectura a menos que se utilice completamente el espacio disponible. Esto no se aplica a ontap-san-economy.
|
Para los back-ends que definen snapshotReserve
, Astra Trident calcula el tamaño de los volúmenes de la siguiente manera:
Total volume size = [(PVC requested size) / (1 - (snapshotReserve percentage) / 100)] * 1.1
El 1.1 es el 10 % adicional que Astra Trident añade a FlexVol para acomodar los metadatos de las LUN. Para snapshotReserve
= 5%, y solicitud de PVC = 5GiB, el tamaño total del volumen es 5,79GiB y el tamaño disponible es 5,5GiB. El volume show
comando debería mostrar resultados similares a este ejemplo:
En la actualidad, el cambio de tamaño es la única manera de utilizar el nuevo cálculo para un volumen existente.
Ejemplos de configuración mínima
Los ejemplos siguientes muestran configuraciones básicas que dejan la mayoría de los parámetros en los valores predeterminados. Esta es la forma más sencilla de definir un back-end.
Si utiliza Amazon FSx en NetApp ONTAP con Astra Trident, le recomendamos que especifique nombres de DNS para las LIF en lugar de las direcciones IP. |
Ejemplo de SAN ONTAP
Esta es una configuración básica que utiliza ontap-san
el controlador.
--- version: 1 storageDriverName: ontap-san managementLIF: 10.0.0.1 svm: svm_iscsi labels: k8scluster: test-cluster-1 backend: testcluster1-sanbackend username: vsadmin password: <password>
Ejemplo de economía de SAN ONTAP
--- version: 1 storageDriverName: ontap-san-economy managementLIF: 10.0.0.1 svm: svm_iscsi_eco username: vsadmin password: <password>
-
ejemplo
Puede configurar el backend para evitar tener que actualizar manualmente la definición de backend después de la conmutación y la conmutación durante "Replicación y recuperación de SVM".
Para lograr una conmutación de sitios y una conmutación de estado sin problemas, especifique la SVM con managementLIF
y omita dataLIF
los parámetros y. svm
Por ejemplo:
--- version: 1 storageDriverName: ontap-san managementLIF: 192.168.1.66 username: vsadmin password: password
Ejemplo de autenticación basada en certificados
En este ejemplo de configuración básica clientCertificate
, , clientPrivateKey
y trustedCACertificate
(opcional, si se utiliza CA de confianza) se rellenan backend.json
y toman los valores codificados en base64 del certificado de cliente, la clave privada y el certificado de CA de confianza, respectivamente.
--- version: 1 storageDriverName: ontap-san backendName: DefaultSANBackend managementLIF: 10.0.0.1 svm: svm_iscsi useCHAP: true chapInitiatorSecret: cl9qxIm36DKyawxy chapTargetInitiatorSecret: rqxigXgkesIpwxyz chapTargetUsername: iJF4heBRT0TCwxyz chapUsername: uh2aNCLSd6cNwxyz clientCertificate: ZXR0ZXJwYXB...ICMgJ3BhcGVyc2 clientPrivateKey: vciwKIyAgZG...0cnksIGRlc2NyaX trustedCACertificate: zcyBbaG...b3Igb3duIGNsYXNz
Ejemplos de CHAP bidireccional
Estos ejemplos crean un backend con useCHAP
el valor definido en true
.
--- version: 1 storageDriverName: ontap-san managementLIF: 10.0.0.1 svm: svm_iscsi labels: k8scluster: test-cluster-1 backend: testcluster1-sanbackend useCHAP: true chapInitiatorSecret: cl9qxIm36DKyawxy chapTargetInitiatorSecret: rqxigXgkesIpwxyz chapTargetUsername: iJF4heBRT0TCwxyz chapUsername: uh2aNCLSd6cNwxyz username: vsadmin password: <password>
--- version: 1 storageDriverName: ontap-san-economy managementLIF: 10.0.0.1 svm: svm_iscsi_eco useCHAP: true chapInitiatorSecret: cl9qxIm36DKyawxy chapTargetInitiatorSecret: rqxigXgkesIpwxyz chapTargetUsername: iJF4heBRT0TCwxyz chapUsername: uh2aNCLSd6cNwxyz username: vsadmin password: <password>
Ejemplo de NVMe/TCP
Debe tener una SVM configurada con NVMe en el back-end de ONTAP. Esta es una configuración de back-end básica para NVMe/TCP.
--- version: 1 backendName: NVMeBackend storageDriverName: ontap-san managementLIF: 10.0.0.1 svm: svm_nvme username: vsadmin password: password sanType: nvme useREST: true
Ejemplo de configuración de backend con nameTemplate
--- version: 1 storageDriverName: ontap-san backendName: ontap-san-backend managementLIF: <ip address> svm: svm0 username: <admin> password: <password> defaults: { "nameTemplate": "{{.volume.Name}}_{{.labels.cluster}}_{{.volume.Namespace}}_{{.volume.RequestName}}" }, "labels": {"cluster": "ClusterA", "PVC": "{{.volume.Namespace}}_{{.volume.RequestName}}"}
Ejemplos de back-ends con pools virtuales
En estos archivos de definición de backend de ejemplo, se establecen valores predeterminados específicos para todos los pools de almacenamiento, como spaceReserve
at none, spaceAllocation
at false y encryption
at false. Los pools virtuales se definen en la sección de almacenamiento.
Astra Trident establece etiquetas de aprovisionamiento en el campo «Comentarios». Los comentarios se establecen en la FlexVol. Astra Trident copia todas las etiquetas presentes en un pool virtual al volumen de almacenamiento al aprovisionar. Para mayor comodidad, los administradores de almacenamiento pueden definir etiquetas por pool virtual y agrupar volúmenes por etiqueta.
En estos ejemplos, algunos de los pools de almacenamiento establecen sus propios spaceReserve
valores , spaceAllocation
y encryption
, y algunos pools sustituyen a los valores predeterminados.
Ejemplo de SAN ONTAP
--- version: 1 storageDriverName: ontap-san managementLIF: 10.0.0.1 svm: svm_iscsi useCHAP: true chapInitiatorSecret: cl9qxIm36DKyawxy chapTargetInitiatorSecret: rqxigXgkesIpwxyz chapTargetUsername: iJF4heBRT0TCwxyz chapUsername: uh2aNCLSd6cNwxyz username: vsadmin password: <password> defaults: spaceAllocation: 'false' encryption: 'false' qosPolicy: standard labels: store: san_store kubernetes-cluster: prod-cluster-1 region: us_east_1 storage: - labels: protection: gold creditpoints: '40000' zone: us_east_1a defaults: spaceAllocation: 'true' encryption: 'true' adaptiveQosPolicy: adaptive-extreme - labels: protection: silver creditpoints: '20000' zone: us_east_1b defaults: spaceAllocation: 'false' encryption: 'true' qosPolicy: premium - labels: protection: bronze creditpoints: '5000' zone: us_east_1c defaults: spaceAllocation: 'true' encryption: 'false'
Ejemplo de economía de SAN ONTAP
--- version: 1 storageDriverName: ontap-san-economy managementLIF: 10.0.0.1 svm: svm_iscsi_eco useCHAP: true chapInitiatorSecret: cl9qxIm36DKyawxy chapTargetInitiatorSecret: rqxigXgkesIpwxyz chapTargetUsername: iJF4heBRT0TCwxyz chapUsername: uh2aNCLSd6cNwxyz username: vsadmin password: <password> defaults: spaceAllocation: 'false' encryption: 'false' labels: store: san_economy_store region: us_east_1 storage: - labels: app: oracledb cost: '30' zone: us_east_1a defaults: spaceAllocation: 'true' encryption: 'true' - labels: app: postgresdb cost: '20' zone: us_east_1b defaults: spaceAllocation: 'false' encryption: 'true' - labels: app: mysqldb cost: '10' zone: us_east_1c defaults: spaceAllocation: 'true' encryption: 'false' - labels: department: legal creditpoints: '5000' zone: us_east_1c defaults: spaceAllocation: 'true' encryption: 'false'
Ejemplo de NVMe/TCP
--- version: 1 storageDriverName: ontap-san sanType: nvme managementLIF: 10.0.0.1 svm: nvme_svm username: vsadmin password: <password> useREST: true defaults: spaceAllocation: 'false' encryption: 'true' storage: - labels: app: testApp cost: '20' defaults: spaceAllocation: 'false' encryption: 'false'
Asigne los back-ends a StorageClass
Las siguientes definiciones de StorageClass hacen referencia a la Ejemplos de back-ends con pools virtuales. En este parameters.selector
campo, cada StorageClass llama la atención sobre los pools virtuales que se pueden usar para alojar un volumen. El volumen tendrá los aspectos definidos en el pool virtual elegido.
-
protection-gold`StorageClass se asignará al primer pool virtual del `ontap-san
backend. Este es el único pool que ofrece protección de nivel Gold.apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: protection-gold provisioner: csi.trident.netapp.io parameters: selector: "protection=gold" fsType: "ext4"
-
protection-not-gold`StorageClass se asignará al segundo y tercer pool virtual en `ontap-san
el backend. Estos son los únicos pools que ofrecen un nivel de protección distinto del oro.apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: protection-not-gold provisioner: csi.trident.netapp.io parameters: selector: "protection!=gold" fsType: "ext4"
-
app-mysqldb`StorageClass se asignará al tercer pool virtual en `ontap-san-economy
backend. Este es el único pool que ofrece configuración de pool de almacenamiento para la aplicación de tipo mysqldb.apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: app-mysqldb provisioner: csi.trident.netapp.io parameters: selector: "app=mysqldb" fsType: "ext4"
-
protection-silver-creditpoints-20k`StorageClass se asignará al segundo pool virtual en `ontap-san
backend. Este es el único pool que ofrece protección de nivel plata y 20000 puntos de crédito.apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: protection-silver-creditpoints-20k provisioner: csi.trident.netapp.io parameters: selector: "protection=silver; creditpoints=20000" fsType: "ext4"
-
creditpoints-5k`StorageClass se asignará al tercer pool virtual en backend y al cuarto pool virtual en `ontap-san
elontap-san-economy
backend. Estas son las únicas ofertas de grupo con 5000 puntos de crédito.apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: creditpoints-5k provisioner: csi.trident.netapp.io parameters: selector: "creditpoints=5000" fsType: "ext4"
-
my-test-app-sc`StorageClass se asignará al `testAPP
pool virtual delontap-san
controlador consanType: nvme
. Esta es la única oferta de piscinatestApp
.--- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: my-test-app-sc provisioner: csi.trident.netapp.io parameters: selector: "app=testApp" fsType: "ext4"
Astra Trident decidirá qué pool virtual se selecciona y garantizará que se cumplan los requisitos de almacenamiento.