Este artigo descreve uma solução para gerenciar e executar o gerenciamento de dados de aplicativos de aplicativos em contêineres com monitoração de estado, seus recursos e seus dados.
Arquitetura
Baixe um Arquivo Visio dessa arquitetura.
Fluxo de dados
Uma conta do Azure NetApp Files é criada em uma assinatura do Azure e os pools de capacidade são definidos. Esses pools mapeiam para os níveis de serviço que a implementação precisa, como Standard, Premium e Ultra.
Um ou mais clusters AKS são implantados. Os clusters precisam ser:
- Em uma região onde AKS e Azure NetApp Files estão disponíveis. Para regiões onde esses produtos estão disponíveis, consulte Produtos disponíveis por região.
- Em uma rede virtual que tem acesso direto a uma sub-rede delegada para Arquivos do Azure NetApp. Para obter mais informações, confira Diretrizes para planejamento de rede do Azure NetApp Files.
Um usuário se inscreve em uma conta do Astra Control Service. O Astra Control Service usa uma credencial de entidade de serviço do Azure que tem acesso de colaborador para localizar os clusters AKS a serem gerenciados. O Astra Control Service instala o Astra Trident e cria StorageClasses mapeadas para cada camada de serviço quando um cluster é adicionado ao Astra Control Service. O Astra Trident cria o Kubernetes PersistentVolumes (PVs) a partir do aplicativo PersistentVolumeClaims (PVCs) usando os objetos StorageClass (SC) implantados automaticamente que mapeiam para os pools de capacidade do Azure NetApp Files. O mapeamento leva em conta o nível de serviço dos pools de capacidade.
O usuário instala aplicativos nos clusters AKS. Os possíveis métodos de implantação incluem gráficos Helm, operadores e manifestos YAML. Os aplicativos podem ser agrupados por rótulos ou namespaces. O Astra Trident provisiona volumes persistentes com base no PersistentVolumeClaims usando os
StorageClass
objetos.O Astra Control Service gerencia aplicativos e seus recursos associados, como pods, serviços, implantações e
PersistentVolumeClaim
objetos (PVC). Ele também gerencia o PersistentVolume (PV) ligado ao PVC. Os usuários definem aplicativos usando um destes métodos:- Confinando-os a um namespace
- Usando um rótulo personalizado do Kubernetes para agrupar recursos
Os usuários também podem agrupar objetos com escopo de cluster, como storageclasses, com (a) aplicativos específicos para gerenciá-los juntos.
O Astra Control Service orquestra snapshots e backups point-in-time, políticas de backup e clones ativos instantâneos para ajudar a proteger cargas de rabalho de aplicativos. O Astra Control Service alcança essa proteção ao:
Criação de políticas de proteção do Astra Control Service. Eles podem ser feitos para snapshots e/ou backups e especificar um agendamento e um destino de backup. Essas políticas possibilitam a proteção automática de aplicativos em um cronograma pré-determinado.
Tirar instantâneos sob demanda para aplicativos individuais ou em grupo.
Fazer backups instantâneos ou clones para aplicativos individuais ou em grupo.
Quando ocorrem desastres ou falhas de aplicativos, backups e instantâneos restauram o estado dos aplicativos. Os usuários podem clonar e migrar aplicativos entre namespaces e clusters AKS. Os clusters podem estar na mesma região ou em regiões separadas.
Componentes
- O AKS é um serviço kubernetes totalmente gerenciado que facilita a implantação e o gerenciamento de aplicativos em contêineres. O AKS oferece tecnologia kubernetes sem servidor, uma experiência integrada de CI/CD (integração contínua e entrega contínua) e segurança e governança de nível empresarial.
- Azure NetApp Files é um serviço de armazenamento do Azure. Esse serviço fornece compartilhamentos de arquivos NFS (sistema de arquivos de rede) de nível empresarial e SMB (bloco de mensagens do servidor). O Azure NetApp Files torna mais fácil migrar e executar aplicativos complexos baseados em arquivos sem alterações de código. Este serviço é adequado para usuários com volumes persistentes em ambientes Kubernetes.
- A Rede Virtual Azure é o bloco de construção fundamental das redes privadas no Azure. Através da Rede Virtual, os recursos do Azure, como máquinas virtuais, podem comunicar de forma segura entre si, com a Internet e com redes locais.
- O Astra Control Service é um serviço de gerenciamento de dados com reconhecimento de aplicativos totalmente gerenciado. O Astra Control Service ajuda você a gerenciar, proteger e mover cargas de trabalho do Kubernetes ricas em dados em nuvens públicas e ambientes locais. Esse serviço fornece proteção de dados, recuperação de desastres e migração para cargas de trabalho do Kubernetes. O Astra Control Service usa a tecnologia de gerenciamento de dados líder do setor do Azure NetApp Files para instantâneos, backups, replicação entre regiões e clonagem.
Alternativas
Você pode usar uma abordagem multifacetada personalizada para fazer backup ou replicar separadamente volumes persistentes, recursos do Kubernetes e outros recursos de estado de configuração necessários ao restaurar um aplicativo. Mas essa abordagem pode ser:
- Desajeitado.
- Difícil de tornar compatível com todos os aplicativos.
- Difícil de dimensionar entre os vários aplicativos e ambientes que uma empresa típica tem.
Em determinados ambientes, você pode reduzir custos evitando o tráfego de rede virtual entre pares. Para eliminar esse tráfego, simplifique a solução. Especificamente, traga os clusters AKS e a sub-rede que você delega para os Arquivos NetApp do Azure na mesma rede virtual, como ilustra este diagrama:
Baixe um Arquivo Visio dessa arquitetura.
Detalhes do cenário
Com aplicativos em contêineres, pode ser um desafio executar a proteção de dados de aplicativos. O aplicativo consiste em vários microsserviços, que devem ser gerenciados como uma entidade. Quando você implanta cargas de trabalho críticas para os negócios no Kubernetes, o gerenciamento de dados do aplicativo deve ser:
- Simples. O estabelecimento de políticas de proteção de dados e snapshots e backups sob demanda deve ser intuitivo. Essas políticas não devem depender dos detalhes da infraestrutura subjacente.
- Portáteis. Para possibilitar a mobilidade entre regiões para aplicativos, vários clusters do Kubernetes devem ser capazes de consumir os backups.
- Reconhecimento de aplicativo. Sua solução deve proteger todo o aplicativo, incluindo recursos padrão do Kubernetes, como segredos,
ConfigMap
objetos e volumes persistentes. Você também precisa proteger recursos personalizados do Kubernetes. Quando possível, os procedimentos devem desativar o aplicativo antes do snapshot e do backup. Essa prática evita a perda de dados durante os backups.
O NetApp Astra Control Service é uma solução para realizar o gerenciamento de dados de aplicativos com monitoração de estado que ajuda você a atingir essas metas. O Astra Control Service oferece proteção de dados, recuperação de desastres e recursos de mobilidade de aplicativos. Ele fornece cargas de trabalho AKS com monitoração de estado com um rico conjunto de serviços de gerenciamento de dados com reconhecimento de aplicativos e armazenamento. A tecnologia de proteção de dados do Azure NetApp Files está subjacente a esses serviços.
Possíveis casos de uso
Esta solução aplica-se a sistemas que executam aplicações com monitoração de estado:
- Sistemas de integração contínua (CI), como o Jenkins
- Cargas de trabalho de banco de dados como MySQL, MongoDB e PostgreSQL
- Componentes de IA e aprendizado de máquina, como TensorFlow e PyTorch
- Implantações do Elasticsearch
- Aplicações Kafka
- Plataformas de gerenciamento de código-fonte como GitLab
Considerações
Estas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios de orientação que podem ser usados para aprimorar a qualidade de uma carga de trabalho. Para obter mais informações, confira Microsoft Azure Well-Architected Framework.
Confiabilidade
A confiabilidade garante que seu aplicativo possa cumprir os compromissos que você assume com seus clientes. Para obter mais informações, confira Visão geral do pilar de confiabilidade.
Ao implantar um cluster AKS, você o implanta em uma única região. Para proteger as cargas de trabalho de aplicativos, é melhor implantar as cargas de trabalho em vários clusters AKS que abrangem várias regiões. Os fatores que afetam a implantação incluem a disponibilidade da região AKS e as regiões emparelhadas do Azure. Ao implantar clusters em várias zonas de disponibilidade, você distribui nós em várias zonas em uma única região. Essa distribuição de recursos de cluster AKS melhora a disponibilidade do cluster porque os clusters são resilientes à falha de uma zona específica.
O Azure NetApp Files está altamente disponível por design. Ele é construído sobre uma frota bare-metal altamente disponível de todos os sistemas de armazenamento flash. Para a garantia de disponibilidade deste serviço, consulte SLA para Azure NetApp Files.
O Azure NetApp Files dá suporte à replicação entre regiões para recuperação de desastres. Você pode replicar volumes entre pares de regiões do Azure continuamente. Para obter mais informações sobre replicação entre regiões, consulte estes recursos:
- Para informações gerais, confira Volumes de replicação entre regiões com Azure NetApp Files.
- Para obter os requisitos de replicação entre regiões, consulte Gerenciar a recuperação de desastres usando a replicação entre regiões.
- Para obter informações sobre como configurar a replicação entre regiões, consulte Criar replicação de volume para arquivos do Azure NetApp.
Otimização de custo
A otimização de custos é a análise de maneiras de reduzir as despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, confira Visão geral do pilar de otimização de custo.
Use a Calculadora de preços do Azure para estimar o custo dos seguintes componentes:
- AKS
- Azure NetApp Files
- Rede Virtual
Para obter os planos de preços do Astra Control Service, consulte Preços. Ao adotar o Astra Control Service, você pode se concentrar em seu aplicativo em vez de gastar tempo e recursos criando soluções personalizadas que não são dimensionadas. O Serviço de Controle Astra está disponível no Azure Marketplace.
Para executar cálculos detalhados de largura de banda e preços, use a Calculadora de Desempenho do Azure NetApp Files. Calculadoras básicas e avançadas estão disponíveis.
Excelência operacional
A excelência operacional abrange os processos de operações que implantam um aplicativo e o mantêm em execução na produção. Para obter mais informações, confira Visão geral do pilar de excelência operacional.
Quando você trabalha com o plano de controle do Kubernetes, é importante monitorar sua infraestrutura e camada de plataforma. O Astra Control Service fornece um plano de controle unificado que você pode usar para definir e gerenciar políticas de proteção de aplicativos em vários clusters AKS. Um painel fornece uma maneira de lidar continuamente com cargas de trabalho entre regiões. O Astra Trident também oferece um rico conjunto de métricas do Prometheus que você pode usar para monitorar o armazenamento provisionado.
Eficiência de desempenho
A eficiência do desempenho é a capacidade de dimensionar sua carga de trabalho para atender às demandas colocadas por usuários de maneira eficiente. Para obter mais informações, consulte Visão geral do pilar de eficiência de desempenho.
Os clusters AKS podem adicionar nós de trabalho extras para aumentar a escalabilidade. Para dimensionar sua solução, você pode adicionar pools de nós ou dimensionar pools de nós existentes. Essas etapas aumentam o número de nós no cluster, o número total de núcleos e a memória disponível para os aplicativos em contêineres.
Em cada rede virtual, você só pode delegar uma sub-rede para o Azure NetApp Files.
Quando você usa uma configuração básica para recursos de rede do Azure NetApp Files, há um limite de 1.000 endereços IP por rede virtual. A configuração de recursos de rede padrão não limita o número de endereços IP. Para obter mais informações, consulte Recursos de rede configuráveis. Para obter uma lista completa dos limites de recursos para Arquivos do Azure NetApp, consulte Limites de recursos para o Azure NetApp Files.
O Azure NetApp Files oferece várias camadas de desempenho. Quando você usa o Astra Control Service para descobrir clusters AKS, o processo de integração cria objetos selecionados StorageClass
que são mapeados para as camadas de serviço Standard, Premium e Ultra. Quando os usuários implantam aplicativos, eles escolhem um nível de armazenamento que atenda às suas necessidades. Vários pools de capacidade podem coexistir. Os volumes provisionados têm uma garantia de desempenho que corresponde à camada de serviço. Para obter uma lista dos níveis de serviço suportados pelo Azure NetApp Files, consulte Níveis de serviço para o Azure NetApp Files.
Implantar este cenário
Para implementar essa solução, você precisa de uma conta do Azure. Crie uma conta gratuitamente.
Para implantar esse cenário, siga estas etapas:
- Registre o provedor de recursos que torna possível usar os Arquivos NetApp do Azure.
- Review the Requisitos para usar o Astra Control Service com AKS.
- Use o Portal do Azure para criar uma conta do NetApp.
- Configure pools de capacidade na conta do Azure NetApp Files.
- Delegar uma sub-rede para Azure NetApp Files
- Crie uma entidade de serviço para o Astra Control Service usar para descobrir clusters AKS e executar operações de backup, restauração e gerenciamento de dados.
- Registre-se no Astra Control Service criando uma conta NetApp Cloud Central.
- Adicione clusters AKS ao Astra Control Service para começar a gerenciar aplicativos.
- Detectar aplicações no Astra Control Service. A maneira como você descobre e gerencia aplicativos depende da maneira como você os implanta e identifica. As estratégias típicas de identificação incluem agrupar objetos de aplicativo em um namespace dedicado, atribuir rótulos a objetos que compõem um aplicativo e usar gráficos Helm. O Astra Control Service suporta as três estratégias.
- Estabeleça políticas de proteção para fazer backup e restaurar aplicativos. Antes de definir políticas de proteção, identifique claramente suas cargas de trabalho. Um pré-requisito é que o Astra Control Service possa detectar exclusivamente cada aplicativo. Para obter mais informações, consulte Comece a gerenciar aplicativos.
Para conhecer as etapas que você pode seguir para ajudar a proteger aplicativos, consulte Recuperação de desastres de cargas de trabalho AKS com o Astra Control Service e os arquivos do Azure NetApp.
Para obter informações detalhadas sobre o Astra Control Service, consulte a documentação do Astra Control Service.
Colaboradores
Esse artigo é mantido pela Microsoft. Ele foi escrito originalmente pelos colaboradores a seguir.
Autor principal:
- Arnt de Gier | Engenheiro técnico de marketing
Outros colaboradores:
- Paolo Salvatori | Engenheiro de Clientes Principal
Próximas etapas
Para obter informações sobre como usar o AKS para implantar um cluster, consulte Tutorial: Implantar um cluster do Serviço de Kubernetes do Azure (AKS).
Para ver uma introdução ao Azure NetApp Files, confira Início Rápido: configurar o Azure NetApp Files e criar um volume NFS.
Para saber mais sobre o Astra Control Service, consulte a documentação do Astra Control Service.
Para obter uma explicação detalhada do uso do Astra Control Service para recuperação de desastres, consulte Recuperação de desastres de cargas de trabalho do AKS com Astra Control Service e Azure NetApp Files.
Para obter informações sobre como executar várias instâncias de um cluster AKS em várias regiões, consulte Linha de base do AKS para clusters multirregionais.
Para obter informações gerais sobre os componentes da solução, consulte estes recursos: