Aiutaci a migliorare questa pagina
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Configurare Cilium BGP per nodi ibridi
Questo argomento descrive come configurare Cilium Border Gateway Protocol (BGP) per Amazon EKS Hybrid Nodes. La funzionalità BGP di Cilium si chiama Cilium BGP Control Plane
Configura Cilium BGP
Prerequisiti
-
Cilium è stato installato seguendo le istruzioni in. Configurare CNI per nodi ibridi
Procedura
-
Per utilizzare BGP con Cilium per pubblicizzare pod o indirizzi di servizi sulla rete locale, è necessario installare Cilium con.
bgpControlPlane.enabled: trueSe state abilitando BGP per una distribuzione Cilium esistente, dovete riavviare l'operatore Cilium per applicare la configurazione BGP se BGP non era stato precedentemente abilitato. È possibile impostare i valori Helmoperator.rollOutPodspertrueriavviare l'operatore Cilium come parte del processo Helm. install/upgradehelm upgrade cilium oci://public.ecr.aws/eks/cilium/cilium \ --namespace kube-system \ --reuse-values \ --set operator.rollOutPods=true \ --set bgpControlPlane.enabled=true -
Conferma che l'operatore e gli agenti Cilium sono stati riavviati e sono in esecuzione.
kubectl -n kube-system get pods --selector=app.kubernetes.io/part-of=ciliumNAME READY STATUS RESTARTS AGE cilium-grwlc 1/1 Running 0 4m12s cilium-operator-68f7766967-5nnbl 1/1 Running 0 4m20s cilium-operator-68f7766967-7spfz 1/1 Running 0 4m20s cilium-pnxcv 1/1 Running 0 6m29s cilium-r7qkj 1/1 Running 0 4m12s cilium-wxhfn 1/1 Running 0 4m1s cilium-z7hlb 1/1 Running 0 6m30s -
Crea un file chiamato
cilium-bgp-cluster.yamlcon una definizione.CiliumBGPClusterConfigPotrebbe essere necessario ottenere le seguenti informazioni dall'amministratore di rete.-
Configura
localASNcon l'ASN per i nodi che eseguono Cilium. -
Configura
peerASNcon l'ASN per il router locale. -
Configuralo
peerAddresscon l'IP del router locale con cui verrà eseguito il peering di ogni nodo su cui è in esecuzione Cilium.apiVersion: cilium.io/v2alpha1 kind: CiliumBGPClusterConfig metadata: name: cilium-bgp spec: nodeSelector: matchExpressions: - key: eks.amazonaws.com/compute-type operator: In values: - hybrid bgpInstances: - name: "rack0" localASN:NODES_ASNpeers: - name: "onprem-router" peerASN:ONPREM_ROUTER_ASNpeerAddress:ONPREM_ROUTER_IPpeerConfigRef: name: "cilium-peer"
-
-
Applica la configurazione del cluster Cilium BGP al tuo cluster.
kubectl apply -f cilium-bgp-cluster.yaml -
Crea un file denominato
cilium-bgp-peer.yamlcon laCiliumBGPPeerConfigrisorsa che definisce una configurazione peer BGP. Più peer possono condividere la stessa configurazione e fornire un riferimento alla risorsa comune.CiliumBGPPeerConfigConsulta la configurazione BGP Peernella documentazione di Cilium per un elenco completo delle opzioni di configurazione. I valori per le seguenti impostazioni peer Cilium devono corrispondere a quelli del router locale con cui si esegue il peering.
-
Configura
holdTimeSecondsche determina per quanto tempo un peer BGP attende un messaggio keepalive o update prima di dichiarare la sessione inattiva. L'impostazione predefinita è 90 secondi. -
Configura
keepAliveTimeSecondsche determina se un peer BGP è ancora raggiungibile e la sessione BGP è attiva. Il valore predefinito è 30 secondi. -
Configurazione
restartTimeSecondsche determina l'ora in cui il piano di controllo BGP di Cilium dovrebbe ristabilire la sessione BGP dopo un riavvio. Il valore predefinito è 120 secondi.apiVersion: cilium.io/v2alpha1 kind: CiliumBGPPeerConfig metadata: name: cilium-peer spec: timers: holdTimeSeconds:90keepAliveTimeSeconds:30gracefulRestart: enabled: true restartTimeSeconds:120families: - afi: ipv4 safi: unicast advertisements: matchLabels: advertise: "bgp"
-
-
Applica la configurazione peer Cilium BGP al tuo cluster.
kubectl apply -f cilium-bgp-peer.yaml -
Crea un file denominato
cilium-bgp-advertisement-pods.yamlcon unaCiliumBGPAdvertisementrisorsa per pubblicizzare il pod CIDRs sulla tua rete locale.-
La
CiliumBGPAdvertisementrisorsa viene utilizzata per definire i tipi di pubblicità e gli attributi ad essi associati. L'esempio seguente configura Cilium per pubblicizzare solo i pod. CIDRs Vedi gli esempi in Tipo di servizio LoadBalancer e Bilanciamento del carico Cilium all'interno del cluster per ulteriori informazioni sulla configurazione di Cilium per pubblicizzare gli indirizzi dei servizi. -
Ogni nodo ibrido che esegue l'agente Cilium esegue il peering con il router upstream abilitato per BGP. Ogni nodo pubblicizza la gamma di pod CIDR che possiede quando Cilium's
advertisementTypeè impostato come nell'esempio seguente.PodCIDRPer ulteriori informazioni, consulta la configurazione BGP Advertisementsnella documentazione di Cilium. apiVersion: cilium.io/v2alpha1 kind: CiliumBGPAdvertisement metadata: name: bgp-advertisement-pods labels: advertise: bgp spec: advertisements: - advertisementType: "PodCIDR"
-
-
Applica la configurazione Cilium BGP Advertisement al tuo cluster.
kubectl apply -f cilium-bgp-advertisement-pods.yaml -
È possibile confermare che il peering BGP ha funzionato con la CLI di Cilium utilizzando
il comando. cilium bgp peersDovresti vedere i valori corretti nell'output per il tuo ambiente e lo stato della sessione come.establishedPer ulteriori informazioni sulla risoluzione dei problemi, consulta la Guida alla risoluzione dei problemi e alle operazioninella documentazione di Cilium. Negli esempi seguenti, ci sono cinque nodi ibridi che eseguono l'agente Cilium e ogni nodo pubblicizza la gamma Pod CIDR di sua proprietà.
cilium bgp peersNode Local AS Peer AS Peer Address Session State Uptime Family Received Advertised mi-026d6a261e355fba7NODES_ASNONPREM_ROUTER_ASNONPREM_ROUTER_IPestablished 1h18m58s ipv4/unicast 1 2 mi-082f73826a163626eNODES_ASNONPREM_ROUTER_ASNONPREM_ROUTER_IPestablished 1h19m12s ipv4/unicast 1 2 mi-09183e8a3d755abf6NODES_ASNONPREM_ROUTER_ASNONPREM_ROUTER_IPestablished 1h18m47s ipv4/unicast 1 2 mi-0d78d815980ed202dNODES_ASNONPREM_ROUTER_ASNONPREM_ROUTER_IPestablished 1h19m12s ipv4/unicast 1 2 mi-0daa253999fe92daaNODES_ASNONPREM_ROUTER_ASNONPREM_ROUTER_IPestablished 1h18m58s ipv4/unicast 1 2cilium bgp routesNode VRouter Prefix NextHop Age Attrs mi-026d6a261e355fba7NODES_ASN10.86.2.0/26 0.0.0.0 1h16m46s [{Origin: i} {Nexthop: 0.0.0.0}] mi-082f73826a163626eNODES_ASN10.86.2.192/26 0.0.0.0 1h16m46s [{Origin: i} {Nexthop: 0.0.0.0}] mi-09183e8a3d755abf6NODES_ASN10.86.2.64/26 0.0.0.0 1h16m46s [{Origin: i} {Nexthop: 0.0.0.0}] mi-0d78d815980ed202dNODES_ASN10.86.2.128/26 0.0.0.0 1h16m46s [{Origin: i} {Nexthop: 0.0.0.0}] mi-0daa253999fe92daaNODES_ASN10.86.3.0/26 0.0.0.0 1h16m46s [{Origin: i} {Nexthop: 0.0.0.0}]