Compartilhar via


Governança de cluster do Kubernetes

Governança refere-se à capacidade de uma organização de aplicar e validar regras para garantir a conformidade com os padrões corporativos. A governança ajuda as organizações a mitigar riscos, cumprir normas corporativas e regulamentações externas e minimizar a interrupção da adoção ou inovação.

A governança inclui o planejamento de iniciativas, a definição de prioridades estratégicas e o uso de mecanismos e processos para controlar aplicativos e recursos. Para clusters do Kubernetes em um ambiente de nuvem, governança significa implementar políticas entre clusters do Kubernetes e os aplicativos executados nesses clusters.

A governança do Kubernetes inclui o ambiente de nuvem e a infraestrutura de implantação de cluster, bem como os próprios clusters e seus aplicativos. Este guia se concentra na governança dentro de clusters Kubernetes. O artigo descreve e compara como o Amazon Elastic Kubernetes Service (Amazon EKS) e o Azure Kubernetes Service (AKS) gerenciam a governança do cluster Kubernetes.

Observação

Este artigo faz parte de uma série de artigos que ajudam profissionais familiarizados com o Amazon EKS a entender o Serviço Azure Kubernetes (AKS).

Dimensões da governança do Kubernetes

Três dimensões definem uma estratégia consistente de governança do Kubernetes:

  • As metas descrevem as metas de política de segurança e conformidade que uma estratégia de governança deve atender. Por exemplo, os destinos especificam quais usuários podem acessar um cluster, namespace ou aplicativo do Kubernetes ou quais registros e imagens de contêiner usar em quais clusters. A equipe de operações de segurança geralmente define essas metas como o primeiro passo na definição da estratégia de governança de uma empresa.

  • Os escopos detalham os elementos aos quais as políticas de destino se aplicam. Os escopos devem abordar todos os componentes visíveis do Kubernetes. Os escopos podem ser unidades organizacionais, como departamentos, equipes e grupos, ou ambientes como nuvens, regiões ou namespaces, ou ambos.

  • As diretivas de política usam os recursos do Kubernetes para impor as regras de destino nos escopos especificados para impor as políticas de governança.

Para obter mais informações, consulte Governança do Kubernetes, o que você deve saber.

Governança em EKS e AKS

  • Os clientes da Amazon Web Services (AWS) geralmente usam Kyverno, Gatekeeper ou outras soluções de terceiros para definir e implementar uma estratégia de governança para seus clusters do Amazon EKS. O repositório do GitHub aws-eks-best-practices/policies contém uma coleção de políticas de exemplo para Kyverno e Gatekeeper.

  • Os clientes do Azure também podem usar o Kyverno ou o Gatekeeper e podem usar o Complemento do Azure Policy para Kubernetes para estender o Gatekeeper para uma estratégia de governança do AKS.

Gatekeeper

A Cloud Native Computing Foundation (CNCF) patrocina o Controlador de Política de Gatekeeper de código aberto para Kubernetes para aplicar políticas em clusters Kubernetes. O Gatekeeper é um controlador de admissão do Kubernetes que impõe políticas criadas com o Open Policy Agent (OPA), um mecanismo de política de uso geral.

O OPA usa uma linguagem declarativa de alto nível chamada Rego para criar políticas que podem executar pods de locatários em instâncias separadas ou em prioridades diferentes. Para obter uma coleção de políticas comuns de OPA, consulte a Biblioteca do Gatekeeper do OPA.

Kyverno

O CNCF também patrocina o projeto de código aberto Kyverno para aplicar políticas em clusters Kubernetes. O Kyverno é um mecanismo de política nativo do Kubernetes que pode validar, mudar e gerar configurações de recursos do Kubernetes com políticas.

Com o Kyverno, você pode definir e gerenciar políticas como recursos do Kubernetes sem usar uma nova linguagem. Essa abordagem permite o uso de ferramentas familiares, como kubectl, git e kustomize para gerenciar políticas.

O Kyverno usa sobreposições de kustomize-style para validação, suporta patch JSON e patch de mesclagem estratégica para mutação e pode clonar recursos entre namespaces com base em gatilhos flexíveis. Você pode implantar políticas individualmente usando seus manifestos YAML ou empacotá-las e implantá-las usando gráficos Helm.

O Kyverno, ao contrário do Gatekeeper ou do Azure Policy para AKS, pode gerar novos objetos Kubernetes com políticas, não apenas validar ou mudar recursos existentes. Por exemplo, você pode definir uma política do Kyverno para automatizar a criação de uma política de rede padrão para qualquer novo namespace.

Para obter mais informações, confira o Guia de instalação do Kyverno. Para obter uma lista de políticas prontas para uso ou personalizáveis, consulte a biblioteca de políticas do Kyverno. Para referência de solução de problemas (como por exemplo, chamadas de webhook do APIServer com falha), consulte a documentação de solução de problemas do Kyverno.

Como alternativa, você pode implantar a implementação do Kyverno dos Padrões de Segurança de Pod do Kubernetes (PSS) como políticas do Kyverno. Os controles PSS fornecem um ponto de partida para a segurança operacional geral do cluster Kubernetes.

Complemento do Azure Policy para AKS

O Complemento do Azure Policy para AKS estende o Gatekeeper para aplicar imposições e proteções em escala nos clusters AKS de maneira centralizada e consistente. O Azure Policy permite o gerenciamento centralizado de conformidade e a geração de relatórios para vários clusters do Kubernetes em um único local. Esse recurso torna o gerenciamento e a governança de ambientes multicluster mais eficientes do que implantar e gerenciar o Kyverno ou o Gatekeeper para cada cluster.

O Complemento do Azure Policy para AKS promulga as seguintes funções:

  • Verifica atribuições de política ao cluster com o serviço Azure Policy.
  • Implantar definições de política no cluster como modelo de restrição e recursos personalizados de restrição.
  • Relata os detalhes de auditoria e de conformidade de volta ao serviço Azure Policy.

O Complemento de Azure Policy dá suporte aos ambientes de cluster do Kubernetes habilitados para AKS e Azure Arc. Para obter mais informações, consulte Noções básicas sobre o Azure Policy para clusters do Kubernetes. Para instalar o complemento em clusters novos e existentes, consulte Instalar o Complemento de Azure Policy para AKS.

Depois de instalar o Complemento do Azure Policy para AKS, você poderá aplicar definições de política individuais ou grupos de definições de política chamados iniciativas ao seu cluster AKS. Você pode aplicar e impor definições incorporadas de política e iniciativa do Azure Policy desde o início ou criar e atribuir suas próprias definições de política personalizadas. As políticas de segurança incorporadas do Azure Policy ajudam a melhorar a postura de segurança do cluster AKS, impor padrões organizacionais e avaliar a conformidade em escala.

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Principais autores:

Outros colaboradores:

Para ver perfis não públicos do LinkedIn, entre no LinkedIn.

Próximas etapas