Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Usar métricas do Policy Controller

Nesta página, explicamos como usar métricas para monitorar o Policy Controller.

O Policy Controller inclui várias métricas relacionadas ao uso da política. Por exemplo, há métricas que registram o número de restrições e modelos de restrição, e o número de violações de auditoria detectadas. Para criar e registrar essas métricas, o Policy Controller usa o OpenCensus. É possível configurar o Policy Controller para exportar essas métricas para o Prometheus ou o Cloud Monitoring. A configuração padrão de exportação de métricas exporta as métricas para o Prometheus e o Cloud Monitoring.

Configurar a exportação de métricas

No Anthos Config Management versão 1.12.0 e posteriores, é possível configurar como o Policy Controller exporta as métricas. É possível escolher o Prometheus, o Cloud Monitoring, os dois ou nenhum deles ao instalar o Policy Controller. Por padrão, o Policy Controller tenta exportar métricas para o Prometheus e para o Cloud Monitoring.

Nas versões do Anthos Config Management anteriores à 1.12.0, o Policy Controller exporta métricas apenas para o Prometheus.

Exportar métricas para o Cloud Monitoring

Se o Policy Controller estiver em execução em um ambiente do Google Cloud que tenha uma conta de serviço padrão, o Policy Controller exportará automaticamente as métricas para o Cloud Monitoring no Anthos Config Management versão 1.12.0 e posteriores.

Se a Identidade da carga de trabalho do GKE ou a Identidade da carga de trabalho da frota estiver ativada, siga as etapas a seguir:

  1. Vincule o gatekeeper-admin da conta de serviço do Kubernetes no namespace gatekeeper-system a uma conta de serviço do Google com o papel de gravador de métricas:

    gcloud iam service-accounts add-iam-policy-binding \
        --role roles/iam.workloadIdentityUser \
        --member "serviceAccount:PROJECT_ID.svc.id.goog[gatekeeper-system/gatekeeper-admin]" \
        GSA_NAME@PROJECT_ID.iam.gserviceaccount.com
    

    Substitua:

    • PROJECT_ID: o ID do projeto.
    • GSA_NAME: a conta de serviço do Google com o papel do IAM de gravador de métricas do Monitoring (roles/monitoring.metricWriter).

    Essa ação requer a permissão iam.serviceAccounts.setIamPolicy no projeto.

  2. Anote a conta de serviço do Kubernetes que usa o endereço de e-mail da conta de serviço do Google.

    kubectl annotate serviceaccount \
        --namespace gatekeeper-system \
        gatekeeper-admin \
        iam.gke.io/gcp-service-account=GSA_NAME@PROJECT_ID.iam.gserviceaccount.com
    
  3. Reinicie o pod gatekeeper-controller-manager:

    kubectl rollout restart deployment gatekeeper-controller-manager -n gatekeeper-system
    

Para exemplos sobre como visualizar essas métricas, consulte Ler métricas do OpenCensus no Cloud Monitoring.

Exportar métricas para o Prometheus

Por padrão, o Policy Controller exporta métricas para o Prometheus na porta 8675. Também é possível configurar o Cloud Monitoring para extrair métricas personalizadas do Prometheus. Para mais informações, consulte Prometheus gerenciado.

Ver métricas

As métricas do Policy Controller são exportadas para seu projeto do Cloud Monitoring no formato do Prometheus. Sendo assim, é possível consultar métricas usando a API Cloud Monitoring e um painel no console do Google Cloud. Edite esse painel para atender às suas necessidades comerciais e operacionais.

Para consultar a API Cloud Monitoring, use a Linguagem de consulta do Prometheus (PromQL, na sigla em inglês) (a linguagem de consulta real para métricas do Kubernetes) ou a Linguagem de consulta do Monitoring (MQL) (a linguagem de consulta de métricas reservadas do Google).

Para criar o painel do Policy Controller:

  1. No console do Google Cloud, acesse a página Painéis.

    Ir para "Painéis"

  2. Na página Visão geral de painéis, clique na guia Biblioteca de amostra. Essa guia mostra todos os painéis que você pode importar.

  3. Na coluna Categorias, selecione Anthos Config Management.

  4. Na tabela de amostras Anthos Config Management, marque a caixa de seleção Policy Controller.

  5. Clique em Importar.

  6. Para criar o painel, clique em Confirmar na janela de confirmação.

Para ver e editar o painel do Policy Controller:

  1. Na página Visão geral de painéis, selecione a guia Lista de painéis.
  2. Selecione o painel do Policy Controller.
  3. Para personalizar o painel, clique em Editar painel.
  4. Faça as alterações necessárias e clique em Salvar. Para saber mais sobre como personalizar painéis, consulte Filtrar um painel na documentação do Cloud Monitoring.

Criar alertas

Para receber notificações quando suas métricas atenderem a determinados limites, crie políticas de alertas no Cloud Monitoring.

Integração de terceiros

Usando a API Cloud Monitoring, qualquer ferramenta de observabilidade de terceiros pode ingerir métricas do Policy Controller.

Por exemplo, se você estiver usando painéis do Grafana, adicione a API Cloud Monitoring como a fonte de dados no Grafana. Para saber mais, consulte Google Cloud Monitoring na documentação do Grafana.

Métricas disponíveis

Se o Policy Controller estiver ativado no cluster, consulte as seguintes métricas (todas prefixadas com OpenCensus/):

Nome Tipo Rótulos Descrição
OpenCensus/audit_duration_seconds Cumulative Distribuição da duração do ciclo de auditoria
OpenCensus/audit_last_run_time Medidor O carimbo de data e hora da época desde o último ambiente de execução da auditoria, fornecido como segundos em ponto flutuante
OpenCensus/constraint_template_ingestion_count Cumulative status Número total de ações de ingestão de modelo de restrição
OpenCensus/constraint_template_ingestion_duration_seconds Cumulative status Distribuição de duração de ingestão de modelo de restrição
OpenCensus/constraint_templates Medidor status Número atual de modelos de restrição
OpenCensus/validation_request_count Contador admission_status Contagem de solicitações de admissão do servidor da API
OpenCensus/validation_request_duration_seconds Cumulative admission_status Distribuição da duração do pedido de admissão
OpenCensus/violations Medidor enforcement_action Número de violações de auditoria detectadas no último ciclo de auditoria
OpenCensus/watch_manager_intended_watch_gvk Medidor Quantos Policy Controller do GroupVersionKinds exclusivos precisam estar assistindo. Essa métrica é uma combinação de recursos e restrições sincronizados. Não implementado no momento
OpenCensus/watch_manager_watched_gvk Medidor Quantos Policy Controller do GroupVersionKinds exclusivos estão realmente assistindo. Essa métrica precisa convergir para ser igual a OpenCensus/watch_manager_intended_watch_gvk. Não implementado no momento

A seguir