Partilhar via


Governança do cluster 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 governação inclui o planeamento de iniciativas, a definição de prioridades estratégicas e a utilização de mecanismos e processos para controlar aplicações e recursos. Para clusters Kubernetes em um ambiente de nuvem, governança significa implementar políticas em clusters Kubernetes e nos aplicativos executados nesses clusters.

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

Nota

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

Dimensões de governança do Kubernetes

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

  • As metas descrevem as metas da política de segurança e conformidade que uma estratégia de governança deve cumprir. Por exemplo, os destinos especificam quais usuários podem acessar um cluster, namespace ou aplicativo do Kubernetes, ou quais registros de contêiner e imagens 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 aplicar 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 o Kyverno, o 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 exemplos de políticas para Kyverno e Gatekeeper.

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

Controlador de chamadas

A Cloud Native Computing Foundation (CNCF) patrocina o Gatekeeper Policy Controller 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 OPA comuns, consulte a Biblioteca OPA Gatekeeper.

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, mutar 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 kustomizesobreposições no estilo 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 da Política do Azure para AKS, pode gerar novos objetos do Kubernetes com políticas, não apenas validar ou mutar recursos existentes. Por exemplo, você pode definir uma política Kyverno para automatizar a criação de uma política de rede padrão para qualquer novo namespace.

Para obter mais informações, consulte o guia de instalação oficial 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 APIServer falhando chamadas webhook), consulte a documentação de solução de problemas do Kyverno.

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

Azure Policy Add-on para AKS

O Complemento de Política do Azure para AKS estende o Gatekeeper para aplicar imposições e salvaguardas em escala em clusters AKS de forma centralizada e consistente. A Política do Azure permite o gerenciamento centralizado de conformidade e relatórios para vários clusters Kubernetes a partir de um único local. Esse recurso torna o gerenciamento e a governança de ambientes multicluster mais eficientes do que a implantação e o gerenciamento do Kyverno ou do Gatekeeper para cada cluster.

O Complemento de Política do Azure para AKS executa as seguintes funções:

  • Verifica com o serviço de Política do Azure se há atribuições de política para o cluster.
  • Implanta definições de política no cluster como modelo de restrição e recursos personalizados de restrição.
  • Relata detalhes de auditoria e conformidade de volta para o serviço de Política do Azure.

O Complemento de Política do Azure dá suporte aos ambientes de cluster Kubernetes habilitados para AKS e Azure Arc. Para obter mais informações, consulte Compreender a política do Azure para clusters Kubernetes. Para instalar o complemento em clusters novos e existentes, consulte Instalar o Complemento de Política do Azure para AKS.

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

Contribuidores

Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Principais autores:

Outros contribuidores:

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

Próximos passos