Încerc să configurez clusterul k8s pe Hetzner și să export rutele pod-urilor către server (172.20.0.5
în topologia de mai jos) cu FRR (Quagga) rulând pe el. Folosesc calico cu BIRD ca plugin cni. Problema este că FRR exportă incorect rute (recursive) către tabelul kernel.
Topologie de rețea
Frr config:
arată rularea-config
Configurație curentă:
!
frr versiunea 8.1
frr implicite tradiționale
numele gazdă deb-front-1
jurnal syslog informativ
fără redirecționare ipv6
serviciu integrat-vtysh-config
!
router bgp 64512
fără bgp implicit ipv4-unicast
vecin 172.20.0.2 remote-as 64512
vecin 172.20.0.3 remote-as 64512
vecin 172.20.0.4 remote-as 64512
!
adresa-familie ipv4 unicast
vecin 172.20.0.2 activa
vecin 172.20.0.3 activa
vecinul 172.20.0.4 activa
ieșire-adresă-familie
Ieșire
!
Sfârşit
Așa că obțin următoarele rute:
arata ruta ip
K>* 0.0.0.0/0 [0/0] prin 172.31.1.1, eth0, 01w1d04h
C>* *.*.*.*/32 este conectat direct, eth0, 09:16:40 # IP public ascuns
K>* 172.20.0.0/16 [0/0] prin 172.20.0.1, ens10, 00:31:04
K>* 172.20.0.1/32 [0/0] este conectat direct, ens10, 00:31:28
C>* 172.20.0.5/32 este conectat direct, ens10, 05:57:07
K>* 172.31.1.1/32 [0/0] este conectat direct, eth0, 01w1d04h
B> 192.168.69.64/26 [200/0] prin 172.20.0.4 (recursiv), greutate 1, 00:31:04
* prin 172.20.0.1, ens10, greutate 1, 00:31:04
B> 192.168.155.64/26 [200/0] prin 172.20.0.2 (recursiv), greutate 1, 00:31:04
* prin 172.20.0.1, ens10, greutate 1, 00:31:04
B> 192.168.253.64/26 [200/0] prin 172.20.0.3 (recursiv), greutate 1, 00:31:04
* prin 172.20.0.1, ens10, greutate 1, 00:31:04
După cum vedeți, a primit cu succes rute prin iBGP și înțelege că sunt recursive (traficul trece prin 172.20.0.1
vSwitch în mijlocul topologiei)
Aici este o ieșire a arata vecinul bgp
comanda: ieșire
[Nucleu] afișare rută ip
:
implicit prin 172.31.1.1 dev eth0
172.20.0.0/16 prin 172.20.0.1 dev ens10
172.20.0.1 dev ens10 scope link
172.31.1.1 dev eth0 scope link
192.168.69.64/26 nhid 79 prin 172.20.0.1 dev ens10 proto bgp metric 20
192.168.155.64/26 nhid 79 prin 172.20.0.1 dev ens10 proto bgp metric 20
192.168.253.64/26 nhid 79 prin 172.20.0.1 dev ens10 proto bgp metric 20
După cum puteți vedea în sfârșit, a exportat rute prin 172.20.0.1, dar nu 172.20.0.(2/3/4), așa cum ar fi trebuit să exporte.
Exemplu de configurație de rutare așteptată:
192.168.69.64/26 nhid 79 prin 172.20.0.2
192.168.155.64/26 nhid 79 prin 172.20.0.3
192.168.253.64/26 nhid 79 prin 172.20.0.4
Multumesc anticipat pentru orice idee! :)