Laboratorio 11: Provisioning delle rotte di rete dei Pod¶
Info
Si tratta di un fork dell'originale "Kubernetes the hard way" scritto originariamente da Kelsey Hightower (GitHub: kelseyhightower). A differenza dell'originale, che si basa su distribuzioni simili a Debian per l'architettura ARM64, questo fork si rivolge a distribuzioni Enterprise Linux come Rocky Linux, che gira su architettura x86_64.
I pod assegnati a un nodo ricevono un indirizzo IP dall'intervallo CIDR dei pod del nodo. Attualmente, i pod non possono comunicare con altri pod in esecuzione su nodi diversi a causa della mancanza dei [percorsi di rete] (https://cloud.google.com/compute/docs/vpc/routes).
In questo laboratorio si creerà un percorso per ciascun nodo di lavoro che mappa l'intervallo CIDR del pod del nodo all'indirizzo IP interno del nodo.
Esistono altri modi per implementare il modello di rete Kubernetes.
La tabella di instradamento¶
In questa sezione si raccoglieranno le informazioni necessarie per creare percorsi nella rete VPC kubernetes-the-hard-way
.
Stampare l'indirizzo IP interno e l'intervallo CIDR del pod per ogni istanza di lavoro:
{
SERVER_IP=$(grep server machines.txt | cut -d " " -f 1)
NODE_0_IP=$(grep node-0 machines.txt | cut -d " " -f 1)
NODE_0_SUBNET=$(grep node-0 machines.txt | cut -d " " -f 5)
NODE_1_IP=$(grep node-1 machines.txt | cut -d " " -f 1)
NODE_1_SUBNET=$(grep node-1 machines.txt | cut -d " " -f 5)
}
ssh root@server <<EOF
ip route add ${NODE_0_SUBNET} via ${NODE_0_IP}
ip route add ${NODE_1_SUBNET} via ${NODE_1_IP}
EOF
ssh root@node-0 <<EOF
ip route add ${NODE_1_SUBNET} via ${NODE_1_IP}
EOF
ssh root@node-1 <<EOF
ip route add ${NODE_0_SUBNET} via ${NODE_0_IP}
EOF
Verifica¶
ssh root@server ip route
default via XXX.XXX.XXX.XXX dev ens160
10.200.0.0/24 via XXX.XXX.XXX.XXX dev ens160
10.200.1.0/24 via XXX.XXX.XXX.XXX dev ens160
XXX.XXX.XXX.0/24 dev ens160 proto kernel scope link src XXX.XXX.XXX.XXX
ssh root@node-0 ip route
default via XXX.XXX.XXX.XXX dev ens160
10.200.1.0/24 via XXX.XXX.XXX.XXX dev ens160
XXX.XXX.XXX.0/24 dev ens160 proto kernel scope link src XXX.XXX.XXX.XXX
ssh root@node-1 ip route
default via XXX.XXX.XXX.XXX dev ens160
10.200.0.0/24 via XXX.XXX.XXX.XXX dev ens160
XXX.XXX.XXX.0/24 dev ens160 proto kernel scope link src XXX.XXX.XXX.XXX
Successivo: Smoke Test
Author: Wale Soyinka
Contributors: Steven Spencer, Ganna Zhyrnova