Habilitar redundância de armazenamento de várias zonas no Armazenamento de Contêiner do Azure
Você pode melhorar a disponibilidade de aplicativos com monitoração de estado usando pools de armazenamento de várias zonas e discos de armazenamento com redundância de zona (ZRS) ao usar o Armazenamento de Contêiner do Azure em um cluster de Serviço Kubernetes (AKS) do Azure de várias zonas. Para criar um cluster AKS que usa zonas de disponibilidade, consulte Usar zonas de disponibilidade no Serviço Kubernetes do Azure.
Pré-requisitos
- 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 Azure Cloud Shell, a versão mais recente já está instalada. Se você planeja executar os comandos localmente em vez de no Azure Cloud Shell, certifique-se de executá-los com privilégios administrativos.
- Você precisará de um cluster AKS com um pool de nós de pelo menos três máquinas virtuais (VMs) para os nós do cluster, cada uma com um mínimo de quatro CPUs virtuais (vCPUs).
- Este artigo pressupõe que você já tenha instalado o Armazenamento de Contêiner do Azure em seu cluster AKS.
- 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 puder instalá-lo localmente executando oaz aks install-cli
comando.
Criar um pool de armazenamento de várias zonas
Na definição do pool de armazenamento, você pode especificar as zonas nas quais deseja que a capacidade de armazenamento seja distribuída. A capacidade total do pool de armazenamento será distribuída uniformemente pelo número de zonas especificadas. Por exemplo, se duas zonas forem especificadas, cada zona receberá metade da capacidade do pool de armazenamento; Se forem especificadas três zonas, cada zona recebe um terço da capacidade total. O armazenamento correspondente será provisionado em cada uma das zonas. Isso é útil ao executar cargas de trabalho que oferecem replicação no nível do aplicativo, como Cassandra.
Se não houver nós disponíveis em uma zona especificada, a capacidade será provisionada assim que um nó estiver disponível nessa zona. Os volumes persistentes (PVs) só podem ser criados a partir da capacidade do pool de armazenamento de uma zona.
Os valores válidos para zones
são:
- [""]
- ["1"]
- ["2"]
- ["3"]
- ["1", "2"]
- ["1", "3"]
- ["2", "3"]
- ["1", "2", "3"]
Siga estas etapas para criar um pool de armazenamento de várias zonas que usa os Discos do Azure. Para zones
, escolha um valor válido.
Use seu editor de texto favorito para criar um arquivo de manifesto YAML como
code acstor-multizone-storagepool.yaml
.Cole o código a seguir e salve o arquivo. O valor do nome do pool de armazenamento pode ser o que você quiser. Para armazenamento, especifique a quantidade de capacidade de armazenamento para o pool em Gi ou Ti.
apiVersion: containerstorage.azure.com/v1 kind: StoragePool metadata: name: azuredisk namespace: acstor spec: zones: ["1", "2", "3"] poolType: azureDisk: {} resources: requests: storage: 1Ti
Aplique o arquivo de manifesto YAML para criar o pool de armazenamento de várias zonas.
kubectl apply -f acstor-multizone-storagepool.yaml
Usar discos ZRS (armazenamento com redundância de zona)
Se sua carga de trabalho exigir redundância de armazenamento, você poderá aproveitar discos que usam armazenamento com redundância de zona, que copia seus dados de forma síncrona em três zonas de disponibilidade do Azure na região primária.
Você pode especificar o disco skuName
como um ou Premium_ZRS
StandardSSD_ZRS
na definição do pool de armazenamento, como no exemplo a seguir.
apiVersion: containerstorage.azure.com/v1
kind: StoragePool
metadata:
name: azuredisk
namespace: acstor
spec:
poolType:
azureDisk:
skuName: Premium_ZRS
resources:
requests:
storage: 1Ti