Consultar e ver alertas abertos

Esta página contém instruções detalhadas sobre como consultar e visualizar alertas abertos através da consola do GDC e da ferramenta curl para o ponto final do Cortex, de modo a ter conhecimento dos problemas e resolvê-los.

Depois de criar regras de alertas com base em registos e métricas de ambientes isolados do Google Distributed Cloud (GDC), pode começar a monitorizar alertas abertos do seu projeto. Pode visualizar e filtrar alertas que os eventos do sistema acionam na consola do GDC ou aceder aos mesmos diretamente a partir do Cortex através da ferramenta curl para uma criação de scripts e uma automatização flexíveis.

Pode aceder a alertas abertos através de um dos dois métodos seguintes:

  • Consola do GDC: visualize dados de alertas em painéis integrados que contêm informações como o número de alertas para uma origem de dados específica, o nível de gravidade, a duração, o estado, a mensagem e as etiquetas. A consola do GDC oferece uma interface de fácil utilização para filtrar e analisar alertas dos componentes do sistema.
  • Ponto final do Alertmanager do Cortex: para exemplos de utilização mais avançados, consulte a instância do Cortex do seu projeto diretamente através da ferramenta curl numa linha de comandos. O Cortex armazena os alertas do Alertmanager do seu projeto e oferece um ponto final HTTP para acesso programático. Este acesso permite-lhe exportar dados, automatizar tarefas, configurar tarefas cron e criar integrações personalizadas.

Antes de começar

Para receber as autorizações de que precisa para consultar e visualizar alertas, peça ao administrador de IAM do projeto para lhe conceder uma das funções do Alertmanager do Project Cortex associadas no espaço de nomes do projeto. Consoante o nível de acesso e as autorizações de que precisa, pode receber funções de editor ou visualizador para este recurso num projeto.

A tabela seguinte resume os requisitos de Role para PA and AO persona.

Perfil Objeto Cluster Função Espaço de nomes Grupo/Utilizador Configuração
PA grafana org-admin project-cortex-alertmanager-viewer platform-obs Grupo 1
PA grafana org-admin project-cortex-alertmanager-viewer platform-obs Utilizador 2
AO alertmanager org-admin project-cortex-alertmanager-viewer PROJECT_NAMESPACE Grupo 1
AO alertmanager org-admin project-cortex-alertmanager-viewer PROJECT_NAMESPACE Utilizador 2

Substitua as seguintes variáveis de forma adequada:

Variável Descrição
KUBECONFIG Precisa do kubeconfig para o cluster específico que contém o NAMESPACE onde este RoleBinding vai ser aplicado.
RULE_NAME O nome exclusivo deste recurso RoleBinding no espaço de nomes. Por exemplo, pa-cortex-alertmanager-viewer.
NAMESPACE O espaço de nomes do Kubernetes onde este RoleBinding vai ser criado e aplicado. Procure a coluna Namespace na tabela anterior.
EMAIL_ADDRESS O identificador do utilizador ao qual a função está a ser concedida. Geralmente, trata-se de um endereço de email. Por exemplo, infrastructure-operator@example.com.
ROLE O nome do Role que contém as autorizações que quer conceder ao utilizador. Procure as funções disponíveis na tabela anterior
GROUP_NAME O nome do Group ao qual o utilizador de PA/AO pertence. Por exemplo, pa-group.
ZONE Nome da zona

Configuração 1

Esta configuração concede autorizações a um grupo de utilizadores para aceder a alertas de PA/AO no cluster org. Depois de configurar esta configuração, consulte a secção da consola deste documento para ver alertas na consola do GDC.

  • Comando Kubectl

    Este é o formato de comando genérico:

    kubectl --kubeconfig `KUBECONFIG` create rolebinding `RULE_NAME` -n `NAMESPACE` --group=`GROUP_NAME` --role=project-cortex-alertmanager-viewer
    

    Exemplo:

    kubectl --kubeconfig <path-to-kubeconfig> create rolebinding project-cortex-alertmanager-viewer-binding --role=project-cortex-alertmanager-viewer --group=my-team --namespace=platform-obs
    
  • Caminho do ficheiro IAC

    /infrastructure/zonal/zones/`ZONE`/org-admin/rolebindings/`GROUP_NAME`/<YAML_FILE>
    
  • Ficheiro YAML

    apiVersion: rbac.authorization.k8s.io/v1
    kind: RoleBinding
    metadata:
      name: RULE_NAME
      namespace: NAMESPACE
    subjects:
    - kind: Group
      name: GROUP_NAME
      apiGroup: rbac.authorization.k8s.io
    roleRef:
      kind: Role
      name: project-cortex-alertmanager-viewer
      apiGroup: rbac.authorization.k8s.io
    

Configuração 2

Esta configuração destina-se ao perfil PA e segmenta o objeto grafana no cluster org-admin. Concede a função project-cortex-alertmanager-viewer no espaço de nomes platform-obs a um User.

  • Comando Kubectl

    Este é o formato de comando genérico:

    kubectl --kubeconfig `KUBECONFIG` create rolebinding `RULE_NAME` -n platform-obs --user=`EMAIL_ADDRESS` --role=project-cortex-alertmanager-viewer
    

    Exemplo:

    kubectl --kubeconfig <path-to-kubeconfig> create rolebinding project-cortex-alertmanager-viewer-binding --role=project-cortex-alertmanager-viewer --user=my-email@example.com --namespace=platform-obs
    
  • Caminho do ficheiro IAC

    /infrastructure/zonal/zones/`ZONE`/org-admin/rolebindings/`EMAIL_ADDRESS`/<YAML_FILE>
    
  • Ficheiro YAML

    apiVersion: rbac.authorization.k8s.io/v1
    kind: RoleBinding
    metadata:
      name: RULE_NAME
      namespace: platform-obs
    subjects:
    - kind: User
      name: EMAIL_ADDRESS
      apiGroup: rbac.authorization.k8s.io
    roleRef:
      kind: Role
      name: project-cortex-alertmanager-viewer
      apiGroup: rbac.authorization.k8s.io
    

    Para mais informações sobre estas funções, consulte o artigo Prepare as autorizações de IAM.

Veja e filtre alertas abertos

Selecione um dos seguintes métodos para consultar e filtrar alertas abertos do espaço de nomes do projeto:

Consola

Veja os alertas abertos num projeto a partir da consola do GDC:

  1. Inicie sessão na consola do GDC.
  2. Na consola do GDC, selecione o projeto.
  3. No menu de navegação, selecione Operações > Alertas.
  4. Selecione o separador Alertas.
  5. Veja a lista de alertas.
  6. Na secção Alertas abertos, clique em Filtrar para apresentar apenas alertas abertos. Também pode filtrar alertas por outros nomes ou valores de propriedades.
  7. Clique no nome de um alerta para ver os respetivos detalhes.

Ponto final do Cortex

Esta secção descreve como aceder a alertas através do ponto final do Alertmanager do Cortex.

Identifique o ponto final do Cortex

O seguinte URL é o ponto final da instância do Cortex do seu projeto:

  https://GDC_URL/PROJECT_NAMESPACE/cortex/alertmanager/

Substitua o seguinte:

  • GDC_URL: o URL da sua organização no GDC.
  • PROJECT_NAMESPACE: o espaço de nomes do projeto.

    Por exemplo, o ponto final do Cortex para o projeto platform-obs na org-1 organização é https://org-1/platform-obs/cortex/alertmanager/.

Autentique o pedido curl

  1. Transfira e instale a CLI gdcloud.
  2. Defina a propriedade do gdcloud core/organization_console_url:

    gdcloud config set core/organization_console_url
    https://GDC_URL
    
  3. Inicie sessão com o Fornecedor de identidade configurado:

    gdcloud auth login
    
  4. Use o seu nome de utilizador e palavra-passe para autenticar e iniciar sessão.

    Quando o início de sessão for bem-sucedido, pode usar o cabeçalho de autorização no pedido curl através do comando gdcloud auth print-identity-token. Para mais informações, consulte o artigo gdcloud auth.

Chame o ponto final do Cortex

Conclua os passos seguintes para aceder ao ponto final do Cortex através da ferramenta curl:

  1. Autentique o pedido curl.
  2. Use curl para chamar o ponto final do Cortex e expanda o URL através da especificação da API do Alertmanager padrão (https://prometheus.io/docs/prometheus/latest/querying/api/#alertmanagers) para consultar alertas.

    Segue-se um exemplo de um pedido curl:

      curl https://GDC_URL/PROJECT_NAME/cortex/alertmanager/api/v1/alertmanagers \
      -H "Authorization: Bearer $(gdcloud auth print-identity-token \
      --audiences=https://GDC_URL)"
    

    Recebe a saída após o comando. A resposta da API está no formato JSON.