Acerca da observabilidade do GKE Dataplane V2

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:

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 PodMonitoringrecurso 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 ClusterPodMonitoring 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 recurso PodMonitoring 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 anetdpod 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ço ClusterIP do Kubernetes na porta 443. O hubble-relayPod é o back-end do serviço Kubernetes ClusterIP e todos os pedidos ao serviço Kubernetes ClusterIP são encaminhados para o hubble-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?