Questo documento fornisce indicazioni per la risoluzione dei problemi relativi a: connessione a Google.
Network Connectivity Gateway
Questa sezione fornisce suggerimenti per la risoluzione dei problemi relativi a Network Connectivity Gateway.
Se hai bisogno di ulteriore assistenza, contatta l'assistenza clienti Google Cloud.Verifica che i pod del controller e del gateway siano in esecuzione
Elenca i pod Network Connectivity Gateway:
kubectl --kubeconfig CLUSTER_KUBECONFIG get pods \ --namespace kube-system | grep ncg
Sostituisci
CLUSTER_KUBECONFIG
con il percorso del file kubeconfig del cluster.Nell'output, verifica che siano visualizzati un pod controller e un pod gateway. Il nome del pod del controller inizia con
ncg-controller
e il nome del pod del gateway inizia conncgd
. Ad esempio:ncg-controller-5f5d489b68-r87pp 1/1 Running ncgd-gvl76 1/1 Running
Prendi nota del nome del pod gateway. Ti servirà per vari per la risoluzione dei problemi.
Controlla i log dei pod del gateway
Controlla se sono presenti errori nei log del pod gateway:
kubectl --kubeconfig CLUSTER_KUBECONFIG logs GATEWAY_POD \ --namespace kube-system
Sostituisci
GATEWAY_POD
con il nome del pod gateway.
Esecuzione di ncgcli
all'interno del pod gateway
Il pod gateway ha uno strumento a riga di comando denominato ncgcli
che puoi utilizzare per ottenere informazioni sul gateway e sul traffico nei tunnel.
Utilizza questo comando per eseguire
ncgcli
all'interno del pod del gateway:kubectl --kubeconfig CLUSTER_KUBECONFIG exec -it GATEWAY_POD \ --namespace kube-system -- ncgCLI_COMMAND
Sostituisci
ncgCLI_COMMAND
con un Comandoncgcli
.Ad esempio:
kubectl --kubeconfig my-kubeconfig exec ncgd-6hkk2 --namespace kube-system \ -- ncgcli --help
Le seguenti sezioni forniscono altri esempi di comandi ncgcli
.
Impossibile trovare il tunnel IPsec
Controlla lo stato della risorsa personalizzata
NetworkConnectivityGateway
:kubectl --kubeconfig CLUSTER_KUBECONFIG get NetworkConnectivityGateway \ --namespace kube-system --output yaml
Nell'output, verifica che sia visualizzato
Status: Healthy
. Ad esempio:apiVersion: networking.gke.io/v1alpha1 kind: NetworkConnectivityGateway metadata: namespace: kube-system name: default spec: status: CurrNode: worker1-node CreatedTime: 2021-09-07T03:18:15Z LastReportTime: 2021-09-21T23:57:54Z Status: Healthy
Controlla lo stato delle tue
OverlayVPNTunnel
risorse personalizzate:kubectl --kubeconfig CLUSTER_KUBECONFIG get OverlayVPNTunnel \ --namespace kube-system --output yaml
Controlla lo stato dei tunnel dall'interno del pod del gateway:
ncgcli overlay peers show
Per ulteriori informazioni, consulta la sezione Risoluzione dei problemi di Cloud VPN.
Impossibile stabilire la sessione BGP
Verifica di aver utilizzato indirizzi IP locali rispetto al collegamento, come 169.254.1.2
e
169.254.2.2
, per le sessioni BGP tra il router Cloud e
nel tuo cluster.
Controlla lo stato delle tue sessioni BGP:
kubectl --kubeconfig CLUSTER_KUBECONFIG get OverlayBGPPeer \ --namespace kube-system --output yaml
Controlla lo stato delle sessioni BGP dall'interno del pod del gateway:
ncgcli overlay routes show
Per ulteriori informazioni sulla risoluzione dei problemi relativi alle sessioni BGP, consulta quanto segue:
- Stati sessione BGP
- Risolvere i problemi relativi al peering BGP
- Risolvi i problemi di route e route BGP selezione
Problemi di inoltro del traffico anche se il tunnel è attivo
Se l'inoltro del traffico non riesce, esegui ncgcli
all'interno del pod del gateway
lo stato di tunnel, instradamento e programmazione del piano dati.
Assicurati che il tunnel IPsec con il peer sia stabilito:
ncgcli overlay peers show
Conferma che le route dell'overlay sono state scambiate su BGP e risolte in il tunnel IPsec appropriato:
ncgcli overlay routes show
Mostra i percorsi programmati nel piano dati e l'output deve includere i percorsi in overlay:
ncgcli fast-path routes show
Regola unità massima di trasmissione
La
Unità massima di trasmissione (MTU)
è la dimensione, in byte, del pacchetto più grande supportato da un livello di rete
che include intestazioni e dati. Se si verificano problemi di traffico causati da limitazioni dell'MTU della rete di base, puoi configurare l'MTU nella risorsa personalizzata OverlayVPNTunnel
. L'MTU predefinito per i tunnel è 1380
byte.
Per regolare il valore MTU per i tunnel:
Controlla lo stato dei tunnel:
kubectl --kubeconfig CLUSTER_KUBECONFIG get OverlayVPNTunnel \ --namespace kube-system --output yaml
La sezione
status
dovrebbe essere simile al seguente esempio:status: IfName: ipsec2 LastTransition: "2022-06-16T07:13:28Z" SLA: DiscoveredMTU: 1300 Jitter(ms): 1 Latency(ms): 26 Loss(%): "0.00"
Se il valore
status.SLA.DiscoveredMTU
è inferiore al valore predefinito di1380
, segui questa procedura per modificare il valoreSpec.mtu
nel tuoOverlayVPNTunel
risorse personalizzate da abbinare.Apri le risorse personalizzate
OverlayVPNTunnel
per la modifica con il comandokubectl edit
:kubectl --kubeconfig CLUSTER_KUBECONFIG edit OVERLAY_VPN_TUNNEL_NAME --namespace kube-system --output yaml
Per evitare la perdita di pacchetti, configura lo stesso MTU per le due risorse personalizzate
OverlayVPNTunnel
utilizzate da Network Connectivity Gateway.Imposta il valore
mtu
in modo che corrisponda al valoreDiscoveredMTU
del primo passaggio:apiVersion: networking.gke.io/v1alpha1 kind: OverlayVPNTunnel metadata: name: vpc2 namespace: kube-system Spec: mtu: 1300 ikeKey: name: ike-key namespace: kube-system localTunnelIP: 169.254.0.2 peer: publicIP: 34.100.10.10 self: publicIP: 70.32.151.5
Per applicare le modifiche, salva e chiudi l'editor.
Per ulteriori informazioni sulla MTU e su come influisce sulle prestazioni del traffico, consulta Considerazioni sulle MTU.
Visualizza le statistiche a livello di applicazione e flusso di traffico
Per visualizzare il flusso e le statistiche del traffico, esegui ncgcli
all'interno del pod gateway.
Per una visualizzazione istantanea dei flussi e delle applicazioni di traffico:
ncgcli forwarding flows top
Per le statistiche aggregate a livello di flusso:
ncgcli forwarding flows aggregates show
Per le statistiche aggregate a livello di interfaccia:
ncgcli interfaces statistics show