Questo documento descrive come configurare e utilizzare bilanciatori del carico in bundle con BGP (Border
Gateway Protocol) per GKE su Bare Metal. Questa modalità di bilanciamento del carico
supporta la pubblicità di indirizzi IP virtuali (VIP) LoadBalancer
di ServiceType
tramite eBGP (Border Gateway Protocol) esterno per i tuoi cluster. In questo scenario, la rete del tuo cluster è un sistema autonomo che si interconnette con un altro sistema autonomo, una rete esterna, tramite peering.
I bilanciatori del carico in bundle con funzionalità BGP si applicano a tutti i tipi di cluster, ma i cluster di amministrazione supportano solo il bilanciamento del carico del piano di controllo di questa funzionalità.
L'utilizzo dei bilanciatori del carico in bundle con la funzionalità BGP offre i seguenti vantaggi:
- Utilizza la capacità di bilanciamento del carico attivo/attivo N-way, che garantisce failover più rapido e un uso più efficiente della larghezza di banda disponibile.
- Supporta il protocollo di livello 3 che funziona con switch e router top-of-rack (ToR) di terze parti compatibili con eBGP.
- Consente ai data center che eseguono uno stack di networking software-defined (SDN) avanzato di inviare il limite di livello 3 fino ai cluster.
Come funziona il bilanciamento del carico in bundle con BGP
Le sezioni seguenti forniscono un breve riepilogo del funzionamento dei bilanciatori del carico in bundle con BGP.
Peering BGP
I bilanciatori del carico in bundle con la funzionalità BGP avviano diverse connessioni BGP alla tua infrastruttura. BGP ha i seguenti requisiti tecnici:
- Le sessioni di peering sono separate per il VIP del piano di controllo e per i VIP di servizio.
- Le sessioni di peering del piano di controllo vengono avviate dagli indirizzi IP dei nodi del piano di controllo.
- Le sessioni di peering di servizio vengono avviate da indirizzi IP mobili che hai specificato nella risorsa personalizzata
NetworkGatewayGroup
. - Il controller gateway di rete Anthos gestisce gli indirizzi IP mobili.
- Il bilanciamento del carico basato su BGP in bundle supporta solo il peering eBGP.
- Il peering multi-hop è supportato per impostazione predefinita.
- Le password MD5 nelle sessioni BGP non sono supportate.
- Le sessioni di peering basate su IPv6 non sono supportate.
- Le route annunciate a qualsiasi peer dovrebbero essere ridistribuite nella rete e saranno raggiungibili da qualsiasi altra parte del cluster.
- Per le sessioni di peering, è consigliato l'utilizzo della funzionalità
ADD-PATH
BGP in modalità di ricezione. - La pubblicità di più percorsi da ogni peer ha come risultato un bilanciamento del carico attivo/attivo.
- Devi abilitare il routing a più percorsi (ECMP) a parità di costo per la tua rete in modo che possano essere utilizzati più percorsi per distribuire il traffico attraverso un insieme di nodi del bilanciatore del carico.
Bilanciamento del carico del piano di controllo
Ogni nodo del piano di controllo nel cluster stabilisce sessioni BGP con uno o più peer nella tua infrastruttura. È necessario che ogni nodo del piano di controllo abbia almeno un peer. Nel file di configurazione del cluster, puoi configurare quali nodi del piano di controllo si connettono a determinati peer esterni.
Il seguente diagramma mostra un esempio di peering del piano di controllo. Il cluster ha due nodi del piano di controllo in una subnet e uno in un'altra. È presente un peer esterno (TOR) in ogni subnet e i nodi del piano di controllo GKE su Bare Metal con il rispettivo TOR.
Bilanciamento del carico dei servizi
Oltre alle sessioni di peering avviate da ciascun nodo del piano di controllo per il peering del piano di controllo, vengono avviate ulteriori sessioni di peering per i servizi LoadBalancer
. Queste sessioni di peering non vengono avviate direttamente dagli indirizzi IP dei nodi cluster, ma utilizzano indirizzi IP mobili.
I servizi con un criterio di rete externalTrafficPolicy=Local
non sono supportati.
Indirizzi IP mobili
Il bilanciamento del carico dei servizi richiede la prenotazione di indirizzi IP mobili nelle subnet dei nodi cluster da utilizzare per il peering BGP. Per il cluster è richiesto almeno un indirizzo IP mobile, ma ti consigliamo di prenotare almeno due indirizzi per garantire l'alta disponibilità per le sessioni BGP. Gli indirizzi IP mobili sono specificati nella risorsa personalizzata (RP) NetworkGatewayGroup
, che può essere inclusa nel file di configurazione del cluster.
Gli indirizzi IP mobili eliminano la preoccupazione di mappare gli indirizzi IP degli altoparlanti BGP ai nodi. Il controller gateway di rete Anthos si occupa dell'assegnazione NetworkGatewayGroup
ai nodi e gestisce anche gli indirizzi IP mobili. Se un nodo non funziona, il controller gateway di rete Anthos riassegna gli indirizzi IP mobili per garantire che i peer esterni abbiano un indirizzo IP deterministico con cui eseguire il peering.
App peer esterni
Per il bilanciamento del carico del piano dati, puoi utilizzare gli stessi peer esterni specificati per il peering del piano di controllo nella sezione loadBalancer.controlPlaneBGP
del file di configurazione del cluster. In alternativa, puoi specificare
diversi peer BGP.
Se vuoi specificare peer BGP diversi per il peering del piano dati, aggiungi le specifiche delle risorse BGPLoadBalancer
e BGPPeer
al file di configurazione del cluster. Se non specifichi queste risorse personalizzate, i peer del piano di controllo vengono utilizzati automaticamente per il piano dati.
Puoi specificare i peer esterni utilizzati per le sessioni di peering con indirizzi IP mobili nella risorsa personalizzata BGPPeer
, che aggiungi al file di configurazione del cluster. La risorsa BGPPeer
include un'etichetta per l'identificazione da parte della risorsa personalizzata BGPLoadBalancer
corrispondente. Devi specificare l'etichetta corrispondente nel campo peerSelector
nella risorsa personalizzata BGPLoadBalancer
per selezionare la BGPPeer
da utilizzare.
Il controller gateway di rete Anthos tenta di stabilire sessioni (il numero di sessioni è configurabile) per ciascun peer esterno dal set di indirizzi IP mobili riservati. Ti consigliamo di specificare almeno due peer esterni
per garantire un'alta disponibilità per le sessioni BGP. Ogni peer esterno designato per il bilanciamento del carico dei servizi deve essere configurato in modo che sia in peering con ogni indirizzo IP mobile specificato nella risorsa personalizzata NetworkGatewayGroup
.
Nodi del bilanciatore del carico
Un sottoinsieme di nodi del cluster viene utilizzato per il bilanciamento del carico, ovvero i nodi pubblicizzati in modo che siano in grado di accettare il traffico di bilanciamento del carico in entrata.
Per impostazione predefinita, questo insieme di nodi corrisponde al pool di nodi del piano di controllo, ma puoi specificare un pool di nodi diverso nella sezione loadBalancer
del file di configurazione del cluster. Se specifichi un pool di nodi, questo viene utilizzato per i nodi del bilanciatore del carico, anziché per il pool di nodi del piano di controllo.
Gli indirizzi IP mobili, che fungono da speaker BGP, possono essere o meno eseguiti sui nodi del bilanciatore del carico. Gli indirizzi IP mobili vengono assegnati a un nodo nella stessa subnet e il peering viene avviato da lì, a prescindere dal fatto che si tratti di un nodo del bilanciatore del carico. Tuttavia, gli hop successivi pubblicizzati su BGP sono sempre i nodi del bilanciatore del carico.
Esempio di topologia di peering
Il seguente diagramma mostra un esempio di bilanciamento del carico dei servizi con peering BGP. Ai nodi sono assegnati due indirizzi IP mobili nelle rispettive subnet. Sono stati definiti due peer esterni. Ogni peer IP mobile presenta entrambi i peer esterni.
Configura il bilanciatore del carico BGP
Le seguenti sezioni descrivono come configurare i cluster e la rete esterna per utilizzare il bilanciatore del carico in bundle con BGP.
Pianifica l'integrazione con l'infrastruttura esterna
Per utilizzare il bilanciatore del carico in bundle con BGP, devi configurare l'infrastruttura esterna:
L'infrastruttura esterna deve essere configurata in modo da essere in peering con ciascuno dei nodi del piano di controllo nel cluster per configurare la comunicazione del piano di controllo. Queste sessioni di peering vengono utilizzate per pubblicizzare i VIP del piano di controllo Kubernetes.
L'infrastruttura esterna deve essere configurata in modalità peer con un set di indirizzi IP mobili riservati per la comunicazione con il piano dati. Gli indirizzi IP mobili vengono utilizzati per il peering BGP per i VIP del servizio. Ti consigliamo di utilizzare due indirizzi IP mobili e due peer per garantire un'alta disponibilità per le sessioni BGP. Il processo di prenotazione dell'IP mobile è descritto come parte della configurazione del cluster per il bilanciamento del carico in bundle con BGP.
Dopo aver configurato l'infrastruttura, aggiungi le informazioni di peering BGP al file di configurazione del cluster. Il cluster che crei può avviare sessioni di peering con l'infrastruttura esterna.
Configura il cluster per il bilanciamento del carico in bundle con BGP
Puoi abilitare e configurare il bilanciamento del carico in bundle con BGP nel file di configurazione del cluster quando crei un cluster. Nel file di configurazione del cluster, abiliti il networking avanzato e aggiorni la sezione loadBalancer
. Puoi aggiungere anche le specifiche per le seguenti tre risorse personalizzate:
NetworkGatewayGroup
: specifica gli indirizzi IP mobili utilizzati per le sessioni di peering BGP dei servizi.BGPLoadBalancer
: specifica con i selettori di etichette i peer utilizzati per il bilanciamento del carico di BGP.BGPPeer
: specifica i singoli peer, inclusa un'etichetta per gli scopi di selezione, per le sessioni di peering BGP.
Le seguenti istruzioni descrivono come configurare il cluster e le tre risorse personalizzate per configurare il bilanciamento del carico in bundle con BGP.
Aggiungi il campo
advancedNetworking
al file di configurazione del cluster nella sezioneclusterNetwork
e impostalo sutrue
.Questo campo abilita funzionalità di networking avanzate, in particolare la risorsa Network gateway Group.
apiVersion: baremetal.cluster.gke.io/v1 kind: Cluster metadata: name: bm namespace: CLUSTER_NAMESPACE spec: ... clusterNetwork: advancedNetworking: true
Sostituisci
CLUSTER_NAMESPACE
con lo spazio dei nomi per il cluster. Per impostazione predefinita, gli spazi dei nomi del cluster per GKE su Bare Metal sono il nome del cluster preceduto dacluster-
. Ad esempio, se assegni al cluster il nometest
, lo spazio dei nomi ècluster-test
.Nella sezione
loadBalancer
del file di configurazione del cluster, impostamode
subundled
e aggiungi un campotype
con valorebgp
.Questi valori dei campi abilitano il bilanciamento del carico in bundle basato su BGP.
... loadBalancer: mode: bundled # type can be 'bgp' or 'layer2'. If no type is specified, we default to layer2. type: bgp ...
Per specificare le informazioni di peering BGP per il piano di controllo, aggiungi i seguenti campi alla sezione
loadBalancer
:... # AS number for the cluster localASN: CLUSTER_ASN # List of BGP peers used for the control plane peering sessions. bgpPeers: - ip: PEER_IP asn: PEER_ASN # optional; if not specified, all CP nodes connect to all peers. controlPlaneNodes: # optional - CP_NODE_IP ...
Sostituisci quanto segue:
CLUSTER_ASN
: il numero di sistema autonomo per il cluster in creazione.PEER_IP
: l'indirizzo IP del dispositivo peer esterno.PEER_ASN
: il numero di sistema autonomo per la rete che contiene il dispositivo peer esterno.CP_NODE_IP
: (facoltativo) l'indirizzo IP del nodo del piano di controllo che si connette al peer esterno. Se non specifichi alcun nodo del piano di controllo, tutti i nodi del piano di controllo possono connettersi al peer esterno. Se specifichi uno o più indirizzi IP, solo i nodi specificati partecipano alle sessioni di peering.
Puoi specificare più peer esterni.
bgpPeers
prende un elenco di mappature. Ti consigliamo di specificare almeno due peer esterni per l'alta disponibilità per le sessioni BGP. Per un esempio con più peer, consulta Configurazioni di esempio.Imposta i campi
loadBalancer.ports
,loadBalancer.vips
eloadBalancer.addressPools
(sono mostrati i valori predefiniti).... loadBalancer: ... # Other existing load balancer options remain the same ports: controlPlaneLBPort: 443 # When type=bgp, the VIPs are advertised over BGP vips: controlPlaneVIP: 10.0.0.8 ingressVIP: 10.0.0.1 addressPools: - name: pool1 addresses: - 10.0.0.1-10.0.0.4 ...
Specifica il nodo del cluster da utilizzare per il bilanciamento del carico del piano dati.
Questo passaggio è facoltativo. Se non rimuovi il commento dalla sezione
nodePoolSpec
, i nodi del piano di controllo vengono utilizzati per il bilanciamento del carico del piano dati.... # Node pool used for load balancing data plane (nodes where incoming traffic # arrives. If not specified, this defaults to the control plane node pool. # nodePoolSpec: # nodes: # - address: <Machine 1 IP> ...
Prenota indirizzi IP mobili configurando la risorsa personalizzata
NetworkGatewayGroup
:Gli indirizzi IP mobili vengono utilizzati nelle sessioni di peering per il bilanciamento del carico del piano dati.
... --- apiVersion: networking.gke.io/v1 kind: NetworkGatewayGroup metadata: name: default namespace: CLUSTER_NAMESPACE spec: floatingIPs: - FLOATING_IP ...
Sostituisci quanto segue:
CLUSTER_NAMESPACE
: lo spazio dei nomi per il cluster. Per impostazione predefinita, gli spazi dei nomi del cluster per GKE su Bare Metal sono il nome del cluster preceduto dacluster-
. Ad esempio, se il nome del cluster ètest
, lo spazio dei nomi ècluster-test
.FLOATING_IP
: un indirizzo IP da una delle subnet del cluster. Devi specificare almeno un indirizzo IP, ma ti consigliamo di specificarne almeno due.
Assicurati che la risorsa personalizzata
NetworkGatewayGroup
sia denominatadefault
e utilizzi lo spazio dei nomi del cluster. Per un esempio di come potrebbe apparire la specifica delle risorse personalizzateNetworkGatewayGroup
, consulta Configurazioni di esempio.(Facoltativo) Specifica i peer da utilizzare per il bilanciamento del carico del piano dati configurando la risorsa personalizzata
BGPLoadBalancer
:... --- apiVersion: networking.gke.io/v1 kind: BGPLoadBalancer metadata: name: default namespace: CLUSTER_NAMESPACE spec: peerSelector: PEER_LABEL: "true" ...
Sostituisci quanto segue:
CLUSTER_NAMESPACE
: lo spazio dei nomi del cluster. Per impostazione predefinita, gli spazi dei nomi del cluster per GKE su Bare Metal sono il nome del cluster preceduto dacluster-
. Ad esempio, se il nome del cluster ètest
, lo spazio dei nomi ècluster-test
.PEER_LABEL
: l'etichetta utilizzata per identificare i peer da utilizzare per il bilanciamento del carico. Qualsiasi risorsa personalizzataBGPPeer
con un'etichetta corrispondente specifica i dettagli di ogni peer.
Assicurati che la risorsa personalizzata
BGPLoadBalancer
sia denominatadefault
e utilizzi lo spazio dei nomi del cluster. Se non specifichi una risorsa personalizzataBGPLoadBalancer
, i peer del piano di controllo vengono utilizzati automaticamente per il bilanciamento del carico del piano dati. Per esempi completi, consulta Configurazioni di esempio.(Facoltativo) Specifica i peer esterni per il piano dati configurando una o più risorse personalizzate
BGPPeer
:... --- apiVersion: networking.gke.io/v1 kind: BGPPeer metadata: name: BGP_PEER_NAME namespace: CLUSTER_NAMESPACE labels: PEER_LABEL: "true" spec: localASN: CLUSTER_ASN peerASN: PEER_ASN peerIP: PEER_IP sessions: SESSION_QTY ...
Sostituisci quanto segue:
BGP_PEER_NAME
: il nome del collega.CLUSTER_NAMESPACE
: lo spazio dei nomi per il cluster. Per impostazione predefinita, gli spazi dei nomi del cluster per GKE su Bare Metal sono il nome del cluster preceduto dacluster-
. Ad esempio, se il nome del cluster ètest
, lo spazio dei nomi ècluster-test
.PEER_LABEL
: l'etichetta utilizzata per identificare i peer da utilizzare per il bilanciamento del carico. Questa etichetta deve corrispondere all'etichetta specificata nella risorsa personalizzataBGPLoadBalancer
.CLUSTER_ASN
: il numero di sistema autonomo per il cluster in creazione.PEER_IP
: l'indirizzo IP del dispositivo peer esterno. Ti consigliamo di specificare almeno due peer esterni, ma devi specificarne almeno uno.PEER_ASN
: il numero di sistema autonomo per la rete che contiene il dispositivo peer esterno.SESSION_QTY
: il numero di sessioni da stabilire per questo peer. Ti consigliamo di stabilire almeno due sessioni per assicurarti di mantenere una connessione con il peer in caso di malfunzionamento di uno dei nodi.
Puoi specificare più peer esterni creando ulteriori
BGPPeer
risorse personalizzate. Ti consigliamo di specificare almeno due peer esterni (due risorse personalizzate) per l'alta disponibilità per le sessioni BGP. Se non specifichi una risorsa personalizzataBGPPeer
, i peer del piano di controllo vengono utilizzati automaticamente per il bilanciamento del carico del piano dati.Quando esegui
bmctl cluster create
per creare il cluster, vengono eseguiti i controlli preflight. Tra gli altri controlli, i controlli preflight convalidano la configurazione del peering BGP per il piano di controllo e segnalano eventuali problemi direttamente alla workstation di amministrazione prima che sia possibile creare il cluster.Se l'operazione ha esito positivo, le risorse di bilanciamento del carico BGP aggiunte (NetworkGatewayGroup, BGPLoadBalancer e BGPPeer) vengono inviate al cluster di amministrazione nello spazio dei nomi del cluster utente. Utilizza il file kubeconfig del cluster di amministrazione per gli aggiornamenti successivi di queste risorse. Il cluster di amministrazione riconcilia quindi le modifiche apportate al cluster utente. Se modifichi queste risorse direttamente nel cluster utente, il cluster di amministrazione sovrascrive le modifiche nelle riconciliazioni successive.
Pubblicizza più hop successivi per sessione con BGP ADD-PATH
Ti consigliamo di utilizzare la funzionalità ADD-PATH
BGP per le sessioni di peering come specificato in RFC 7911.
Per impostazione predefinita, il protocollo BGP consente di pubblicizzare un solo hop successivo nei peer per un singolo prefisso. BGP ADD-PATH
consente di pubblicizzare più hop successivi per lo stesso prefisso. Quando ADD-PATH
viene utilizzato con il bilanciamento del carico in bundle basato su BGP, il cluster può pubblicizzare più nodi cluster come nodi frontend (hop successivi) per un servizio bilanciatore del carico (prefisso). Abilita la tecnologia ECMP nella rete
in modo che il traffico possa essere distribuito su più percorsi. La capacità di fan-out del traffico pubblicizzando più nodi di cluster come hop successivi, offre una migliore scalabilità della capacità del piano dati per il bilanciamento del carico.
Se il dispositivo peer esterno, ad esempio uno switch o router top-of-rack (ToR),
supporta il BGP ADD-PATH
, è sufficiente attivare solo l'estensione di ricezione.
Il bilanciamento del carico in bundle con BGP funziona senza la funzionalità ADD-PATH
, ma la limitazione di pubblicizzare un singolo nodo di bilanciamento del carico per sessione di peering limita la capacità del piano dati del bilanciatore del carico. Senza ADD-PATH
, GKE su Bare Metal sceglie i nodi da pubblicizzare dal pool di nodi del bilanciatore del carico e tenta di distribuire hop successivi per VIP diversi su nodi differenti.
Limita il peering BGP ai nodi del bilanciatore del carico
GKE su Bare Metal assegna automaticamente indirizzi IP mobili su qualsiasi nodo nella stessa subnet dell'indirizzo IP mobile. Le sessioni BGP vengono avviate da questi indirizzi IP anche se non arrivano sui nodi del bilanciatore del carico. Questo comportamento è stato progettato in quanto abbiamo disaccoppiato il piano di controllo (BGP) dal piano dati (pool di nodi LB).
Se vuoi limitare l'insieme di nodi che possono essere utilizzati per il peering BGP, puoi designare una subnet da utilizzare solo per i nodi del bilanciatore del carico. In altre parole, puoi configurare tutti i nodi in quella subnet in modo che facciano parte del pool di nodi del bilanciatore del carico. Quindi, quando configuri gli indirizzi IP mobili utilizzati per il peering BGP, assicurati che provengano dalla stessa subnet. GKE su Bare Metal garantisce che le assegnazioni di indirizzi IP mobili e il peering BGP vengano eseguiti solo dai nodi del bilanciatore del carico.
Configura il bilanciamento del carico BGP con networking a doppio stack
A partire dalla release 1.14.0 di GKE su Bare Metal, il bilanciatore del carico in bundle basato su BGP supporta IPv6. Con l'introduzione del supporto IPv6, puoi configurare i servizi IPv6 e LoadBalancer a doppio stack su un cluster configurato per il networking dual stack. Questa sezione descrive le modifiche necessarie per configurare il bilanciamento del carico in bundle a due stack con BGP.
Per abilitare i servizi LoadBalancer a doppio stack, sono necessarie le seguenti modifiche alla configurazione:
Il cluster sottostante deve essere configurato per il networking a due stack:
Specifica i CIDR del servizio IPv4 e IPv6 nel file di configurazione del cluster in
spec.clusterNetwork.services.cidrBlocks
.Definisci le risorse ClusterCIDRConfig appropriate per specificare gli intervalli CIDR IPv4 e IPv6 per i pod.
Per ulteriori informazioni sulla configurazione di un cluster per il networking a stack doppio, consulta la pagina relativa al networking IPv4/IPv6 dual stack.
Specifica un pool di indirizzi IPv6 nel file di configurazione del cluster in
spec.loadBalancer.addressPools
. Per consentire a MetalLB di allocare indirizzi IP a un servizio a doppio stack, deve essere presente almeno un pool di indirizzi con indirizzi in formato IPv4 e IPv6.
La configurazione di esempio seguente evidenzia le modifiche necessarie per il bilanciamento del carico in bundle dual stack con BGP:
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
name: bm
namespace: cluster-bm
spec:
...
clusterNetwork:
services:
cidrBlocks:
# Dual-stack Service IP addresses must be provided
- 10.96.0.0/16
- fd00::/112
...
loadBalancer:
mode: bundled
# type can be 'bgp' or 'layer2'. If no type is specified we default to layer2.
type: bgp
# AS number for the cluster
localASN: 65001
bgpPeers:
- ip: 10.8.0.10
asn: 65002
- ip: 10.8.0.11
asn: 65002
addressPools:
- name: pool1
addresses:
# Each address must be either in the CIDR form (1.2.3.0/24)
# or range form (1.2.3.1-1.2.3.5).
- "203.0.113.1-203.0.113.20"
- "2001:db8::1-2001:db8::20" # Note the additional IPv6 range
... # Other cluster config info omitted
---
apiVersion: networking.gke.io/v1
kind: NetworkGatewayGroup
metadata:
name: default
namespace: cluster-bm
spec:
floatingIPs:
- 10.0.1.100
- 10.0.2.100
---
apiVersion: baremetal.cluster.gke.io/v1alpha1
kind: ClusterCIDRConfig
metadata:
name: cluster-wide-1
namespace: cluster-bm
spec:
ipv4:
cidr: "192.168.0.0/16"
perNodeMaskSize: 24
ipv6:
cidr: "2001:db8:1::/112"
perNodeMaskSize: 120
Limitazioni per il bilanciamento del carico in bundle a doppio stack con BGP
Quando configuri il cluster per l'utilizzo del bilanciamento del carico in bundle a doppio stack con BGP, tieni presente le seguenti limitazioni:
Il bilanciamento del carico del piano di controllo IPv6 non è supportato.
Le sessioni BGP IPv6 non sono supportate, ma le route IPv6 possono essere pubblicizzate sulle sessioni IPv4 utilizzando BGP multiprotocollo.
Configurazioni di esempio
Le seguenti sezioni mostrano come configurare il bilanciamento del carico basato su BGP per opzioni o comportamenti diversi.
Configura tutti i nodi che utilizzano gli stessi peer
Come mostrato nel diagramma seguente, questa configurazione genera un insieme di peer esterni (10.8.0.10
e 10.8.0.11
) raggiungibili da tutti i nodi.
I nodi del piano di controllo (10.0.1.10
, 10.0.1.11
e 10.0.2.10
) e gli indirizzi IP mobili (10.0.1.100
e 10.0.2.100
) assegnati ai nodi del piano dati raggiungono tutti i peer.
Gli stessi peer esterni sono raggiungibili da uno degli indirizzi IP mobili (10.0.1.100
o 10.0.2.100
) riservati al peering dei servizi loadBalancer
. Gli indirizzi IP mobili possono essere assegnati ai nodi che si trovano nella stessa subnet.
Come mostrato nel seguente esempio di configurazione del cluster, configurerai i peer
per i nodi del piano di controllo, bgpPeers
, senza specificare controlPlaneNodes
.
Se non sono specificati nodi per i peer, tutti i nodi del piano di controllo si connettono a tutti i peer.
Sei tu a specificare gli indirizzi IP mobili da utilizzare per le sessioni di peering con bilanciamento del carico dei servizi nella risorsa personalizzata NetworkGatewayGroup
. In questo esempio, poiché non è specificato alcun BGPLoadBalancer
, i peer del piano di controllo vengono utilizzati automaticamente per le sessioni BGP del piano dati.
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
name: bm
namespace: cluster-bm
spec:
...
loadBalancer:
mode: bundled
# type can be 'bgp' or 'layer2'. If no type is specified, we default to layer2.
type: bgp
# AS number for the cluster
localASN: 65001
bgpPeers:
- ip: 10.8.0.10
asn: 65002
- ip: 10.8.0.11
asn: 65002
... (other cluster config omitted)
---
apiVersion: networking.gke.io/v1
kind: NetworkGatewayGroup
metadata:
name: default
namespace: cluster-bm
spec:
floatingIPs:
- 10.0.1.100
- 10.0.2.100
Configura nodi del piano di controllo specifici da eseguire in peering con peer esterni specifici
Come mostrato nel diagramma seguente, questa configurazione genera il peering di due nodi del piano di controllo (10.0.1.10
e 10.0.1.11
) con un peer esterno (10.0.1.254
). Il terzo nodo del piano di controllo (10.0.2.10
) esegue il peering con un altro peer esterno (10.0.2.254
). Questa configurazione è utile quando non vuoi che tutti i nodi si connettano a tutti i peer. Ad esempio, potresti volere che i nodi del piano di controllo siano in peering solo con le opzioni top of rack (ToR) corrispondenti.
Gli stessi peer esterni sono raggiungibili da uno degli indirizzi IP mobili (10.0.1.100
o 10.0.2.100
) riservati alle sessioni di peering con bilanciamento del carico dei servizi. Gli indirizzi IP mobili possono essere assegnati
a nodi nella stessa subnet.
Come mostrato nel seguente esempio di configurazione del cluster, limiti i nodi del piano di controllo che possono connettersi a un determinato peer specificando i relativi indirizzi IP nel campo controlPlaneNodes
per il peer nella sezione bgpPeers
.
Sei tu a specificare gli indirizzi IP mobili da utilizzare per le sessioni di peering con bilanciamento del carico dei servizi nella risorsa personalizzata NetworkGatewayGroup
. In questo esempio, poiché non è specificato alcun BGPLoadBalancer
, i peer del piano di controllo vengono utilizzati automaticamente per le sessioni BGP del piano dati.
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
name: bm
namespace: cluster-bm
spec:
...
loadBalancer:
mode: bundled
# type can be 'bgp' or 'layer2'. If no type is specified, we default to layer2.
type: bgp
# AS number for the cluster
localASN: 65001
bgpPeers:
- ip: 10.0.1.254
asn: 65002
controlPlaneNodes:
- 10.0.1.10
- 10.0.1.11
- ip: 10.0.2.254
asn: 65002
controlPlaneNodes:
- 10.0.2.10
... (other cluster config omitted)
---
apiVersion: networking.gke.io/v1
kind: NetworkGatewayGroup
name: default
namespace: cluster-bm
spec:
floatingIPs:
- 10.0.1.100
- 10.0.2.100
Configura piano di controllo e piano dati separatamente
Come mostrato nel diagramma seguente, questa configurazione determina il peering di due nodi del piano di controllo (10.0.1.10
e 10.0.1.11
) con un peering esterno (10.0.1.254
) e il terzo nodo del piano di controllo (10.0.2.11
) con un altro peer esterno (10.0.2.254
).
Un terzo peer esterno (10.0.3.254
) è raggiungibile da uno degli indirizzi IP mobili (10.0.3.100
o 10.0.3.101
) riservati alle sessioni di peering con bilanciamento del carico dei servizi. Gli indirizzi IP mobili possono essere assegnati
a nodi nella stessa subnet.
Come mostrato nel seguente esempio di configurazione del cluster, limiti i nodi del piano di controllo che possono connettersi a un determinato peer specificando i relativi indirizzi IP nel campo controlPlaneNodes
per il peer nella sezione bgpPeers
.
Sei tu a specificare gli indirizzi IP mobili da utilizzare per le sessioni di peering con bilanciamento del carico dei servizi nella risorsa personalizzata NetworkGatewayGroup
.
Per configurare il bilanciamento del carico del piano dati:
Specifica il peer esterno per il piano dati nella risorsa
BGPPeer
e aggiungi un'etichetta da utilizzare per la selezione peer, ad esempiocluster.baremetal.gke.io/default-peer: "true"
.Specifica l'etichetta corrispondente per il campo
peerSelector
nella risorsaBGPLoadBalancer
.
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
name: bm
namespace: cluster-bm
spec:
...
loadBalancer:
mode: bundled
# type can be 'bgp' or 'layer2'. If no type is specified, we default to layer2.
type: bgp
# AS number for the cluster
localASN: 65001
bgpPeers:
- ip: 10.0.1.254
asn: 65002
controlPlaneNodes:
- 10.0.1.10
- 10.0.1.11
- ip: 10.0.2.254
asn: 65002
controlPlaneNodes:
- 10.0.2.11
... (other cluster config omitted)
---
apiVersion: networking.gke.io/v1
kind: NetworkGatewayGroup
name: default
namespace: cluster-bm
spec:
floatingIPs:
- 10.0.3.100
- 10.0.3.101
---
apiVersion: networking.gke.io/v1
kind: BGPLoadBalancer
metadata:
name: default
namespace: cluster-bm
spec:
peerSelector:
cluster.baremetal.gke.io/default-peer: "true"
---
apiVersion: networking.gke.io/v1
kind: BGPPeer
metadata:
name: bgppeer1
namespace: cluster-bm
labels:
cluster.baremetal.gke.io/default-peer: "true"
spec:
localASN: 65001
peerASN: 65002
peerIP: 10.0.3.254
sessions: 2
Modifica la configurazione di bilanciamento del carico basata su BGP
Dopo aver creato il cluster configurato per utilizzare il bilanciamento del carico in bundle con BGP, è possibile aggiornare alcune impostazioni di configurazione, ma altre non possono essere aggiornate dopo la creazione del cluster.
Utilizza il file kubeconfig del cluster di amministrazione quando esegui aggiornamenti successivi alle risorse correlate a BGP (NetworkGatewayGroup, BGPLoadBalancer e BGPPeer). Il cluster di amministrazione riconcilia quindi le modifiche al cluster utente. Se modifichi queste risorse direttamente nel cluster utente, il cluster di amministrazione sovrascrive le modifiche apportate nelle riconciliazioni successive.
Piano di controllo
Le informazioni sul peering BGP del piano di controllo possono essere aggiornate nella risorsa Cluster
.
Puoi aggiungere o rimuovere i peer specificati nella sezione Bilanciamento del carico del piano di controllo.
Le seguenti sezioni descrivono le best practice per l'aggiornamento delle informazioni di peering BGP del piano di controllo.
Controllare lo stato dei peer prima dell'aggiornamento
Per ridurre al minimo il rischio di errori di configurazione dei peer, prima di apportare modifiche verifica che le sessioni di peering BGP del piano di controllo siano nello stato previsto. Ad esempio, se prevedi che tutte le sessioni di peering BGP siano attive, verifica che tutti i pod bgp-advertiser
riportino ready
, a indicare che le sessioni sono attive.
Se lo stato attuale non corrisponde a quello previsto, correggi il problema prima di aggiornare una configurazione peer.
Per informazioni sul recupero dei dettagli della sessione BGP del piano di controllo, vedi Sessioni BGP del piano di controllo.
Aggiorna le app peer in modo controllato
Se possibile, aggiorna un collega alla volta per isolare i possibili problemi:
- Aggiungi o aggiorna un singolo collega.
- Attendi il completamento della riconciliazione della configurazione.
- Verifica che il cluster sia in grado di connettersi al peer nuovo o aggiornato.
- Rimuovi le app peer vecchie o non necessarie.
Servizi
Per aggiornare i pool di indirizzi e le impostazioni dei nodi del bilanciatore del carico, modifica nodePoolSpec
nella risorsa Cluster
.
Per modificare la configurazione del peering BGP dopo la creazione del cluster, modifica le risorse personalizzate NetworkGatewayGroup
e BGPLoadBalancer
. Eventuali modifiche alle informazioni di peering in queste risorse personalizzate si riflettono nella configurazione della soluzione di bilanciamento del carico nel cluster di destinazione.
Esegui aggiornamenti nelle risorse di origine nello spazio dei nomi del cluster solo nel cluster di amministrazione. Tutte le modifiche apportate alle risorse nel cluster (utente) di destinazione vengono sovrascritte.
Risoluzione dei problemi
Le seguenti sezioni descrivono come accedere alle informazioni sulla risoluzione dei problemi per il bilanciamento del carico in bundle con BGP.
Sessioni BGP del piano di controllo
La configurazione di peering BGP del piano di controllo viene convalidata con controlli preflight durante la creazione del cluster. I controlli preflight tentano di:
- Stabilisci una connessione BGP con ogni peer.
- Pubblicizza il VIP del piano di controllo.
- Verifica che il nodo del piano di controllo sia raggiungibile mediante il VIP.
Se la creazione del cluster non supera i controlli preflight, esamina i log dei controlli preflight per individuare eventuali errori. I file di log del controllo preflight con data si trovano nella directory baremetal/bmctl-workspace/CLUSTER_NAME/log
.
In fase di runtime, gli speaker BGP del piano di controllo vengono eseguiti come pod statici su ciascun nodo del piano di controllo e scrivono le informazioni sugli eventi nei log. Questi pod statici includono "bgpadvertiser" nel nome, quindi usa il seguente comando kubectl get pods
per visualizzare lo stato dei pod degli speaker BGP:
kubectl -n kube-system get pods | grep bgpadvertiser
Quando i pod funzionano correttamente, la risposta è simile alla seguente:
bgpadvertiser-node-01 1/1 Running 1 167m
bgpadvertiser-node-02 1/1 Running 1 165m
bgpadvertiser-node-03 1/1 Running 1 163m
Utilizza il comando seguente per visualizzare i log per il pod bgpadvertiser-node-01
:
kubectl -n kube-system logs bgpadvertiser-node-01
Sessioni BGP dei servizi
La risorsa BGPSession
fornisce informazioni sulle sessioni BGP attuali. Per ottenere informazioni sulla sessione, prima controlla le sessioni correnti, quindi recupera la risorsa BGPSession
per una delle sessioni.
Utilizza il seguente comando kubectl get
per elencare le sessioni correnti:
kubectl -n kube-system get bgpsessions
Il comando restituisce un elenco di sessioni come nell'esempio seguente:
NAME LOCAL ASN PEER ASN LOCAL IP PEER IP STATE LAST REPORT
10.0.1.254-node-01 65500 65000 10.0.1.178 10.0.1.254 Established 2s
10.0.1.254-node-02 65500 65000 10.0.3.212 10.0.1.254 Established 2s
10.0.3.254-node-01 65500 65000 10.0.1.178 10.0.3.254 Established 2s
10.0.3.254-node-02 65500 65000 10.0.3.212 10.0.3.254 Established 2s
Utilizza il seguente comando kubectl describe
per ottenere la risorsa BGPSession
per la sessione BGP 10.0.1.254-node-01
:
kubectl -n kube-system describe bgpsession 10.0.1.254-node-01
La risorsa BGPSession
restituita dovrebbe avere un aspetto simile al seguente esempio:
Name: 10.0.1.254-node-01
Namespace: kube-system
Labels: <none>
Annotations: <none>
API Version: networking.gke.io/v1
Kind: BGPSession
Metadata:
(omitted)
Spec:
Floating IP: 10.0.1.178
Local ASN: 65500
Local IP: 10.0.1.178
Node Name: node-01
Peer ASN: 65000
Peer IP: 10.0.1.254
Status:
Advertised Routes:
10.0.4.1/32
Last Report Time: 2021-06-14T22:09:36Z
State: Established
Utilizza il comando kubectl get
per ottenere le risorse BGPAdvertisedRoute
:
kubectl -n kube-system get bgpadvertisedroutes
La risposta, che dovrebbe essere simile all'esempio seguente, mostra le route attualmente annunciate:
NAME PREFIX METRIC
default-default-load-balancer-example 10.1.1.34/32
default-gke-system-istio-ingress 10.1.1.107/32
Utilizza kubectl describe
per visualizzare i dettagli sugli hop successivi pubblicitari di ogni route.
Recupero dell'accesso al VIP del piano di controllo per i cluster autogestiti
Per riottenere l'accesso al VIP del piano di controllo su un cluster di amministrazione, ibrido o autonomo, devi aggiornare la configurazione BGP sul cluster. Come mostrato nel seguente esempio di comando, utilizza SSH per connetterti al nodo, quindi usa kubectl
per aprire la risorsa cluster per la modifica.
ssh -i IDENTITY_FILE root@CLUSTER_NODE_IP
kubectl --kubeconfig /etc/kubernetes/admin.conf edit -n CLUSTER_NAMESPACE cluster CLUSTER_NAME
Sostituisci quanto segue:
IDENTITY_FILE
: nome del file di identità SSH che contiene la chiave di identità per l'autenticazione con chiave pubblica.CLUSTER_NODE_IP
: l'indirizzo IP del nodo cluster.CLUSTER_NAMESPACE
: lo spazio dei nomi del cluster.CLUSTER_NAME
: il nome del cluster.
Modifica la configurazione del peering BGP nell'oggetto cluster. Dopo aver salvato la nuova configurazione del cluster, monitora l'integrità dei pod bgpadvertiser
. Se la configurazione funziona, i pod si riavviano e diventano integri dopo la connessione ai peer.
Verifica BGP manuale
Questa sezione contiene le istruzioni per verificare manualmente la configurazione BGP. La procedura imposta una connessione BGP a lunga esecuzione in modo da poter eseguire ulteriormente il debug della configurazione BGP con il tuo team di rete. Utilizza questa procedura per verificare la configurazione prima di creare un cluster o utilizzalo se i controlli preflight relativi a BGP hanno esito negativo.
I controlli preflight automatizzano le seguenti attività di verifica BGP:
- Configura una connessione BGP a un peer.
- Pubblicizza il VIP del piano di controllo.
- Verifica che il traffico inviato da tutti gli altri nodi del cluster al VIP raggiunga il nodo del bilanciatore del carico attuale.
Queste attività vengono eseguite per ciascun peer BGP su ciascun nodo del piano di controllo. Il superamento di questi controlli è fondamentale durante la creazione di un cluster. Tuttavia, i controlli preflight non creano connessioni a lunga esecuzione, per cui il debug di un errore è difficile.
Le seguenti sezioni forniscono le istruzioni per configurare una connessione BGP e pubblicizzare un percorso da un singolo cluster a un peer. Per testare più macchine e più peer, ripeti di nuovo le istruzioni utilizzando una diversa combinazione di macchine e peer.
Ricorda che le connessioni BGP vengono stabilite dai nodi del piano di controllo, quindi assicurati di testare questa procedura da uno dei nodi del piano di controllo pianificati.
Ottieni il programma binario del programma di test BGP
Esegui i passaggi di questa sezione sulla workstation di amministrazione. Questi passaggi consentono di ottenere il programma bgpadvertiser
utilizzato per testare le connessioni BGP e di copiarlo nei nodi del piano di controllo in cui vuoi eseguire il test.
Esegui il pull dell'immagine Docker Ansible-runner.
Senza Mirror del Registro di sistema
Se non utilizzi un mirror del Registro di sistema, esegui questi comandi per eseguire il pull dell'immagine docker ansible-runner:
gcloud auth login gcloud auth configure-docker docker pull gcr.io/anthos-baremetal-release/ansible-runner:1.10.0-gke.13
Con specchietto per registro
Se utilizzi un mirror del Registro di sistema, esegui questi comandi per eseguire il pull dell'immagine Docker anible-runner:
docker login REGISTRY_HOST docker pull REGISTRY_HOST/anthos-baremetal-release/ansible-runner:1.10.0-gke.13
Sostituisci REGISTRY_HOST con il nome del server del mirroring del registro.
Per estrarre il programma binario
bgpadvertiser
.Senza Mirror del Registro di sistema
Per estrarre il programma binario
bgpadvertiser
, esegui questo comando:docker cp $(docker create gcr.io/anthos-baremetal-release/ansible-runner:1.10.0-gke.13):/bgpadvertiser .
Con specchietto per registro
Per estrarre il programma binario
bgpadvertiser
, esegui questo comando:docker cp $(docker create REGISTRY_HOST/anthos-baremetal-release/ansible-runner:1.10.0-gke.13):/bgpadvertiser .
Per copiare il programma binario
bgpadvertiser
nel nodo del piano di controllo con cui vuoi eseguire il test, esegui questo comando:scp bgpadvertiser USERNAME>@CP_NODE_IP:/tmp/
Sostituisci quanto segue:
USERNAME
: il nome utente utilizzato per accedere al nodo del piano di controllo.CP_NODE_IP
: l'indirizzo IP del nodo del piano di controllo.
Configura una connessione BGP
Esegui i passaggi di questa sezione su un nodo del piano di controllo.
Crea sul nodo in
/tmp/bgpadvertiser.conf
un file di configurazione simile al seguente:localIP: NODE_IP localASN: CLUSTER_ASN peers: - peerIP: PEER_IP peerASN: PEER_ASN
Sostituisci quanto segue:
NODE_IP
: indirizzo IP del nodo del piano di controllo in cui ti trovi.CLUSTER_ASN
: il numero di sistema autonomo utilizzato dal cluster.PEER_IP
: l'indirizzo IP di uno dei peer esterni che vuoi testare.PEER_ASN
: il numero di sistema autonomo per la rete che contiene il dispositivo peer esterno.
Esegui il daemon
bgpadvertiser
, sostituendo il VIP del piano di controllo nel comando seguente:/tmp/bgpadvertiser --config /tmp/bgpadvertiser.conf --advertise-ip CONTROL_PLANE_VIP
Sostituisci
CONTROL_PLANE_VIP
con l'indirizzo IP che utilizzerai per il VIP del piano di controllo. Questo comando fa sì che l'inserzionista BGP pubblicizzi questo indirizzo al peer.Visualizza l'output del programma.
A questo punto, il daemon
bgpadvertiser
si avvia, tenta di connettersi al peer e pubblicizza il VIP. Il programma stampa periodicamente messaggi (vedi il seguente output di esempio) che includonoBGP_FSM_ESTABLISHED
quando viene stabilita la connessione BGP.{"level":"info","ts":1646788815.5588224,"logger":"BGPSpeaker","msg":"GoBGP gRPC debug endpoint disabled","localIP":"21.0.101.64"} {"level":"info","ts":1646788815.5596201,"logger":"BGPSpeaker","msg":"Started.","localIP":"21.0.101.64"} I0309 01:20:15.559667 1320826 main.go:154] BGP advertiser started. I0309 01:20:15.561434 1320826 main.go:170] Health status HTTP server started at "127.0.0.1:8080". INFO[0000] Add a peer configuration for:21.0.101.80 Topic=Peer {"level":"info","ts":1646788815.5623345,"logger":"BGPSpeaker","msg":"Peer added.","localIP":"21.0.101.64","peer":"21.0.101.80/4273481989"} DEBU[0000] IdleHoldTimer expired Duration=0 Key=21.0.101.80 Topic=Peer I0309 01:20:15.563503 1320826 main.go:187] Peer applied: {4273481989 21.0.101.80} DEBU[0000] state changed Key=21.0.101.80 Topic=Peer new=BGP_FSM_ACTIVE old=BGP_FSM_IDLE reason=idle-hold-timer-expired DEBU[0000] create Destination Nlri=10.0.0.1/32 Topic=Table {"level":"info","ts":1646788815.5670514,"logger":"BGPSpeaker","msg":"Route added.","localIP":"21.0.101.64","route":{"ID":0,"Metric":0,"NextHop":"21.0.101.64","Prefix":"10.0.0.1/32","VRF":""}} I0309 01:20:15.568029 1320826 main.go:199] Route added: {0 0 21.0.101.64 10.0.0.1/32 } I0309 01:20:15.568073 1320826 main.go:201] BGP advertiser serving... DEBU[0005] try to connect Key=21.0.101.80 Topic=Peer DEBU[0005] state changed Key=21.0.101.80 Topic=Peer new=BGP_FSM_OPENSENT old=BGP_FSM_ACTIVE reason=new-connection DEBU[0005] state changed Key=21.0.101.80 Topic=Peer new=BGP_FSM_OPENCONFIRM old=BGP_FSM_OPENSENT reason=open-msg-received INFO[0005] Peer Up Key=21.0.101.80 State=BGP_FSM_OPENCONFIRM Topic=Peer DEBU[0005] state changed Key=21.0.101.80 Topic=Peer new=BGP_FSM_ESTABLISHED old=BGP_FSM_OPENCONFIRM reason=open-msg-negotiated DEBU[0005] sent update Key=21.0.101.80 State=BGP_FSM_ESTABLISHED Topic=Peer attributes="[{Origin: i} 4273481990 {Nexthop: 21.0.101.64}]" nlri="[10.0.0.1/32]" withdrawals="[]" DEBU[0006] received update Key=21.0.101.80 Topic=Peer attributes="[{Origin: i} 4273481989 4273481990 {Nexthop: 21.0.101.64}]" nlri="[10.0.0.1/32]" withdrawals="[]" DEBU[0006] create Destination Nlri=10.0.0.1/32 Topic=Table DEBU[0035] sent Key=21.0.101.80 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x166e528}" DEBU[0065] sent Key=21.0.101.80 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x166e528}"
Se non vedi questi messaggi, controlla i parametri di configurazione BGP nel file di configurazione e verifica con l'amministratore di rete. Ora è stata configurata una connessione BGP. Puoi verificare con l'amministratore di rete se la connessione è stata stabilita sul suo lato e se il percorso viene pubblicizzato.
Test del traffico
Per verificare che la rete possa inoltrare il traffico al VIP, devi aggiungere il VIP al nodo del piano di controllo che esegue bgpadvertiser
. Esegui questo comando in un altro terminale in modo da lasciare in esecuzione bgpadvertiser
:
Aggiungi il VIP al nodo del piano di controllo:
ip addr add CONTROL_PLANE_VIP/32 dev INTF_NAME
Sostituisci quanto segue:
CONTROL_PLANE_VIP
: l'argomento VIP--advertise-ip
dibgpadvertiser
.INTF_NAME
: l'interfaccia Kubernetes sul nodo. In altre parole, l'interfaccia con l'indirizzo IP che hai inserito nella configurazione GKE su Bare Metal perloadBalancer.bgpPeers.controlPlaneNodes
.
Invia un ping al VIP da un nodo diverso:
ping CONTROL_PLANE_VIP
Se il ping non va a buon fine, potrebbe esserci un problema di configurazione di BGP sul dispositivo di rete. Contatta l'amministratore di rete per verificare la configurazione e risolvere il problema.
Esegui la pulizia
Assicurati di seguire questi passaggi per reimpostare il nodo dopo aver verificato manualmente il funzionamento di BGP. Se non reimposti correttamente il nodo, la configurazione manuale potrebbe interferire con il controllo preflight o la successiva creazione del cluster.
Rimuovi il VIP dal nodo del piano di controllo se lo hai aggiunto per il test del traffico:
ip addr del CONTROL_PLANE_VIP/32 dev INTF_NAME
Sul nodo del piano di controllo, premi
Ctrl
+C
nel terminalebgpadvertiser
per arrestare bgpadvertiser.Verifica che nessun processo
bgpadvertiser
sia in esecuzione:ps -ef | grep bgpadvertiser
Se vedi processi in esecuzione, arrestali utilizzando il comando
kill
.