Melhores práticas para operadores e programadores de clusters para compilar e gerir aplicações no Azure Kubernetes Service (AKS)
Criar e executar aplicativos com êxito no Serviço Kubernetes do Azure (AKS) requer compreensão e implementação de alguns conceitos-chave, incluindo:
- Recursos de multilocação e agendamento.
- Segurança de clusters e pods.
- Continuidade de negócios e recuperação de desastres.
O grupo de produtos AKS, as equipes de engenharia e as equipes de campo (incluindo black belts globais (GBBs)) contribuíram, escreveram e agruparam as seguintes práticas recomendadas e artigos conceituais. Seu objetivo é ajudar os operadores e desenvolvedores de cluster a entender melhor os conceitos acima e implementar os recursos apropriados.
Práticas recomendadas do operador de cluster
Se você for um operador de cluster, trabalhe com proprietários e desenvolvedores de aplicativos para entender suas necessidades. Em seguida, você pode usar as seguintes práticas recomendadas para configurar seus clusters AKS para atender às suas necessidades.
Uma prática importante que você deve incluir como parte do processo de desenvolvimento e implantação de aplicativos é lembrar-se de seguir padrões de implantação e teste comumente usados. Testar seu aplicativo antes da implantação é uma etapa importante para garantir sua qualidade, funcionalidade e compatibilidade com o ambiente de destino. Ele pode ajudá-lo a identificar e corrigir quaisquer erros, bugs ou problemas que possam afetar o desempenho, a segurança ou a usabilidade do aplicativo ou da infraestrutura subjacente.
Arquitetura multi-inquilino
- Melhores práticas de isolamento de cluster
- Inclui componentes principais de multilocação e isolamento lógico com namespaces.
- Melhores práticas de funcionalidades básicas do Scheduler
- Inclui o uso de cotas de recursos e orçamentos de interrupção de pod.
- Melhores práticas de funcionalidades avançadas do Scheduler
- Inclui o uso de manchas e tolerâncias, seletores de nós e afinidade, e afinidade e antiafinidade entre pods.
- Melhores práticas de autorização e autenticação
- Inclui integração com o Microsoft Entra ID, usando o controle de acesso baseado em função do Kubernetes (Kubernetes RBAC), usando o Azure RBAC e identidades pod.
Segurança
- Melhores práticas para atualizações e segurança do cluster
- Inclui a proteção do acesso ao servidor de API, a limitação do acesso ao contêiner e o gerenciamento de atualizações e reinicializações de nós.
- Práticas recomendadas para gerenciamento e segurança de imagens de contêiner
- Inclui a proteção da imagem e dos tempos de execução e compilações automatizadas em atualizações de imagem base.
- Práticas recomendadas para segurança de pods
- Inclui a proteção do acesso a recursos, a limitação da exposição de credenciais e o uso de identidades de pod e cofres de chaves digitais.
Rede e armazenamento
- Práticas recomendadas para conectividade de rede
- Inclui diferentes modelos de rede, usando firewalls de entrada e de aplicativos da Web (WAF) e protegendo o acesso SSH do nó.
- Melhores práticas para armazenamento e cópias de segurança
- Inclui a escolha do tipo de armazenamento e do tamanho do nó apropriados, o provisionamento dinâmico de volumes e backups de dados.
Executar cargas de trabalho preparadas para empresas
- Práticas recomendadas para continuidade de negócios e recuperação de desastres
- Inclui o uso de pares de regiões, vários clusters com o Gerenciador de Tráfego do Azure e replicação geográfica de imagens de contêiner.
Práticas recomendadas para desenvolvedores
Se você for um desenvolvedor ou proprietário de aplicativo, poderá simplificar sua experiência de desenvolvimento e definir os recursos de desempenho de aplicativo necessários.
- Melhores práticas para os programadores de aplicações gerirem os recursos
- Inclui a definição de solicitações e limites de recursos de pod, a configuração de ferramentas de desenvolvimento e a verificação de problemas de aplicativos.
- Práticas recomendadas para segurança de pods
- Inclui a proteção do acesso a recursos, a limitação da exposição de credenciais e o uso de identidades de pod e cofres de chaves digitais.
- Práticas recomendadas para implantação e confiabilidade de cluster
- Inclui práticas recomendadas de implantação, cluster e pool de nós.
Conceitos de Kubernetes e AKS
Os seguintes artigos conceituais cobrem algumas das características e componentes fundamentais para clusters no AKS:
- Conceitos centrais do Kubernetes
- Acesso e identidade
- Conceitos de segurança
- Conceitos de rede
- Opções de armazenamento
- Opções de dimensionamento
Próximos passos
Para obter orientação sobre como projetar uma implementação em escala empresarial do AKS, consulte Planejar seu projeto AKS.
Azure Kubernetes Service