O que é o Armazenamento de Contêineres do Azure? Versão Prévia

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. Ele se integra ao Kubernetes, permitindo que você provisione volumes persistentes de forma dinâmica e automática para armazenar dados de aplicativos com estado em execução em clusters do Kubernetes.

Importante

O Armazenamento de Contêineres do Azure está atualmente em pré-visualização pública e não está disponível em todas as regiões do Azure. Confira a disponibilidade regional. Esta versão prévia é fornecida sem um SLA e não é recomendada para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.

Para começar a usar o Armazenamento de Contêineres do Azure, confira Usar o Armazenamento de Contêineres do Azure para usar com o Serviço de Kubernetes do Azure ou assista ao vídeo.

Gostaríamos de obter informações sobre como você planeja usar o Armazenamento de Contêineres do Azure. Responda a essa breve pesquisa.

Esse vídeo fornece uma introdução ao Armazenamento de Contêineres do Azure, um serviço de orquestração e gerenciamento de armazenamento de ponta a ponta para aplicativos com estado. Veja como é simples criar e gerenciar volumes para aplicativos de contêiner com estado em escala de produção. Saiba como otimizar o desempenho de cargas de trabalho com estado no AKS (Serviço de Kubernetes do Azure) para dimensionar efetivamente os serviços de armazenamento, fornecendo uma experiência econômica e nativa de contêiner.

Tipos de armazenamento com suporte

O Armazenamento de Contêineres do Azure utiliza as ofertas existentes do Armazenamento do Azure para o armazenamento de dados real e oferece uma solução de gerenciamento e orquestração de volume criada especialmente para contêineres. Você pode escolher qualquer uma das opções de armazenamento de reserva com suporte para criar um pool de armazenamento para seus volumes persistentes.

O Armazenamento de Contêineres do Azure é compatível com volumes persistentes com o modo de acesso ReadWriteOnce para clusters do Serviço de Kubernetes do Azure (AKS) baseados em Linux. As opções de armazenamento de backup com suporte incluem apenas ofertas de armazenamento em bloco: Discos do Azure, discos efêmeros (NVMe local ou SSD temporário) e Azure Elastic SAN. A tabela a seguir resume os tipos de armazenamento com suporte, as cargas de trabalho recomendadas e os modelos de provisionamento.

Tipo de armazenamento Descrição Cargas de trabalho Ofertas Modelo de provisionamento
Azure Elastic SAN Provisionamento sob demanda, recurso totalmente gerenciado Bancos de dados de uso geral, serviços de streaming e de mensagens, ambientes de CD/CI e outras cargas de trabalho de nível 1/nível 2. Azure Elastic SAN Provisionado sob demanda, por volume criado e instantâneo de volume. Vários clusters podem acessar uma única SAN simultaneamente; no entanto, volumes persistentes só podem ser anexados por um consumidor de cada vez.
Discos do Azure Controle granular de SKUs e configurações de armazenamento Os Discos do Azure são uma boa opção para bancos de dados de nível 1 e de uso geral como, por exemplo, MySQL, MongoDB e PostgreSQL. SSD Premium, SSD Premium v2, SSD Standard, Disco Ultra Provisionados por tamanho do pool de armazenamento de contêiner de destino e tamanho máximo de volume.
Disco Efêmero Utiliza recursos de armazenamento local em nós do AKS (NVMe ou SSD temporário) O disco efêmero é extremamente sensível à latência (baixa latência sub-ms) e, portanto, melhor para aplicativos sem nenhuma exigência de durabilidade de dados ou compatíveis com a replicação de dados integrada, como o Cassandra. O NVMe está disponível em SKUs de VM otimizadas para armazenamento Implantado como parte das VMs que hospedam um cluster do AKS. O AKS descobre o armazenamento efêmero disponível em nós do AKS e os adquire para implantação de volumes.

Suporte a recursos para diferentes tipos de armazenamento

O suporte a recursos depende de qual opção de armazenamento de backup você selecionar. A tabela a seguir lista os principais recursos do Armazenamento de Contêineres do Azure e indica quais opções de armazenamento dão suporte a eles.

Recurso NVMe local Local SSD Discos do Azure Azure Elastic SAN
Expansão/redimensionamento do pool de armazenamento Com suporte Compatível Sem suporte Sem suporte
Replicação Com suporte Sem suporte Com suporte nativo Com suporte nativo
Consumo de recursos Com suporte Compatível Com suporte Visualizar
SSE/CMK Sem suporte Sem suporte Com suporte Visualizar
Opção Expor ZRS N/D N/D Com suporte Com suporte
Volumes persistentes Com suporte Com suporte 1 Com suporte Visualizar
Volumes efêmeros Com suporte Compatível Com suporte Visualizar
Instantâneos Com suporte2 Com suporte Compatível Sem suporte

1 Com anotação explícita de que os dados não são persistentes.

2 Somente com replica_count de 1. Não há suporte para contagens de réplicas mais altas.

Disponibilidade regional

O Armazenamento de Contêineres do Azure só está disponível para um subconjunto de regiões do Azure:

  • (Africa) Norte da África do Sul
  • (Pacífico Asiático) Leste da Austrália
  • (Pacífico Asiático) Leste da Ásia
  • (Pacífico Asiático) Leste do Japão
  • (Pacífico Asiático) Coreia Central
  • (Pacífico Asiático) Sudeste da Ásia
  • (Pacífico Asiático) Índia Central
  • (Europa) França Central
  • (Europa) Norte da Europa
  • (Europa) Oeste da Europa
  • (Europa) Sul do Reino Unido
  • (Europa) Suécia Central
  • (Europa) Norte da Suíça
  • (Oriente Médio) Norte dos EAU
  • (América do Norte) Leste dos EUA
  • (América do Norte) Leste dos EUA 2
  • (América do Norte) Oeste dos EUA
  • (América do Norte) Oeste dos EUA 2
  • (América do Norte) Oeste dos EUA 3
  • (América do Norte) EUA Central
  • (América do Norte) Centro-Norte dos EUA
  • (América do Norte) Centro-Sul dos EUA
  • (América do Norte) Centro-Oeste dos EUA
  • (América do Norte) Canadá Central
  • (América do Norte) Leste do Canadá
  • (América do Sul) Sul do Brasil

Novidades no Armazenamento de Contêineres do Azure

Com base nos comentários dos clientes, incluímos os seguintes recursos com a atualização de versão prévia mais recente:

Para obter mais informações sobre esses recursos, envie um email para a equipe de Armazenamento de Contêineres do Azure em azcontainerstorage@microsoft.com.

Por que o Armazenamento de Contêineres do Azure é útil

Até agora, fornecer armazenamento em nuvem para contêineres requeria o uso de drivers de interface de armazenamento de contêiner (CSI) individuais para utilizar os serviços de armazenamento destinados a cargas de trabalho centradas em IaaS e fazê-los funcionar para contêineres. Isso cria uma sobrecarga operacional e aumenta o risco de problemas com disponibilidade, escalabilidade, desempenho, usabilidade e custos de aplicativos.

O Armazenamento de Contêineres do Azure é derivado do OpenEBS, uma solução de código aberto que fornece recursos de armazenamento de contêiner para o Kubernetes. Ao oferecer uma solução de orquestração de volumes gerenciada por meio de controladores de armazenamento baseados em microsserviços em um ambiente do Kubernetes, o Armazenamento de Contêineres do Azure permite um verdadeiro armazenamento nativo de contêiner.

Você pode usar o Armazenamento de Contêineres do Azure para:

  • Acelerar as iniciativas de VM para contêiner: o Armazenamento de Contêineres do Azure expõe o espectro completo de ofertas de armazenamento em bloco do Azure que antes só estavam disponíveis para VMs e as disponibiliza para os contêineres. Inclui um disco efêmero que fornece uma latência extremamente baixa para cargas de trabalho como o Cassandra e também o Azure Elastic SAN, que fornece uma iSCSI nativa e destinos provisionados compartilhados.

  • Simplificar o gerenciamento de volumes com o Kubernetes: ao fornecer a orquestração de volume por meio do painel de controle do Kubernetes, o Armazenamento de Contêineres do Azure facilita a implantação e o gerenciamento de volumes no Kubernetes, sem a necessidade de uma movimentação constante entre diferentes painéis de controle.

  • Reduzir o custo total de propriedade (TCO): aprimore a eficiência econômica aumentando a escala dos volumes persistentes com suporte, por pod ou por nó. Reduza os recursos de armazenamento necessários para o provisionamento compartilhando os recursos de armazenamento dinamicamente. Observe que não há suporte para o escalonamento vertical do pool de armazenamento propriamente dito.

Principais benefícios

  • Rápido escalonamento horizontal de pods com estado: o Armazenamento de Contêineres do Azure monta volumes persistentes por meio de protocolos de armazenamento de rede em blocos (NVMe-oF ou iSCSI), oferecendo anexação e desanexação rápidas dos volumes persistentes. Você pode começar pequeno e implantar recursos conforme o necessário, garantindo, ao mesmo tempo, que seus aplicativos não fiquem à míngua nem sejam interrompidos durante a inicialização ou na produção. A resiliência do aplicativo é aprimorada com respawns (ressuscitação) de pods em todo o cluster, requerendo um movimento rápido de volumes persistentes. Ao tirar proveito dos protocolos de rede remota, o Armazenamento de Contêineres do Azure forma uma combinação estreita com o ciclo de vida do pod para dar suporte a aplicativos com estado sofisticados e altamente resilientes no AKS.

  • Desempenho aprimorado para cargas de trabalho com estado: o Armazenamento de Contêineres do Azure permite um desempenho de leitura superior e fornece um desempenho de gravação semelhante ao de um disco usando NVMe-oF por RDMA. Isso permite que os clientes cumpram os requisitos de desempenho com economia para vários tipos de cargas de trabalho de contêiner, incluindo o uso intensivo de E/S de nível 1, uso geral, sensível à taxa de transferência e desenvolvimento/teste. Acelere o tempo de anexação/desanexação de volumes persistentes e minimize o tempo de failover do pod.

  • Orquestração de volumes nativa do Kubernetes: crie pools de armazenamento e volumes persistentes, capture instantâneos e gerencie todo o ciclo de vida dos volumes usando comandos kubectl sem precisar alternar entre conjuntos de ferramentas para diferentes operações do painel de controle.

Glossário

É útil entender alguns termos-chave relacionados ao Armazenamento de Contêineres do Azure e ao Kubernetes:

  • Transporte em contêineres

    Empacotamento do código do aplicativo com apenas o sistema operacional e as dependências necessárias para criar um único executável.

  • Kubernetes

    O Kubernetes é um sistema de código aberto para automatizar a implantação, o dimensionamento e o gerenciamento de aplicativos em contêineres. Um cluster do Kubernetes é um conjunto de nós que executam aplicativos conteinerizados.

  • AKS (Serviço de Kubernetes do Azure)

    O Serviço de Kubernetes do Azure é um serviço de Kubernetes hospedado que simplifica a implantação de um cluster gerenciado do Kubernetes no Azure descarregando a sobrecarga operacional no Azure. O Azure se encarrega das tarefas críticas, como o monitoramento e manutenção da integridade.

  • Pool de armazenamento

    A pilha do Armazenamento de Contêineres do Azure tenta unificar o modelo de objeto nos diversos recursos e abstrações de plataforma pertencentes ao cluster. Para cumprir o objetivo da representação unificada, a capacidade de armazenamento disponível é agregada a um objeto de pool de armazenamento. A capacidade de armazenamento dentro de um pool de armazenamento é considerada homogênea. Um cluster do AKS pode ter vários pools de armazenamento. Os pools de armazenamento também servem como um limite de autenticação e provisionamento. Os volumes persistentes fornecem um constructo lógico para que os operadores gerenciem a infraestrutura de armazenamento e, ao mesmo tempo, simplificam a criação e o gerenciamento de volume para os desenvolvedores de aplicativos.

  • Classe de armazenamento

    Uma classe de armazenamento do Kubernetes define como uma unidade de armazenamento é criada dinamicamente com um volume persistente. Para obter mais informações, confira Classes de Armazenamento do Kubernetes.

  • Volume persistente

    Os volumes persistentes são como discos em uma VM. Representam um dispositivo de bloco bruto que você pode usar para montar qualquer sistema de arquivos. Os volumes são provisionados em um pool de armazenamento e compartilham as características de desempenho (IOPS, largura de banda e capacidade) do pool de armazenamento. Os desenvolvedores de aplicativos criam volumes persistentes paralelamente às suas definições de aplicativos ou pods, e os volumes costumam ser vinculados ao ciclo de vida do aplicativo com estado. Para obter mais informações, confira Volumes Persistentes.

  • Declaração de volume persistente (PVC)

    A PVC (declaração de volume persistente) é usada para provisionar o armazenamento automaticamente com base em uma classe de armazenamento.

Próximas etapas