Configurar o Azure NetApp Files para o Serviço de Kubernetes do Azure

Um volume persistente representa uma parte do armazenamento que foi provisionada para uso com pods do Kubernetes. Um volume persistente pode ser usado por um ou vários pods e pode ser provisionado de forma estática ou dinâmica. Este artigo mostra como configurar o Azure NetApp Files para ser usado ​​por pods em um cluster do AKS (Serviço de Kubernetes do Azure).

O Azure NetApp Files é um serviço de armazenamento de arquivos medido, de alto desempenho e de classe empresarial que está em execução no Azure e dá suporte a volumes usando NFS (NFSv3 ou NFSv4.1), SMB e protocolo duplo (NFSv3 e SMB ou NFSv4.1 e SMB). Os usuários do Kubernetes têm duas opções quanto ao uso dos volumes do Azure NetApp Files para cargas de trabalho Kubernetes:

  • Criar volumes do Azure NetApp Files estaticamente. Nesse cenário, a criação dos volumes é externa ao AKS. Os volumes são criados usando a CLI do Azure ou no portal do Azure e, em seguida, são expostos ao Kubernetes pela criação de um PersistentVolume. Os volumes do Azure NetApp Files criados estaticamente têm muitas limitações (por exemplo, incapacidade de expansão, necessidade de provisionamento excedente e assim por diante). Volumes criados estaticamente não são recomendados para a maioria dos casos de uso.
  • Crie volumes do Azure NetApp Files dinamicamente, orquestrando por meio do Kubernetes. Esse método é a maneira preferencial de criar vários volumes diretamente no Kubernetes pode ser executado usando o Astra Trident. O Astra Trident é um orquestrador de armazenamento dinâmico em conformidade com CSI que ajuda a provisionar volumes nativamente por meio do Kubernetes.

Observação

Volumes de protocolo duplo só podem ser criados estaticamente. Para obter mais informações sobre como usar volumes de protocolo duplo com o Serviço de Kubernetes do Azure, consulte Provisionar volumes de protocolo duplo do Azure NetApp Files para o Serviço de Kubernetes do Azure.

Usar um driver CSI para consumir diretamente volumes do Azure NetApp Files de cargas de trabalho do AKS é a configuração recomendada para a maioria dos casos de uso. Esse requisito é atendido usando o Astra Trident, um orquestrador de armazenamento dinâmico de código aberto para Kubernetes. O Astra Trident um orquestrador de armazenamento de nível empresarial desenvolvido especificamente para o Kubernetes e totalmente compatível com o NetApp. Ele simplifica o acesso ao armazenamento dos clusters do Kubernetes automatizando o provisionamento de armazenamento.

Você pode aproveitar o driver CSI (Interface de Armazenamento de Contêiner) do Astra Trident para Azure NetApp Files a fim de abstrair detalhes subjacentes e criar, expandir e fazer instantâneos sob demanda. Além disso, o uso do Astra Trident permite que você use o Serviço de Controle do Astra criado com base no Astra Trident. Com o Astra Trident, você pode fazer backup, recuperar, mover e gerenciar o ciclo de vida de dados do aplicativo de suas cargas de trabalho do AKS entre clusters dentro e entre as regiões do Azure para atender às suas necessidades de continuidade de negócios e serviços.

Importante

O software de código aberto é mencionado em toda a documentação e amostras do AKS. O software que você implanta está excluído dos contratos de nível de serviço do AKS, garantia limitada e suporte do Azure. Ao usar tecnologia de código aberto junto com o AKS, consulte as opções de suporte disponíveis nas comunidades e mantenedores de projetos respectivos para desenvolver um plano.

Por exemplo, o repositório do Ray GitHub descreve várias plataformas que variam em tempo de resposta, finalidade e nível de suporte.

A Microsoft assume a responsabilidade por criar os pacotes de código aberto que implantamos no AKS. Essa responsabilidade inclui ter propriedade completa do processo de criação, verificação, sinalização, validação e hotfix, junto com o controle sobre os binários em imagens de contêiner. Para obter mais informações, confira Gerenciamento de vulnerabilidades para o AKS e Cobertura de suporte do AKS.

Antes de começar

As seguintes considerações se aplicam quando você usa o Azure NetApp Files:

  • O cluster do AKS deve estar em uma região compatível com o Azure NetApp Files.
  • A CLI do Azure versão 2.0.59 ou posterior, instalada e configurada. Execute az --version para encontrar a versão. Se você precisa instalar ou atualizar, consulte Instalar a CLI do Azure.
  • Após a implantação inicial de um cluster do AKS, você pode optar por provisionar volumes do Azure NetApp Files de forma estática ou dinâmica.
  • Para usar o provisionamento dinâmico com o Azure NetApp Files com NFS (Sistema de arquivos de rede), instale e configure o Astra Trident versão 19.07 ou posterior. Para usar o provisionamento dinâmico com o Azure NetApp Files com SMB (protocolo SMB), instale e configure o Astra Trident versão 22.10 ou posterior. O provisionamento dinâmico para compartilhamentos SMB só tem suporte em nós de trabalho do Windows.
  • Antes de implantar volumes SMB do Azure NetApp Files, você deve identificar os requisitos de integração do AD DS para o Azure NetApp Files a fim de garantir que o Azure NetApp Files esteja bem conectado ao AD DS. Para obter mais informações, confira Entender as diretrizes para a criação e planejamento de site do Active Directory Domain Services. O cluster do AKS e o Azure NetApp Files devem ter conectividade com o mesmo AD.

Configurar o Azure NetApp Files para cargas de trabalho do AKS

Esta seção descreve como configurar o Azure NetApp Files para cargas de trabalho do AKS. Ela se aplica a todos os cenários neste artigo.

  1. Definir variáveis para usar mais tarde. Substitua myresourcegroup, mylocation, myaccountname, mypool1, poolsize, premium, myvnet, myANFSubnet e myprefix pelos valores apropriados para seu ambiente.

    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 o provedor de recursos Microsoft.NetApp executando o comando a seguir:

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

    Observação

    A conclusão dessa operação pode demorar vários minutos.

  3. Crie uma nova conta usando o comando az netappfiles account create. Ao criar uma conta do Azure NetApp para uso com o AKS, você pode criar a conta em um grupo de recursos existente ou criar uma nova conta na mesma região que o cluster do AKS.

    az netappfiles account create \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION \
        --account-name $ANF_ACCOUNT_NAME
    
  4. Crie um pool de capacidade usando o comando az netappfiles pool create. Substitua as variáveis mostradas no comando por suas informações do Azure NetApp Files. O account_name deve ser o mesmo criado na Etapa 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. Crie uma sub-rede para delegar ao Azure NetApp Files usando o comando az network vnet subnet create. Especifique o grupo de recursos que hospeda a rede virtual existente para o cluster do AKS. Substitua as variáveis mostradas no comando por suas informações do Azure NetApp Files.

    Observação

    Essa sub-rede deve estar na mesma rede virtual que o cluster do 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
    

Provisionar volumes do Azure NetApp Files de forma estática ou dinâmica para NFS ou SMB

Depois de configurar o Azure NetApp Files para cargas de trabalho do AKS, você pode provisionar de forma estática ou dinâmica o Azure NetApp Files usando volumes NFS, SMB ou de protocolo duplo dentro do pool de capacidade. Siga as instruções em:

Próximas etapas

O Astra Trident é compatível com muitos recursos do Azure NetApp Files. Para obter mais informações, consulte: