Panoramica
Esistono due tipi di modelli di rete in modalità Flat: rete in modalità statica e rete in modalità dinamica (che utilizza il protocollo BGP). La modalità flat statica può essere utilizzata quando i nodi coprono un singolo dominio di livello 2. Per i nodi che si estendono su più ambiti di livello 2, utilizza la modalità IP flat con BGP.
In un modello di rete in modalità flat, i pod hanno indirizzi IP univoci nei cluster. Assicurati che i CIDR dei pod assegnati siano univoci e non si sovrappongano ad altre sottoreti. Ad esempio, gli indirizzi IP non possono sovrapporsi a quelli utilizzati per i nodi o per gli altri CIDR dei pod in altri cluster. Questi indirizzi IP possono essere accesi dall'esterno e, di conseguenza, i pod su qualsiasi nodo possono comunicare con tutti i pod su tutti gli altri nodi. La comunicazione dal pod a qualsiasi indirizzo IP esterno non richiede la Network Address Translation (NAT). Per saperne di più sul modello di rete con modalità piatta e sul suo confronto con il modello di rete con modalità isola predefinito, consulta Modelli di rete con modalità piatta e con modalità isola.
Utilizza un modello di rete in modalità flat quando hai uno spazio di indirizzi IP di grandi dimensioni e puoi assegnare un CIDR del pod univoco per un cluster. Puoi configurare i CIDR dei pod utilizzando dinamicamente i ClusterCIDRConfigs. Puoi aggiungere o eliminare ClusterCIDRConfigs dopo la creazione del cluster. Per ulteriori informazioni su ClusterCIDRConfig ed esempi di utilizzo, consulta Informazioni sulla risorsa personalizzata ClusterCIDRConfig.
Per ulteriori informazioni sulla modalità flat con BGP, consulta Implementare il modello di rete in modalità flat con il supporto di BGP.
Informazioni sulla raggiungibilità dell'indirizzo IP del pod
In modalità di rete piatta statica per IPv4, la raggiungibilità dell'indirizzo IP del pod si basa sui pacchetti ARP (Address Resolution Protocol). Pertanto, gli indirizzi IP dei pod sono accessibili solo quando si trovano nello stesso dominio di livello 2. I nodi devono appartenere allo stesso dominio di livello 2. Gli indirizzi IP specificati per i pod (utilizzando ClusterCIDRConfigs) devono trovarsi nella stessa subnet dei nodi del cluster. I CIDR dei pod configurati devono provenire dalla subnet dei nodi. Ad esempio, la subnet 222.1.0.0/16 viene utilizzata dai nodi di un cluster, quindi seleziona una subnet più piccola all'interno della subnet per i pod, 222.1.2.0/24. Assicurati che nessuna altra risorsa nel cluster utilizzi un indirizzo IP dell'intervallo allocato per i pod.
La sezione seguente descrive la configurazione per le reti in modalità flat per IPv4.
Come implementare una rete in modalità piatta statica
Per impostazione predefinita, il cluster Google Distributed Cloud viene creato in modalità di rete a isola. Questa sezione descrive come configurare il networking in modalità flat per il cluster.
Per eseguire il deployment di un cluster con un modello di rete in modalità flat, apporta le seguenti modifiche al file di configurazione del cluster:
Il networking in modalità flat può essere abilitato per un cluster solo durante la creazione del cluster. Per creare un nuovo cluster con la rete in modalità flat:
Modifica il file di configurazione del cluster per aggiungere
clusterNetwork.flatIPv4
e impostalo sutrue
.Quando attivi la modalità di rete flat, il CIDR del pod specificato nel file di configurazione del cluster (
clusterNetwork.pods.cidrBlocks
) viene ignorato.Aggiungi un manifest ClusterCIDRConfig al file di configurazione del cluster.
Nel file manifest ClusterCIDRConfig, includi le seguenti informazioni:
metadata.namespace
: lo spazio dei nomi del cluster.spec.ipv4.cidr
: l'intervallo di indirizzi IP in formato blocco CIDR da utilizzare per i pod nel cluster. Questo intervallo deve provenire dalla stessa subnet dei nodi del cluster.perNodeMaskSize
: i controlli preliminari per la creazione del cluster verificano che il valoreperNodeMaskSize
sia sufficiente per eseguire il provisioning del numero di pod specificato inmaxPodsPerNode
.nodeSelector
: se nessuna etichetta del nodo corrisponde al valorenodeSelector
, la riconciliazione dei nodi rimane in attesa e la creazione del cluster non viene completata.
Il seguente estratto di un file di configurazione del cluster mostra come implementare la modalità di rete flat senza il supporto di BGP. I CIDR visualizzati in questo estratto sono solo esempi e dovrai sostituirli con i tuoi CIDR. Quando sostituisci i CIDR con i tuoi, assicurati che soddisfino i criteri per la raggiungibilità del pod come specificato in Informazioni sulla raggiungibilità degli indirizzi IP dei pod.
---
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
name: flat-mode
namespace: cluster-flat-mode
spec:
... (other cluster config omitted)
...
# Cluster networking configuration
clusterNetwork:
flatIPv4: true
services:
cidrBlocks:
- 10.96.0.0/12
... (other cluster config omitted)
...
---
apiVersion: baremetal.cluster.gke.io/v1alpha1
kind: ClusterCIDRConfig
metadata:
name: cluster-wide-1
namespace: cluster-flat-mode
spec:
ipv4:
cidr: "222.1.0.0/16"
perNodeMaskSize: 24
Limitazioni
La rete in modalità flat statica per Google Distributed Cloud presenta i seguenti limiti:
I pod che utilizzano reti in modalità flat sarebbero raggiungibili all'interno del singolo dominio di livello 2. Anche qualsiasi altra macchina non presente nel cluster, ma nello stesso dominio di livello 2, può raggiungere i pod. Questa limitazione esiste anche per IPv6 quando vengono creati cluster a doppio stack e quando IPv6 è in modalità flat senza BGP. Per ulteriori informazioni, consulta Informazioni sulla raggiungibilità degli indirizzi IP del pod.
Il controller IPAM di Google Distributed Cloud monitora la disponibilità degli indirizzi IP all'interno dei CIDR pod configurati. Non tiene traccia degli IP già in uso da altri dispositivi. Pertanto, qualsiasi altro IP nel dominio di Livello 2 non deve interferire con i CIDR dei pod. Per ulteriori informazioni, consulta Informazioni sulla raggiungibilità degli indirizzi IP del pod.