Sobre a observabilidade do GKE Dataplane V2


A observabilidade do GKE Dataplane V2 fornece métricas e insights do GKE Dataplane V2 para cargas de trabalho do Kubernetes. Com a observabilidade do GKE Dataplane V2, a partir da versão 1.28 ou mais recente do GKE, é possível:

A observabilidade do GKE Dataplane V2 oferece as seguintes ferramentas de solução de problemas:

  • Uma topologia de rede de cluster do Kubernetes
  • Uma tabela de vereditos da política de rede do Kubernetes com fluxos de tráfego ativos e informações de conexão
  • Ferramentas de linha de comando para solução de 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:

  • Fluxos de tráfego: insights sobre como o GKE processa fluxos entre pods e serviços.
  • Aplicação da política de rede: informações sobre como o GKE aplica políticas de rede do Kubernetes.

Use as métricas do GKE Dataplane V2 para monitorar e resolver problemas de cargas de trabalho do Kubernetes com as seguintes ferramentas:

  • Serviço gerenciado do Google Cloud para Prometheus para visualizar e analisar suas métricas do GKE Dataplane V2. É possível modificar a configuração do Google Cloud Managed Service para Prometheus para adicionar ou remover as métricas de sua preferência para o processamento do Google Cloud Managed Service para Prometheus.
  • Explorador de métricas do Cloud Monitoring para ver detalhes do fluxo de tráfego no nível do pod.
  • Cloud Monitoring para explorar e usar qualquer métrica. Por exemplo, é possível criar alertas que são acionados quando as métricas do GKE Dataplane V2 excedem determinados limites.
  • Grafana autogerenciado para visualizar métricas coletadas pelo Google Cloud Managed Service para Prometheus.

Quando você ativa o Google Cloud Managed Service para Prometheus:

  • O GKE cria um recurso PodMonitoring
  • O GKE expõe o endpoint de métricas

Para consumir métricas com o Google Cloud Managed Service para Prometheus e criar um recurso PodMonitoring, ative o Google Cloud Managed Service para Prometheus no cluster. Se você não ativar o Google Cloud Managed Service para Prometheus, o GKE irá expor o endpoint de métricas, mas não criará um recurso PodMonitoring.

Quando você ativa as métricas do GKE Dataplane V2 para um cluster, o Google Cloud Managed Service para Prometheus processa 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 pod.
prometheus.googleapis.com/pod_flow_ingress_flows_count/counter cumulativo Número total de fluxos para um pod.

A ativação das métricas do GKE Dataplane V2 abre a porta de métricas em cada nó do Kubernetes.

Outras métricas também estão disponíveis, incluindo a plataforma de observabilidade de código aberto Hubble. Por padrão, o Google Cloud Managed Service para Prometheus não ingere essas métricas adicionais, mas é possível configurar o Google Cloud Managed Service para Prometheus para coletá-las. Para coletar essas métricas, configure um recurso personalizado (CR) PodMonitoring.

A tabela a seguir descreve outras métricas do Hubble:

Métrica do Hubble Tipo Descrição
hubble_flows_processed_total cumulativo Número total de fluxos processados.
hubble_drop_total cumulativo O número total de fluxos caiu.
hubble_port_distribution_total cumulativo Número total de fluxos processados agregados por número de porta.
hubble_tcp_flags_total cumulativo Número total de fluxos processados com determinados sinalizadores TCP definidos.
hubble_icmp_total cumulativo Número total de fluxos de ICMP processados.

Ferramentas de observabilidade do GKE Dataplane V2

A observabilidade do GKE Dataplane V2 fornece uma solução gerenciada do Hubble com insights de observabilidade de rede e segurança para cargas de trabalho do Kubernetes implantadas com o GKE Dataplane V2.

Quando ativada, a observabilidade do GKE Dataplane V2 implanta os seguintes componentes no cluster:

  • Retransmissão Hubble: um serviço que coleta dados de telemetria de rede sobre seus pods de cada nó.

  • CLI Hubble: uma ferramenta de interface de linha de comando que fornece informações de tráfego em tempo real dentro do cluster.

É possível implantar o seguinte componente depois de ativar a observabilidade do GKE Dataplane V2 no cluster:

  • interface do Hubble: uma ferramenta baseada na Web que pode ser usada para ver e analisar os dados de telemetria de rede coletados pelo Hubble Relay. Ative a observabilidade do GKE Dataplane V2 para implantar a interface do Hubble.

Como as métricas e a observabilidade do GKE Dataplane V2 funcionam

A observabilidade do GKE Dataplane V2 usa os seguintes componentes e ferramentas para coletar métricas e fornecer insights 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 com base no eBPF para coletar métricas sobre fluxos de tráfego e aplicação da política de rede para um pod com base em uma determinada carga de trabalho.

  • Google Cloud Managed Service para Prometheus: as métricas do GKE Dataplane V2 configuram o agente do Google Cloud Managed Service para Prometheus a fim de processar métricas agregadas no Google Cloud Managed Service para Prometheus, uma solução de monitoramento escalonável que pode ingerir e armazenar grandes quantidades de dados e que também permite aproveitar o Google Cloud Observability.

  • Hubble: a observabilidade do GKE Dataplane V2 usa o Hubble, um projeto de observabilidade de código aberto. O Hubble permite insights de observabilidade de rede e segurança para cargas de trabalho do Kubernetes implantadas com um plano de dados eBPF.

    Os eventos de fluxo do Hubble ocorrem quando:

    • Uma conexão de rede é estabelecida primeiro

    • Uma sinalização TCP é vista pela primeira vez, o que indica o estado da conexão TCP

    • Um pacote é transmitido após pelo menos cinco segundos desde o último evento de fluxo

    Métricas do Hubble: conta o número de eventos de fluxo em um cluster do Kubernetes que pode ser usado para identificar quais pods estão se comunicando entre si.

  • Como ativar métricas e observabilidade: é possível ativar o GKE Dataplane V2 e a observabilidade independentes uns dos outros. Para ativar a visualização da topologia de rede no recurso de interface de código aberto do Hubble, ative a inspeção de rede.

  • Clusters do Autopilot:

    • As métricas são ativadas por padrão

    • As ferramentas de observabilidade estão desativadas por padrão

    • Você precisa criar o recurso ClusterPodMonitoring para coletar métricas no Google Cloud Managed Service para Prometheus

  • Clusters padrão:

    • As métricas são desativadas por padrão

    • As ferramentas de observabilidade estão desativadas por padrão

    • Se você tiver o Google Cloud Managed Service para Prometheus ativado, um recurso PodMonitoring será criado automaticamente

    • Um recurso PodMonitoring está marcado como garantir que existe. Para interromper o envio de métricas para o Google Cloud Managed Service para Prometheus, edite o recurso PodMonitoring para desativar todas as métricas

Endpoints de observabilidade do GKE Dataplane V2

Os componentes de observabilidade do GKE Dataplane V2 expõem os dois endpoints de observabilidade a seguir:

  • Endpoint de métricas: um endpoint HTTP que expõe métricas de tráfego no formato do Prometheus. O pod anetd expõe o endpoint de métricas em cada nó do cluster na porta 9965.

  • Porta de fluxos: um endpoint gRPC. O pod hubble-relay expõe o endpoint da porta de fluxos como um serviço ClusterIP do Kubernetes na porta 443. O pod hubble-relay é o back-end do serviço ClusterIP do Kubernetes, e todas as solicitações ao serviço ClusterIP do Kubernetes são encaminhadas para o pod hubble-relay. É possível acessar a porta de fluxo usando a CLI Hubble ou a interface do Hubble.

Limitações

  • A observabilidade do GKE Dataplane V2 tem um limite de 5.000 nós em todo o cluster.
  • A observabilidade do GKE Dataplane V2 só funciona em clusters com o GKE Dataplane V2 ativado.
  • As métricas do GKE Dataplane V2 são semelhantes às do Hubble, porque são implementadas como métricas baseadas em fluxo para fornecer informações de conexão. Essas métricas não contabilizam a quantidade de dados nem o número de pacotes transmitidos. Como as métricas são baseadas em fluxo, elas não fornecem uma representação precisa da quantidade de dados transmitidos em um fluxo de rede.

A seguir