Compartilhar via


Usar o Armazenamento de Contêineres do Azure com o NVMe local e a replicação de volume

O Armazenamento de Contêineres do Azure é um serviço de gerenciamento de volume, implantação e orquestração baseado em nuvem criado nativamente para contêineres. Este artigo mostra como configurar o Armazenamento de Contêineres do Azure para usar o Disco Efêmero com NVMe local e replicação de volume como armazenamento de back-end para as cargas de trabalho do Kubernetes. No final, você terá um pod que está usando o NVMe local como armazenamento. A replicação copia dados entre volumes em nós diferentes e restaura um volume quando uma réplica é perdida, proporcionando resiliência para o disco efêmero.

O que é o disco efêmero?

Quando seu aplicativo precisar de uma latência de armazenamento de submilissegundos, você poderá usar o disco efêmero com o Armazenamento de Contêineres do Azure para atender aos seus requisitos de desempenho. Efêmero significa que os discos são implantados na VM (máquina virtual) local que hospeda o cluster do AKS e não são salvos em um serviço de armazenamento do Azure. Os dados serão perdidos nesses discos se você interromper/desalocar sua VM.

Há dois tipos de disco efêmero disponíveis: NVMe local e SSD temporário. O NVMe foi criado para proporcionar transferência de dados de alta velocidade entre o armazenamento e a CPU. Escolha NVMe quando seu aplicativo precisar de IOPS ou taxa de transferência maior do que o SSD temporário ou exigir mais espaço de armazenamento. Lembre-se de que o Armazenamento de Contêineres do Azure dá suporte apenas à replicação de dados síncrona para NVMe local.

Devido à natureza efêmera desses discos, o Armazenamento de Contêineres do Azure dá suporte ao uso de volumes efêmeros genéricos por padrão ao usar um disco efêmero. No entanto, determinados casos de uso podem chamar volumes persistentes mesmo se os dados não forem duráveis; por exemplo, se você quiser usar arquivos YAML existentes ou modelos de implantação codificados para usar volumes persistentes, e sua carga de trabalho der suporte à replicação no nível do aplicativo para durabilidade. Nesses casos, você pode atualizar a instalação do Armazenamento de Contêineres do Azure e adicionar a anotação acstor.azure.com/accept-ephemeral-storage=true na definição de declaração de volume persistente para dar suporte à criação de volumes persistentes de pools de armazenamento de disco efêmero.

Pré-requisitos

  • Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.

  • Este artigo requer a versão mais recente (2.35.0 ou posterior) da CLI do Azure. Consulte Como instalar a CLI do Azure. Se você estiver usando o ambiente Bash no Azure Cloud Shell, a versão mais recente já estará instalada. Se você planeja executar os comandos localmente em vez de no Azure Cloud Shell, certifique-se de executá-los com privilégios administrativos. Para obter mais informações, confira Introdução ao Azure Cloud Shell.

  • Você precisará do cliente de linha de comando do Kubernetes, kubectl. Ele já está instalado se você estiver usando o Azure Cloud Shell ou se você puder instalá-lo localmente executando o comando az aks install-cli.

  • Se você ainda não instalou o Armazenamento de Contêiner do Azure, siga as instruções descritas em Usar o Armazenamento de Contêiner do Azure com o Serviço de Kubernetes do Azure.

  • Verifique se a região de destino tem suporte nas regiões do Armazenamento de Contêineres do Azure.

Escolher um tipo de VM que dê suporte ao NVMe local

O Disco NVMe local só está disponível em alguns tipos de VMs, por exemplo, SKUs de VM otimizadas para armazenamento ou SKUs de VM aceleradas por GPU. Se você pretende usar o NVMe local, escolha um desses SKUs de VM.

Execute o comando a seguir para obter o tipo de VM usado com o pool de nós. Substitua <resource group> e <cluster name> pelos seus próprios valores. Você não precisa fornecer valores para PoolName ou VmSize, portanto, mantenha a consulta como mostrado aqui.

az aks nodepool list --resource-group <resource group> --cluster-name <cluster name> --query "[].{PoolName:name, VmSize:vmSize}" -o table

Veja a seguir um exemplo de saída.

PoolName    VmSize
----------  ---------------
nodepool1   standard_l8s_v3

Recomendamos que cada VM tenha no mínimo quatro CPUs virtuais (vCPUs) e cada pool de nós tenha pelo menos três nós.

Criar e anexar volumes efêmeros genéricos

Siga estas etapas para criar e anexar um volume efêmero genérico.

1. Criar um pool de armazenamento com replicação de volume

Primeiro, crie um pool de armazenamento, que é um agrupamento lógico de armazenamento para o cluster do Kubernetes, definindo-o em um arquivo de manifesto YAML.

Se você habilitou o Armazenamento de Contêiner do Azure usando os comandos az aks create ou az aks update, talvez já tenha um pool de armazenamento. Use kubectl get sp -n acstor para obter a lista de pools de armazenamento. Se já houver um pool de armazenamento disponível que queira usar, pule esta seção e prossiga para Exibir as classes de armazenamento disponíveis.

Siga estas etapas para criar um pool de armazenamento usando o NVMe local com replicação. Atualmente, o Armazenamento de Contêineres do Azure dá suporte a configurações de três réplicas e cinco réplicas. Se você especificar três réplicas, deverá ter pelo menos três nós no cluster do AKS. Se você especificar cinco réplicas, deverá ter pelo menos cinco nós.

Observação

Como os conjuntos de armazenamento de disco efêmero consomem todos os discos NVMe disponíveis, exclua todos os conjuntos de armazenamento NVMe locais existentes antes de criar um novo pool de armazenamento.

  1. Use seu editor de texto favorito para criar um arquivo de manifesto YAML, como code acstor-storagepool.yaml.

  2. Cole o seguinte código e salve o arquivo. O valor do nome do pool de armazenamento pode ser o que você quiser.

    apiVersion: containerstorage.azure.com/v1
    kind: StoragePool
    metadata:
      name: ephemeraldisk-nvme
      namespace: acstor
    spec:
      poolType:
        ephemeralDisk:
          diskType: nvme
          replicas: 3
    
  3. Aplique o arquivo de manifesto YAML para criar o pool de armazenamento.

    kubectl apply -f acstor-storagepool.yaml 
    

    Quando a criação do pool de armazenamento for concluída, você verá uma mensagem semelhante à seguinte:

    storagepool.containerstorage.azure.com/ephemeraldisk-nvme created
    

    Você também pode executar esse comando para verificar o status do pool de armazenamento. Substitua <storage-pool-name> pelo valor do nome do pool de armazenamento. Para este exemplo, o valor seria ephemeraldisk-nvme.

    kubectl describe sp <storage-pool-name> -n acstor
    

Quando o pool de armazenamento for criado, o Armazenamento de Contêineres do Azure criará uma classe de armazenamento em seu nome, usando a convenção de nomenclatura acstor-<storage-pool-name>.

2. Exibir as classes de armazenamento disponíveis

Quando o pool de armazenamento estiver pronto para uso, você deverá selecionar uma classe de armazenamento para definir como o armazenamento é criado dinamicamente ao criar e implantar volumes.

Execute kubectl get sc para exibir as classes de armazenamento disponíveis. Você deve ver uma classe de armazenamento chamada acstor-<storage-pool-name>.

$ kubectl get sc | grep "^acstor-"
acstor-azuredisk-internal   disk.csi.azure.com               Retain          WaitForFirstConsumer   true                   65m
acstor-ephemeraldisk-nvme        containerstorage.csi.azure.com   Delete          WaitForFirstConsumer   true                   2m27s

Importante

Não use a classe de armazenamento marcada como interna. Ela é uma classe de armazenamento interna necessária para que o Armazenamento de Contêineres do Azure funcione.

3. Implantar um pod com um volume efêmero genérico

Crie um pod usando o Fio (testador de E/S flexível) para parâmetro de comparação e simulação de carga de trabalho, a fim de usar um volume efêmero genérico.

  1. Use seu editor de texto favorito para criar um arquivo de manifesto YAML, como code acstor-pod.yaml.

  2. Cole o seguinte código e salve o arquivo.

    kind: Pod
    apiVersion: v1
    metadata:
      name: fiopod
    spec:
      nodeSelector:
        acstor.azure.com/io-engine: acstor
      containers:
        - name: fio
          image: nixery.dev/shell/fio
          args:
            - sleep
            - "1000000"
          volumeMounts:
            - mountPath: "/volume"
              name: ephemeralvolume
      volumes:
        - name: ephemeralvolume
          ephemeral:
            volumeClaimTemplate:
              metadata:
                labels:
                  type: my-ephemeral-volume
              spec:
                accessModes: [ "ReadWriteOnce" ]
                storageClassName: acstor-ephemeraldisk-nvme # replace with the name of your storage class if different
                resources:
                  requests:
                    storage: 1Gi
    

    Ao alterar o tamanho de armazenamento de seus volumes, verifique se o tamanho é menor do que a capacidade disponível do disco efêmero de um único nó. Consulte Verificar a capacidade do disco efêmero do nó.

  3. Aplique o arquivo de manifesto YAML para implantar o pod.

    kubectl apply -f acstor-pod.yaml
    

    Será exibida uma saída semelhante à seguinte:

    pod/fiopod created
    
  4. Verifique se o pod está em execução e se a declaração de volume efêmero foi vinculada a ele:

    kubectl describe pod fiopod
    kubectl describe pvc fiopod-ephemeralvolume
    
  5. Verifique o teste FIO para ver seu status atual:

    kubectl exec -it fiopod -- fio --name=benchtest --size=800m --filename=/volume/test --direct=1 --rw=randrw --ioengine=libaio --bs=4k --iodepth=16 --numjobs=8 --time_based --runtime=60
    

Agora você implantou um pod que está usando o NVMe local com replicação de volume e pode usar isso em suas cargas de trabalho do Kubernetes.

Criar e anexar volumes persistentes

Para criar um volume persistente de um pool de armazenamento de disco efêmero, você precisa incluir uma anotação em suas PVCs (declarações de volume persistente) como uma proteção para garantir que você pretende usar volumes persistentes mesmo quando os dados são efêmeros. Além disso, você precisa habilitar o sinalizador --ephemeral-disk-volume-type com o valor PersistentVolumeWithAnnotation em seu cluster antes de criar suas declarações de volume persistentes.

Siga estas etapas para criar e anexar um volume persistente.

1. Atualizar a instalação do Armazenamento de Contêineres do Azure

Execute o comando a seguir para atualizar a instalação do Armazenamento de Contêineres do Azure para permitir a criação de volumes persistentes de pools de armazenamento de disco efêmero.

az aks update -n <cluster-name> -g <resource-group> --enable-azure-container-storage ephemeralDisk --storage-pool-option NVMe --ephemeral-disk-volume-type PersistentVolumeWithAnnotation 

2. Criar um pool de armazenamento com replicação de volume

Siga estas etapas para criar um pool de armazenamento usando o NVMe local com replicação. Atualmente, o Armazenamento de Contêineres do Azure dá suporte a configurações de três réplicas e cinco réplicas. Se você especificar três réplicas, deverá ter pelo menos três nós no cluster do AKS. Se você especificar cinco réplicas, deverá ter pelo menos cinco nós.

Observação

Como os conjuntos de armazenamento de disco efêmero consomem todos os discos NVMe disponíveis, exclua todos os conjuntos de armazenamento NVMe locais existentes antes de criar um novo pool de armazenamento.

  1. Use seu editor de texto favorito para criar um arquivo de manifesto YAML, como code acstor-storagepool.yaml.

  2. Cole o seguinte código e salve o arquivo. O valor do nome do pool de armazenamento pode ser o que você quiser. Defina réplicas como 3 ou 5.

    apiVersion: containerstorage.azure.com/v1
    kind: StoragePool
    metadata:
      name: ephemeraldisk-nvme
      namespace: acstor
    spec:
      poolType:
        ephemeralDisk:
          diskType: nvme
          replicas: 3
    
  3. Aplique o arquivo de manifesto YAML para criar o pool de armazenamento.

    kubectl apply -f acstor-storagepool.yaml 
    

    Quando a criação do pool de armazenamento for concluída, você verá uma mensagem semelhante à seguinte:

    storagepool.containerstorage.azure.com/ephemeraldisk-nvme created
    

    Você também pode executar esse comando para verificar o status do pool de armazenamento. Substitua <storage-pool-name> pelo valor do nome do pool de armazenamento. Para este exemplo, o valor seria ephemeraldisk-nvme.

    kubectl describe sp <storage-pool-name> -n acstor
    

Quando o pool de armazenamento for criado, o Armazenamento de Contêineres do Azure criará uma classe de armazenamento em seu nome, usando a convenção de nomenclatura acstor-<storage-pool-name>.

3. Exibir as classes de armazenamento disponíveis

Quando o pool de armazenamento estiver pronto para uso, você deverá selecionar uma classe de armazenamento para definir como o armazenamento é criado dinamicamente ao criar e implantar volumes.

Execute kubectl get sc para exibir as classes de armazenamento disponíveis. Você deve ver uma classe de armazenamento chamada acstor-<storage-pool-name>.

$ kubectl get sc | grep "^acstor-"
acstor-azuredisk-internal   disk.csi.azure.com               Retain          WaitForFirstConsumer   true                   65m
acstor-ephemeraldisk-nvme        containerstorage.csi.azure.com   Delete          WaitForFirstConsumer   true                   2m27s

Importante

Não use a classe de armazenamento marcada como interna. Ela é uma classe de armazenamento interna necessária para que o Armazenamento de Contêineres do Azure funcione.

4. Criar uma declaração de volume persistente

Um PVC (declaração de volume persistente) é usado para provisionar automaticamente o armazenamento com base em uma classe de armazenamento. Siga essas etapas para criar um PVC usando a nova classe de armazenamento.

  1. Use seu editor de texto favorito para criar um arquivo de manifesto YAML, como code acstor-pvc.yaml.

  2. Cole o seguinte código e salve o arquivo. O valor name do PVC pode ser o que você quiser.

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: ephemeralpvc
      annotations:
        acstor.azure.com/accept-ephemeral-storage: "true"
    spec:
      accessModes:
        - ReadWriteOnce
      storageClassName: acstor-ephemeraldisk-nvme # replace with the name of your storage class if different
      resources:
        requests:
          storage: 100Gi
    

    Ao alterar o tamanho de armazenamento de seus volumes, verifique se o tamanho é menor do que a capacidade disponível do disco efêmero de um único nó. Consulte Verificar a capacidade do disco efêmero do nó.

  3. Aplique o arquivo de manifesto YAML para criar o PVC.

    kubectl apply -f acstor-pvc.yaml
    

    Você deve ver uma saída semelhante a:

    persistentvolumeclaim/ephemeralpvc created
    

    Você pode verificar o status do PVC executando o seguinte comando:

    kubectl describe pvc ephemeralpvc
    

Depois que o PVC for criado, ele estará pronto para uso por um pod.

5. Implantar um pod e anexar um volume persistente

Crie um pod usando FIO (Testador de E/S Flexível) para simulação de carga de trabalho e parâmetro de comparação e especifique um caminho de montagem para o volume persistente. Para claimName, use o valor do nome usado ao criar a declaração de volume persistente.

  1. Use seu editor de texto favorito para criar um arquivo de manifesto YAML, como code acstor-pod.yaml.

  2. Cole o seguinte código e salve o arquivo.

    kind: Pod
    apiVersion: v1
    metadata:
      name: fiopod
    spec:
      nodeSelector:
        acstor.azure.com/io-engine: acstor
      volumes:
        - name: ephemeralpv
          persistentVolumeClaim:
            claimName: ephemeralpvc
      containers:
        - name: fio
          image: nixery.dev/shell/fio
          args:
            - sleep
            - "1000000"
          volumeMounts:
            - mountPath: "/volume"
              name: ephemeralpv
    
  3. Aplique o arquivo de manifesto YAML para implantar o pod.

    kubectl apply -f acstor-pod.yaml
    

    Será exibida uma saída semelhante à seguinte:

    pod/fiopod created
    
  4. Verifique se o pod está em execução e se a declaração de volume persistente foi associada com êxito ao pod:

    kubectl describe pod fiopod
    kubectl describe pvc ephemeralpvc
    
  5. Verifique o teste FIO para ver seu status atual:

    kubectl exec -it fiopod -- fio --name=benchtest --size=800m --filename=/volume/test --direct=1 --rw=randrw --ioengine=libaio --bs=4k --iodepth=16 --numjobs=8 --time_based --runtime=60
    

Agora você implantou um pod que está usando o NVMe local com replicação de volume e pode usar isso em suas cargas de trabalho do Kubernetes.

Gerenciar volumes e pools de armazenamento

Nesta seção, você vai aprender a verificar a capacidade disponível do disco efêmero, como desanexar e reanexar um volume persistente, como expandir ou excluir um pool de armazenamento e como otimizar o desempenho.

Verificar a capacidade do disco efêmero do nó

Um volume efêmero é alocado em um único nó. Ao configurar o tamanho dos volumes efêmeros, o tamanho deve ser menor do que a capacidade disponível do disco efêmero do nó único.

Execute o comando a seguir para verificar a capacidade disponível do disco efêmero para um único nó.

$ kubectl get diskpool -n acstor
NAME                                CAPACITY      AVAILABLE     USED        RESERVED    READY   AGE
ephemeraldisk-nvme-diskpool-jaxwb   75660001280   75031990272   628011008   560902144   True    21h
ephemeraldisk-nvme-diskpool-wzixx   75660001280   75031990272   628011008   560902144   True    21h
ephemeraldisk-nvme-diskpool-xbtlj   75660001280   75031990272   628011008   560902144   True    21h

Neste exemplo, a capacidade disponível de disco efêmero para um único nó é 75031990272 bytes ou 69 GiB.

Desanexar e anexar novamente um volume persistente

Para desanexar um volume persistente, exclua o pod ao qual o volume persistente está anexado.

kubectl delete pods <pod-name>

Para anexar novamente um volume persistente, basta referencia o nome de declaração do volume persistente no arquivo de manifesto YAML, conforme descrito em Implantar um pod e anexar um volume persistente.

Para verificar a qual volume persistente uma declaração de volume persistente está associada, execute:

kubectl get pvc <persistent-volume-claim-name>

Habilitar hiperconvergência (opcional)

O que é hiperconvergência?

A hiperconvergência no Armazenamento de Contêineres do Azure permite que pods sejam executados no mesmo host que seus volumes correspondentes, reduzindo a sobrecarga da rede e melhorando significativamente o desempenho de leitura.

  • Para cargas de trabalho de réplica única, a hiperconvergência é sempre habilitada por padrão para maximizar a localidade dos dados.

  • Para cargas de trabalho com várias réplicas, a hiperconvergência é opcional e deve ser habilitada explicitamente.

Quando a hiperconvergência é habilitada para volumes com várias réplicas, a carga de trabalho é agendada no mesmo host que uma das réplicas de volume, otimizando o acesso aos dados e ainda mantendo a redundância.

Comportamento da hiperconvergência para volumes não replicados contra volumes replicados

Volumes NVMe/TempSSD não replicados:

  • A hiperconvergência é habilitada por padrão.

  • Se não houver um nó adequado disponível com um pool de discos localizado, o pod do aplicativo não será iniciado devido a recursos insuficientes.

  • Essa imposição estrita impede que um aplicativo que consome volume não replicado seja executado em um nó diferente daquele em que seu armazenamento é provisionado.

Volumes NVMe/TempSSD replicados:

  • A hiperconvergência é esforço máximo.

  • O agendador tentará colocar o pod do aplicativo no mesmo nó que uma de suas réplicas de volume.

  • Se não houver um nó adequado disponível, o pod ainda será agendado em outro local, mas o desempenho de leitura poderá ser inferior ao esperado.

Como funciona

Quando a hiperconvergência é habilitada, o Armazenamento de Contêineres do Azure prioriza o agendamento de pods nos nós onde suas réplicas de volume residem.

  1. O agendador padrão do Kubernetes atribui pontuações a todos os nós com base em parâmetros padrão, como CPU, memória, afinidades e tolerâncias.
  2. Pontuação de Afinidade de Nós do Armazenamento de Contêineres do Azure: o Armazenamento de Contêineres do Azure usa afinidades de nós preferenciais para influenciar a decisão do agendador. Assim, cada nó recebe:
    • 1 ponto se ele tiver um pool de discos válido.
    • 1 ponto se ele já hospedar uma réplica do volume; essas pontuações são aditivas e fornecem uma ligeira preferência para nós com réplicas de volume local, respeitando outros critérios de agendamento.
  3. Decisão Final de Agendamento: o agendador do Kubernetes combina as pontuações padrão com as pontuações baseadas em afinidade do Armazenamento de Contêineres do Azure. O nó com a pontuação combinada mais alta, equilibrando as preferências do Armazenamento de Contêineres do Azure e a lógica padrão do Kubernetes, é selecionado para colocação do pod.

Quando Usar Hiperconvergência

Observação: As considerações a seguir se aplicam apenas a volumes replicados, pois volumes não replicados sempre usam hiperconvergência por padrão e não podem ser configurados de outra forma.

Considere habilitar a hiperconvergência para volumes replicados quando:

  • O alto desempenho de leitura é essencial – Manter as cargas de trabalho e as réplicas de armazenamento no mesmo nó reduz a latência da rede e melhora o desempenho de leitura.
  • A localidade dos dados pode impactar significativamente o desempenho – Aplicativos que leem frequentemente do armazenamento se beneficiam da redução de transferências de dados entre nós.

Quando Não Usar a Hiperconvergência

Observação: Esta seção se aplica apenas a volumes replicados porque a hiperconvergência é sempre imposta para volumes não replicados.

A hiperconvergência pode melhorar o desempenho ao co-localizar as cargas de trabalho com seu armazenamento, mas há cenários em que ela pode não ser ideal:

  • Potencial desequilíbrio de recursos: Embora a hiperconvergência em si não limite o número de aplicativos em um nó, se várias cargas de trabalho criarem réplicas no mesmo nó e esse nó ficar sem recursos (CPU, memória ou largura de banda de armazenamento), algumas cargas de trabalho podem não ser agendadas lá. Como resultado, elas podem acabar sendo executadas sem hiperconvergência, mesmo que ela esteja habilitada.

Habilitar hiperconvergência no Armazenamento de Contêineres do Azure

A hiperconvergência é habilitada por padrão para pools de NVMe e armazenamento em disco temporário com apenas uma réplica. Isso garante a localidade de dados otimizada e melhora o desempenho para configurações de réplica única. Para configurações com várias réplicas, a hiperconvergência não é habilitada por padrão, mas pode ser configurada usando o parâmetro hyperconverged na especificação do StoragePool.

O exemplo a seguir é um modelo YAML para habilitar a hiperconvergência para configurações com várias réplicas:

apiVersion: containerstorage.azure.com/v1 

kind: StoragePool 

metadata: 

  name: nvmedisk 

  namespace: acstor 

spec: 

  poolType: 

    ephemeralDisk: 

      diskType: "nvme" 

      replicas: 3 

      hyperconverged: true 

Expandir um pool de armazenamento

Você pode expandir pools de armazenamento com suporte do NVMe local para escalar verticalmente rapidamente e sem tempo de inatividade. Atualmente, não há suporte para redução de pools de armazenamento.

Como um pool de armazenamento apoiado pelo Disco Efêmero usa recursos de armazenamento local nas VMs (nós de cluster) do AKS, a expansão do pool de armazenamento requer a adição de outro nó ao cluster. Siga essas instruções para expandir o pool de armazenamento.

  1. Execute o comando a seguir para adicionar um nó ao cluster do AKS. Substitua <cluster-name>, <nodepool name> e <resource-group-name> por valores próprios. Para obter o nome do pool de nós, execute kubectl get nodes.

    az aks nodepool add --cluster-name <cluster name> --name <nodepool name> --resource-group <resource group> --node-vm-size Standard_L8s_v3 --node-count 1 --labels acstor.azure.com/io-engine=acstor
    
  2. Execute kubectl get nodes e você verá que um nó foi adicionado ao cluster.

  3. Execute kubectl get sp -A e você verá que a capacidade do pool de armazenamento aumentou.

Excluir um pool de armazenamento

Se você quiser excluir um pool de armazenamento, execute o comando a seguir. Substitua <storage-pool-name> pelo nome do pool de armazenamento.

kubectl delete sp -n acstor <storage-pool-name>

Otimizar o desempenho ao usar o NVMe local

Dependendo dos requisitos de desempenho da sua carga de trabalho, você pode escolher entre três níveis de desempenho diferentes: Básico, Standard e Premium. Esses níveis oferecem um intervalo diferente de IOPS e sua seleção afetará o número de vCPUs que os componentes do Armazenamento de Contêineres do Azure consomem nos nós em que ele está instalado. Standard é a configuração padrão, caso você não atualize o nível de desempenho.

Replicação de zona única

Camada Número de vCPUs IOPS de leitura de 100% IOPS de gravação de 100%
Basic 12,5% do total de núcleos de VM Até 120.000 Até 45.000
Standard (padrão) 25% do total de núcleos de VM Até 220.000 Até 90.000
Premium 50% do total de núcleos de VM Até 550.000 Até 180.000

Replicação de várias zonas

Camada Número de vCPUs IOPS de leitura de 100% IOPS de gravação de 100%
Basic 12,5% do total de núcleos de VM Até 120.000 Até 45.000
Standard (padrão) 25% do total de núcleos de VM Até 220.000 Até 90.000
Premium 50% do total de núcleos de VM Até 550.000 Até 180.000

Observação

O consumo de RAM e de hugepages permanecerá consistente em todas as camadas: 1 GiB de RAM e 2 GiB de hugepages.

Depois de identificar a camada de desempenho que se alinha melhor às suas necessidades, você pode executar o comando a seguir para atualizar a camada de desempenho da instalação do Armazenamento de Contêineres do Azure. Substitua <performance tier> por Básico, Standard ou Premium.

az aks update -n <cluster-name> -g <resource-group> --enable-azure-container-storage <storage-pool-type> --ephemeral-disk-nvme-perf-tier <performance-tier>

Confira também