Dataplane V2

Dataplane V2 è un piano dati per i cluster GKE e GKE ottimizzato per il networking Kubernetes. Questa pagina fornisce una panoramica di cosa fa Dataplane V2 e come funziona.

Introduzione

Dataplane V2 fornisce:

  • Un'esperienza utente coerente per il networking in GKE e in tutti gli ambienti dei cluster GKE. Consulta la sezione Disponibilità di Dataplane V2 per informazioni sugli ambienti che supportano Dataplane V2.
  • Visibilità in tempo reale dell'attività di rete.
  • Un'architettura più semplice che semplifica la gestione e la risoluzione dei problemi dei cluster.

Dataplane V2 si basa su eBPF e sui nodi Linux per elaborare in modo flessibile ed efficiente i pacchetti di rete nel kernel utilizzando metadati specifici di Kubernetes.

Vantaggi di Dataplane V2

Sicurezza

La policy di rete di Kubernetes è sempre attiva nei cluster con Dataplane V2. Non devi installare e gestire componenti aggiuntivi software di terze parti come Calico per applicare i criteri di rete.

Scalabilità

Dataplane V2 è progettato per migliorare il routing nei cluster di grandi dimensioni. Non utilizza kube-proxy o iptables.

Operazioni

Quando crei un cluster con Dataplane V2, la registrazione delle policy di rete è integrata. Per vedere quando gli oggetti Pod consentono e negano le connessioni, configura la CRD di logging sul cluster.

Coerenza

Dataplane V2 è disponibile e offre le stesse funzionalità su GKE e su altri ambienti di cluster GKE. Per ulteriori dettagli, consulta la sezione Disponibilità di Dataplane V2.

Come funziona Dataplane V2

Quando i pacchetti arrivano a un nodo, i programmi eBPF installati nel kernel decidono come instradarli ed elaborarli. A differenza dell'elaborazione dei pacchetti con iptables, i programmi eBPF possono utilizzare metadati specifici di Kubernetes nel pacchetto. In questo modo, Dataplane V2 elabora in modo efficiente i pacchetti di rete nel kernel e segnala le azioni annotate allo spazio utente per la registrazione. Il seguente diagramma mostra il percorso di un pacchetto attraverso un nodo utilizzando Dataplane V2:

Un pacchetto che arriva a un nodo viene elaborato nel kernel da eBPF. I programmi eBPF eseguono l'applicazione dei criteri, la risoluzione dei servizi e il monitoraggio delle connessioni. Questa attività viene segnalata a userspace per la registrazione. Il payload del pacchetto viene quindi consegnato a un pod.

Il controller Dataplane V2 sul nodo è chiamato anetd. anetd viene implementato come DaemonSet in ogni nodo ed è responsabile dell'interpretazione degli oggetti Kubernetes e della programmazione delle topologie di rete in eBPF. Il controller anetd sostituisce kube-proxy per il routing dei servizi e il routing che eseguirebbe nello spazio dei nomi kube-system.

Dataplane V2 sui cluster GKE viene eseguito in modalità Overlay Network. In questa modalità, tutti i nodi del cluster formano una mesh di tunnel utilizzando il protocollo di incapsulamento Geneve. Tutto il traffico di rete da container a container viene instradato attraverso questi tunnel. Il vantaggio principale di questo modello è che i nodi del cluster non devono essere a conoscenza della configurazione di rete AWS sottostante.

Passaggi successivi