Configuración de Azure NetApp Files para Azure Kubernetes Service

Un volumen persistente representa un fragmento de almacenamiento aprovisionado para su uso con pods de Kubernetes. Un volumen persistente puede usarse en uno o varios pods y puede aprovisionarse de forma estática o dinámica. En este artículo se muestra cómo configurar Azure NetApp Files para su uso por los pods de un clúster de Azure Kubernetes Service (AKS).

Azure NetApp Files es un servicio de almacenamiento de archivos medido de alto rendimiento que se ejecuta en Azure y admite volúmenes mediante NFS (NFSv3 o NFSv4.1), SMB y protocolo dual (NFSv3 y SMB, o NFSv4.1 y SMB). Los usuarios de Kubernetes tienen dos opciones para usar volúmenes de Azure NetApp Files para cargas de trabajo de Kubernetes:

  • Crear volúmenes de Azure NetApp Files de manera estática. En este escenario, la creación de volúmenes es externa a AKS. Los volúmenes se crean mediante la CLI de Azure o desde Azure Portal y, a continuación, se exponen a Kubernetes mediante la creación de PersistentVolume. Los volúmenes de Azure NetApp Files creados estáticamente tienen muchas limitaciones (por ejemplo, la imposibilidad de expandirse, la necesidad de aprovisionarse en exceso, etc.). No se recomiendan volúmenes creados estáticamente para la mayoría de los casos de uso.
  • Crear volúmenes de Azure NetApp Files dinámicamente y orquestarlo mediante Kubernetes. Este método es la manera preferida de crear varios volúmenes directamente mediante Kubernetes y se consigue mediante Astra Trident. Astra Trident es un orquestador de almacenamiento dinámico compatible con CSI que ayuda a aprovisionar volúmenes de forma nativa a través de Kubernetes.

Nota

Los volúmenes de protocolo dual solo se pueden crear estáticamente. Para obtener más información sobre el uso de volúmenes de protocolo dual con Azure Kubernetes Service, consulte Aprovisionamiento de volúmenes de protocolo dual Azure NetApp Files para Azure Kubernetes Service.

El uso de un controlador de CSI para consumir directamente volúmenes de Azure NetApp Files de cargas de trabajo de AKS es la configuración recomendada para la mayoría de los casos de uso. Este requisito se cumple con Astra Trident, un orquestador de almacenamiento dinámico de código abierto para Kubernetes. Astra Trident es un orquestador de almacenamiento de nivel empresarial diseñado para Kubernetes, totalmente compatible con NetApp. Simplifica el acceso al almacenamiento de los clústeres de Kubernetes mediante la automatización del aprovisionamiento de almacenamiento.

Puede usar el controlador Container Storage Interface (CSI) de Astra Trident para que Azure NetApp Files abstraiga los detalles subyacentes, así como para crear y expandir volúmenes a petición y generar instantáneas de estos. Además, el uso de Astra Trident permite usar Astra Control Service, que está basado en dicho orquestador. Con Astra Control Service, puede crear copias de seguridad del ciclo de vida de los datos de aplicación de las cargas de trabajo de AKS, así como recuperarlo, moverlo y administrarlo, en clústeres dentro de regiones de Azure y entre estas para satisfacer sus necesidades empresariales y de continuidad del servicio.

Antes de empezar

Las siguientes consideraciones se aplican al usar Azure NetApp Files:

  • El clúster de AKS también debe estar en una región que admita Azure NetApp Files.
  • CLI de Azure versión 2.0.59 o posterior instalada y configurada. Ejecute az --version para encontrar la versión. Si necesita instalarla o actualizarla, vea Instalación de la CLI de Azure.
  • Después de la implementación inicial de un clúster de AKS, puede elegir aprovisionar volúmenes de Azure NetApp Files de forma estática o dinámica.
  • Para usar el aprovisionamiento dinámico con Azure NetApp Files con Network File System (NFS), instale y configure Astra Trident, versión 19.07 o posterior. Para usar el aprovisionamiento dinámico con Azure NetApp Files con Secure Message Block (SMB), instale y configure Astra Trident versión 22.10 o posterior. El aprovisionamiento dinámico para recursos compartidos SMB solo se admite en nodos de trabajo de Windows.
  • Antes de implementar los volúmenes de Azure NetApp Files SMB, debe identificar los requisitos de integración de AD DS para Azure NetApp Files a fin de asegurarse de que Azure NetApp Files está bien conectado a AD DS. Para obtener más información, consulte Descripción de las directrices para el diseño de Active Directory Domain Services y planificación. Tanto el clúster AKS como Azure NetApp Files deben tener conectividad con el mismo AD.

Configuración de Azure NetApp Files para cargas de trabajo de AKS

En esta sección se describe cómo configurar Azure NetApp Files para cargas de trabajo de AKS. Puede usarse en todos los escenarios de este artículo.

  1. Definición variables para su uso posterior. Reemplace myresourcegroup, mylocation, myaccountname, mypool1, poolsize, premium, myvnet, myANFSubnet y myprefix por los valores adecuados de su entorno.

    RESOURCE_GROUP="myresourcegroup"
    LOCATION="mylocation"
    ANF_ACCOUNT_NAME="myaccountname"
    POOL_NAME="mypool1"
    SIZE="poolsize" # size in TiB
    SERVICE_LEVEL="Premium" # valid values are Standard, Premium and Ultra
    VNET_NAME="myvnet"
    SUBNET_NAME="myANFSubnet"
    ADDRESS_PREFIX="myprefix"
    
  2. Registre el proveedor de recursos Microsoft.NetApp ejecutando el siguiente comando:

    az provider register --namespace Microsoft.NetApp --wait
    

    Nota:

    Esta operación puede tardar varios minutos en completarse.

  3. Cree una cuenta con el comando az netappfiles account create. Al crear una cuenta de Azure NetApp para su uso con AKS, puede hacerlo en un grupo de recursos existente o crear una nueva en la misma región que el clúster de AKS.

    az netappfiles account create \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION \
        --account-name $ANF_ACCOUNT_NAME
    
  4. Cree un nuevo grupo de capacidad con el comando az netappfiles pool create. Reemplace las variables que se muestran en el comando por la información de Azure NetApp Files. account_name debe ser el mismo que se creó en el paso 3.

    az netappfiles pool create \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION \
        --account-name $ANF_ACCOUNT_NAME \
        --pool-name $POOL_NAME \
        --size $SIZE \
        --service-level $SERVICE_LEVEL
    
  5. Cree una subred para delegar en Azure NetApp Files mediante el comando az network vnet subnet create. Especifique el grupo de recursos que hospeda la red virtual existente del clúster de AKS. Reemplace las variables que se muestran en el comando por la información de Azure NetApp Files.

    Nota:

    Esta subred debe estar en la misma red virtual que el clúster de AKS.

    az network vnet subnet create \
        --resource-group $RESOURCE_GROUP \
        --vnet-name $VNET_NAME \
        --name $SUBNET_NAME \
        --delegations "Microsoft.Netapp/volumes" \
        --address-prefixes $ADDRESS_PREFIX
    

Aprovisionamiento estático o dinámico de volúmenes Azure NetApp Files para NFS o SMB

Después de configurar Azure NetApp Files para cargas de trabajo de AKS, puede aprovisionar de forma estática o dinámica Azure NetApp Files mediante volúmenes NFS, SMB o de protocolo dual dentro del grupo de capacidad. Siga las instrucciones en:

Pasos siguientes

Astra Trident admite muchas características con Azure NetApp Files. Para más información, consulte: