Dataplane V2

O Dataplane V2 é um plano de dados para o GKE e os clusters do GKE que está otimizado para a rede do Kubernetes. Esta página oferece uma vista geral do que o Dataplane V2 faz e como funciona.

Introdução

O Dataplane V2 oferece o seguinte:

  • Uma experiência do utilizador consistente para a rede no GKE e em todos os ambientes de cluster do GKE. Consulte a secção Disponibilidade do Dataplane V2 para informações sobre os ambientes que suportam o Dataplane V2.
  • Visibilidade em tempo real da atividade da rede.
  • Uma arquitetura mais simples que facilita a gestão e a resolução de problemas dos clusters.

O Dataplane V2 baseia-se no eBPF e em nós Linux para processar de forma flexível e eficiente pacotes de rede no kernel através de metadados específicos do Kubernetes.

Vantagens do Dataplane V2

Segurança

A política de rede do Kubernetes está sempre ativada em clusters com o Dataplane V2. Não tem de instalar nem gerir suplementos de software de terceiros, como o Calico, para aplicar a política de rede.

Escalabilidade

O plano de dados V2 foi concebido para melhorar o encaminhamento em clusters grandes. Não usa o kube-proxy nem o iptables.

Operações

Quando cria um cluster com o Dataplane V2, o registo da política de rede está integrado. Para ver quando os objetos Pod permitem e negam ligações, configure o CRD de registo no seu cluster.

Consistência

O Dataplane V2 está disponível e oferece as mesmas funcionalidades no GKE e noutros ambientes de clusters do GKE. Consulte o artigo Disponibilidade do Dataplane V2 para ver mais detalhes.

Como funciona o Dataplane V2

À medida que os pacotes chegam a um nó, os programas eBPF instalados no kernel decidem como encaminhar e processar os pacotes. Ao contrário do processamento de pacotes com iptables, os programas eBPF podem usar metadados específicos do Kubernetes no pacote. Isto permite que o Dataplane V2 processe eficientemente pacotes de rede no kernel e comunique ações anotadas ao espaço do utilizador para registo. O diagrama seguinte mostra o caminho de um pacote através de um nó com o plano de dados V2:

Um pacote que chega a um nó é processado no kernel pelo eBPF. Os programas eBPF aplicam políticas, resolvem serviços e rastreiam ligações. Esta atividade é comunicada ao espaço do utilizador para registo. Em seguida, a carga útil do pacote é entregue a um pod.

O controlador do plano de dados V2 no nó chama-se anetd. anetd é implementado como um DaemonSet em cada nó e é responsável por interpretar objetos Kubernetes e programar topologias de rede em eBPF. O controlador anetd substitui o kube-proxy de encaminhamento de serviços e o encaminhamento que faria no espaço de nomes kube-system.

O Dataplane V2 em clusters do GKE é executado no modo de rede de sobreposição. Neste modo, todos os nós do cluster formam uma malha de túneis através do protocolo de encapsulamento Geneve. Todo o tráfego de rede de contentor para contentor é encaminhado através destes túneis. A principal vantagem deste modelo é que os nós do cluster não precisam de conhecer a configuração de rede da AWS subjacente.

O que se segue?