Este documento fornece orientações de resolução de problemas relacionados com a sua ligação à Google.
Gateway de conetividade de rede
Esta secção oferece sugestões de resolução de problemas relacionados com o Network Connectivity Gateway.
Se precisar de assistência adicional, contacte o apoio ao cliente do Google Cloud. Também pode consultar o artigo Receber apoio técnico para mais informações sobre recursos de apoio técnico, incluindo o seguinte:- Requisitos para abrir um registo de apoio técnico.
- Ferramentas para ajudar a resolver problemas, como a configuração do ambiente, os registos e as métricas.
- Componentes suportados.
Verifique se os Pods do controlador e da gateway estão em execução
Liste os pods do Network Connectivity Gateway:
kubectl --kubeconfig CLUSTER_KUBECONFIG get pods \ --namespace kube-system | grep ncg
Substitua
CLUSTER_KUBECONFIG
pelo caminho do ficheiro kubeconfig do cluster.Na saída, verifique se vê um pod de controlador e um pod de gateway. O nome do Pod do controlador começa com
ncg-controller
e o nome do Pod da gateway começa comncgd
. Por exemplo:ncg-controller-5f5d489b68-r87pp 1/1 Running ncgd-gvl76 1/1 Running
Anote o nome do pod da gateway. Vai precisar dele para vários comandos de resolução de problemas.
Verifique os registos do pod de gateway
Verifique se existem erros nos registos do pod de gateway:
kubectl --kubeconfig CLUSTER_KUBECONFIG logs GATEWAY_POD \ --namespace kube-system
Substitua
GATEWAY_POD
pelo nome do seu Pod de gateway.
Executar ncgcli
no agrupamento do gateway
O pod de gateway tem uma ferramenta de linha de comandos denominada ncgcli
que pode usar para obter informações sobre o gateway e o tráfego nos túneis.
Use o seguinte comando para executar
ncgcli
no pod do gateway:kubectl --kubeconfig CLUSTER_KUBECONFIG exec -it GATEWAY_POD \ --namespace kube-system -- ncgCLI_COMMAND
Substitua
ncgCLI_COMMAND
por um comandoncgcli
.Por exemplo:
kubectl --kubeconfig my-kubeconfig exec ncgd-6hkk2 --namespace kube-system \ -- ncgcli --help
As secções seguintes apresentam mais exemplos de comandos ncgcli
.
O túnel IPsec não foi estabelecido
Verifique o estado do
NetworkConnectivityGateway
recurso personalizado:kubectl --kubeconfig CLUSTER_KUBECONFIG get NetworkConnectivityGateway \ --namespace kube-system --output yaml
Na saída, verifique se vê
Status: Healthy
. Por exemplo: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
Verifique o estado dos seus
OverlayVPNTunnel
recursos personalizados:kubectl --kubeconfig CLUSTER_KUBECONFIG get OverlayVPNTunnel \ --namespace kube-system --output yaml
Verifique o estado dos seus túneis a partir do interior do pod do gateway:
ncgcli overlay peers show
Para mais informações, consulte o artigo Resolução de problemas da VPN do Google Cloud.
Falha ao estabelecer sessão de BGP
Verifique se usou endereços IP locais de ligação, como 169.254.1.2
e
169.254.2.2
, para as sessões BGP entre o Cloud Router e o gateway Pod no seu cluster.
Verifique o estado das suas sessões BGP:
kubectl --kubeconfig CLUSTER_KUBECONFIG get OverlayBGPPeer \ --namespace kube-system --output yaml
Verifique o estado das suas sessões BGP a partir de dentro do pod do gateway:
ncgcli overlay routes show
Para mais informações sobre a resolução de problemas das suas sessões BGP, consulte o seguinte:
- Estados da sessão de BGP
- Resolva problemas de peering BGP
- Resolva problemas de trajetos BGP e seleção de trajetos
Problemas de encaminhamento de tráfego, mesmo que o túnel esteja ativo
Se o encaminhamento de tráfego falhar, execute ncgcli
no interior do pod de gateway
para verificar o estado dos túneis, do encaminhamento e da programação do plano de dados.
Certifique-se de que o túnel IPsec para o par está estabelecido:
ncgcli overlay peers show
Confirme que as rotas de sobreposição foram trocadas através do BGP e resolvidas para o túnel IPsec adequado:
ncgcli overlay routes show
Apresente os encaminhamentos programados no plano de dados e a saída deve incluir encaminhamentos de sobreposição:
ncgcli fast-path routes show
Ajuste a unidade de transmissão máxima
A
unidade de transmissão máxima (MTU)
é o tamanho, em bytes, do maior pacote suportado por um protocolo de camada de rede, incluindo cabeçalhos e dados. Se existirem problemas de tráfego causados por limitações de MTU da rede subjacente, pode configurar a MTU no recurso personalizado OverlayVPNTunnel
. A MTU predefinida para os túneis é de 1380 bytes.
Para ajustar a MTU dos seus túneis:
Verifique o estado dos túneis:
kubectl --kubeconfig CLUSTER_KUBECONFIG get OverlayVPNTunnel \ --namespace kube-system --output yaml
A secção
status
deve ser semelhante ao seguinte exemplo:status: IfName: ipsec2 LastTransition: "2022-06-16T07:13:28Z" SLA: DiscoveredMTU: 1300 Jitter(ms): 1 Latency(ms): 26 Loss(%): "0.00"
Se o valor de
status.SLA.DiscoveredMTU
for inferior ao valor predefinido de1380
, use os seguintes passos para alterar o valor deSpec.mtu
nos seus recursos personalizados deOverlayVPNTunel
para corresponder.Abra os seus recursos personalizados
OverlayVPNTunnel
para edição com o comandokubectl edit
:kubectl --kubeconfig CLUSTER_KUBECONFIG edit OVERLAY_VPN_TUNNEL_NAME --namespace kube-system --output yaml
Para evitar a perda de pacotes, configure a mesma MTU para os dois recursos personalizados
OverlayVPNTunnel
usados pelo gateway de conetividade de rede.Defina o valor
mtu
para corresponder ao valorDiscoveredMTU
do primeiro passo: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
Para aplicar as alterações, guarde e feche o editor.
Para mais informações acerca da MTU e de como afeta o desempenho do tráfego, consulte o artigo Considerações sobre a MTU.
Veja o fluxo de tráfego e as estatísticas ao nível da aplicação
Para ver o fluxo de tráfego e as estatísticas, execute ncgcli
no pod do gateway.
Para uma vista instantânea das aplicações de fluxos e tráfego:
ncgcli forwarding flows top
Para estatísticas agregadas ao nível do fluxo:
ncgcli forwarding flows aggregates show
Para estatísticas agregadas ao nível da interface:
ncgcli interfaces statistics show
O que se segue?
Se precisar de assistência adicional, contacte o apoio ao cliente do Google Cloud. Também pode consultar o artigo Receber apoio técnico para mais informações sobre recursos de apoio técnico, incluindo o seguinte:- Requisitos para abrir um registo de apoio técnico.
- Ferramentas para ajudar a resolver problemas, como a configuração do ambiente, os registos e as métricas.
- Componentes suportados.