A observabilidade do GKE Dataplane V2 fornece métricas e estatísticas do GKE Dataplane V2 sobre as cargas de trabalho nos clusters do GKE no Google Cloud. Com a observabilidade do GKE Dataplane V2, a partir das versões 1.28 ou posteriores do GKE, pode:
- Capture, observe e receba alertas sobre métricas de rede através do serviço gerido do Google Cloud para o Prometheus e do Cloud Monitoring com o explorador de métricas
- Compreenda os fluxos de tráfego de um determinado serviço num cluster
- Compreenda e identifique problemas com o estado da rede de uma carga de trabalho do Kubernetes
- Valide as políticas de rede do Kubernetes
A observabilidade do GKE Dataplane V2 oferece as seguintes ferramentas de resolução de problemas:
- Uma Network Topology do cluster do Kubernetes
- Uma tabela de veredicto da política de rede do Kubernetes com fluxos de tráfego em direto e informações de ligação
- Ferramentas de linha de comandos para resolver problemas de fluxos de tráfego do Kubernetes
Métricas do GKE Dataplane V2
As métricas do GKE Dataplane V2 fornecem informações sobre o fluxo de tráfego para o seguinte:
- Fluxos de tráfego: estatísticas sobre a forma como o GKE processa os fluxos entre pods e serviços.
Aplicação da política de rede: informações sobre como o GKE aplica as políticas de rede do Kubernetes.
Pode usar as métricas do GKE Dataplane V2 para monitorizar e resolver problemas de cargas de trabalho do Kubernetes através das seguintes ferramentas:
- Google Cloud Managed Service for Prometheus para ver e analisar as suas métricas do GKE Dataplane V2. Pode modificar a configuração do Google Cloud Managed Service for Prometheus para adicionar ou remover as métricas da sua escolha para carregamento do Google Cloud Managed Service for Prometheus.
- Explorador de métricas do Cloud Monitoring para ver detalhes do fluxo de tráfego ao nível do pod.
- Cloud Monitoring para explorar e usar qualquer métrica. Por exemplo, pode criar alertas que são acionados quando as métricas do GKE Dataplane V2 excedem determinados limites.
- Grafana autogerido para visualizar métricas recolhidas pelo Google Cloud Managed Service for Prometheus.
Quando ativa o serviço gerido do Google Cloud para o Prometheus:
- O GKE cria um recurso
PodMonitoring
- O GKE expõe o ponto final de métricas
Para consumir métricas com o Google Cloud Managed Service for Prometheus e poder criar um recurso PodMonitoring
, tem de ativar o Google Cloud Managed Service for Prometheus no cluster. Se não ativar o serviço gerido do Google Cloud para Prometheus, o GKE expõe o ponto final de métricas, mas não cria um recurso PodMonitoring
.
Quando ativa as métricas do GKE Dataplane V2 para um cluster, o Google Cloud Managed Service for Prometheus carrega as seguintes métricas do GKE Dataplane V2:
Métrica do GKE Dataplane V2 | Tipo | Descrição |
---|---|---|
prometheus.googleapis.com/pod_flow_egress_flows_count/counter
|
cumulativo | Número total de fluxos de um agrupamento. |
prometheus.googleapis.com/pod_flow_ingress_flows_count/counter
|
cumulativo | Número total de fluxos para um agrupamento. |
A ativação das métricas do GKE Dataplane V2 abre a porta de métricas em cada nó do Kubernetes.
Também estão disponíveis métricas adicionais, incluindo as da plataforma de observabilidade de código aberto Hubble.
Por predefinição, o serviço gerido do Google Cloud para Prometheus não carrega estas métricas adicionais, mas pode configurar o serviço gerido do Google Cloud para Prometheus para as recolher. Para recolher estas métricas, configure um PodMonitoring
recurso personalizado (CR).
A tabela seguinte descreve métricas adicionais do Hubble:
Métrica de Hubble | Tipo | Descrição |
---|---|---|
hubble_flows_processed_total
|
cumulativo | Número total de fluxos processados. |
hubble_drop_total
|
cumulativo | Número total de fluxos abandonados. |
hubble_port_distribution_total
|
cumulativo | Número total de fluxos processados agregados por número da porta. |
hubble_tcp_flags_total
|
cumulativo | Número total de fluxos processados com as flags TCP definidas. |
hubble_icmp_total
|
cumulativo | Número total de fluxos ICMP processados. |
Ferramentas de observabilidade do GKE Dataplane V2
A observabilidade do GKE Dataplane V2 oferece uma solução Hubble gerida com observabilidade de rede e estatísticas de segurança para cargas de trabalho do Kubernetes implementadas com o GKE Dataplane V2.
Quando ativada, a observabilidade do GKE Dataplane V2 implementa os seguintes componentes no seu cluster:
Hubble Relay: um serviço que recolhe dados de telemetria de rede sobre os seus Pods a partir de cada nó.
CLI Hubble: uma ferramenta de interface de linhas de comando que fornece informações de tráfego em direto no cluster.
Pode implementar o seguinte componente depois de ativar a observabilidade do GKE Dataplane V2 no cluster:
- Interface do utilizador do Hubble: uma ferramenta baseada na Web que pode usar para ver e analisar os dados de telemetria de rede recolhidos pelo Hubble Relay. Tem de ativar a observabilidade do GKE Dataplane V2 para implementar a IU do Hubble.
Como funcionam as métricas e a observabilidade do GKE Dataplane V2
A observabilidade do plano de dados V2 do GKE usa os seguintes componentes e ferramentas para recolher métricas e fornecer estatísticas sobre o tráfego de rede:
GKE Dataplane V2: as métricas e a observabilidade do GKE Dataplane V2 usam o caminho de dados do GKE Dataplane V2 baseado em eBPF para recolher métricas sobre fluxos de tráfego e aplicação de políticas de rede para um pod com base numa determinada carga de trabalho.
Serviço gerido do Google Cloud para Prometheus: A configuração das métricas do GKE Dataplane V2 configura o agente do serviço gerido do Google Cloud para Prometheus de modo a carregar métricas agregadas para o serviço gerido do Google Cloud para Prometheus, uma solução de monitorização escalável que pode carregar e armazenar grandes quantidades de dados e que também lhe permite criar com base na observabilidade do Google Cloud.
Hubble: a observabilidade do GKE Dataplane V2 usa o Hubble, um projeto de observabilidade de código aberto. O Hubble permite a observabilidade da rede e estatísticas de segurança para cargas de trabalho do Kubernetes implementadas com um plano de dados eBPF.
Os eventos de fluxo do Hubble ocorrem quando:
É estabelecida primeiro uma ligação de rede
É apresentada uma flag TCP, que indica o estado da ligação TCP
Um pacote é transmitido após, pelo menos, cinco segundos desde o último evento de fluxo
Métricas do Hubble: contabiliza o número de eventos de fluxo num cluster do Kubernetes que pode usar para identificar os pods que estão a comunicar entre si.
Ativar métricas e observabilidade: pode ativar o GKE Dataplane V2 e a observabilidade de forma independente. Para ativar a visualização da topologia de rede na funcionalidade da IU do Hubble de código aberto, tem de ativar a inspeção de rede.
Clusters do Autopilot:
As métricas estão ativadas por predefinição
As ferramentas de observabilidade estão desativadas por predefinição
Tem de criar o recurso Cluster
PodMonitoring
para recolher métricas no Google Cloud Managed Service for Prometheus
Clusters padrão:
As métricas estão desativadas por predefinição
As ferramentas de observabilidade estão desativadas por predefinição
Se tiver o serviço gerido da Google Cloud para o Prometheus ativado, é criado automaticamente um recurso
PodMonitoring
Um recurso
PodMonitoring
é marcado como ensure exists. Pode parar de enviar métricas para o serviço gerido do Google Cloud para Prometheus editando o recursoPodMonitoring
para desativar todas as métricas
Pontos finais de observabilidade do GKE Dataplane V2
Os componentes de observabilidade do GKE Dataplane V2 expõem os seguintes dois pontos finais de observabilidade:
Ponto final de métricas: um ponto final de HTTP que expõe métricas de tráfego no formato Prometheus. O
anetd
pod expõe o ponto final de métricas em cada nó do cluster na porta 9965.Porta de fluxos: um ponto final gRPC. O pod
hubble-relay
expõe o ponto final da porta de fluxos como um serviçoClusterIP
do Kubernetes na porta 443. Ohubble-relay
Pod é o back-end do serviço KubernetesClusterIP
e todos os pedidos ao serviço KubernetesClusterIP
são encaminhados para ohubble-relay
Pod. Pode aceder à porta de fluxo através da CLI do Hubble ou da IU do Hubble.
Limitações
- A observabilidade do GKE Dataplane V2 tem um limite ao nível do cluster de 5000 nós.
- As métricas e a observabilidade do GKE Dataplane V2 só funcionam em clusters Google Cloud com o GKE Dataplane V2 ativado.
- As métricas do plano de dados V2 do GKE são semelhantes às métricas do Hubble, uma vez que são implementadas como métricas baseadas no fluxo para fornecer informações de ligação. Estas métricas não contabilizam a quantidade de dados nem o número de pacotes transmitidos. Uma vez que as métricas são baseadas no fluxo, não fornecem uma representação precisa da quantidade de dados transmitidos num fluxo de rede.
O que se segue?
- Configure a observabilidade do GKE Dataplane V2
- Observe o seu tráfego através da observabilidade do GKE Dataplane V2