Ingerir métricas do Prometheus no workspace - Amazon Managed Service para Prometheus

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Ingerir métricas do Prometheus no workspace

Uma forma de ingerir métricas é usar um agente autônomo do Prometheus (uma instância do Prometheus em execução no modo Agente) para extrair métricas do cluster e encaminhá-las para o Amazon Managed Service for Prometheus para armazenamento e monitoramento. Esta seção explica como configurar a ingestão de métricas no espaço de trabalho do Amazon Managed Service for Prometheus a partir do Amazon EKS configurando uma nova instância do agente do Prometheus usando o Helm.

Para obter informações sobre outras formas de ingerir dados no Amazon Managed Service for Prometheus, incluindo como proteger métricas e criar métricas de alta disponibilidade, consulte Ingira métricas para seu espaço de trabalho do Amazon Managed Service for Prometheus.

nota

As métricas ingeridas em um espaço de trabalho são armazenadas por 150 dias por padrão e, em seguida, excluídas automaticamente. Esse comprimento é uma cota ajustável.

As instruções nesta seção permitem que você comece a usar o Amazon Managed Service for Prometheus rapidamente. Ele pressupõe que você já tenha criado um espaço de trabalho. Nesta seção, você configura um novo servidor Prometheus em um cluster Amazon EKS, e o novo servidor usa uma configuração padrão para atuar como um agente para enviar métricas para o Amazon Managed Service for Prometheus. Este método tem os seguintes pré-requisitos:

  • Você deve ter um cluster Amazon EKS do qual o novo servidor Prometheus coletará métricas.

  • Seu cluster Amazon EKS deve ter um driver CSI do Amazon EBS instalado (exigido pelo Helm).

  • Você deve usar o Helm CLI 3.0 ou posterior.

  • Você deve usar um computador Linux ou macOS para executar as etapas nas seções a seguir.

Etapa 1: Adicionar novos repositórios de charts do Helm

Insira os comandos a seguir para adicionar novos repositórios de charts do Helm. Para obter mais informações sobre esses comandos, consulte o Repositório do Helm.

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts helm repo add kube-state-metrics https://kubernetes.github.io/kube-state-metrics helm repo update

Etapa 2: Criar um namespace do Prometheus

Digite o comando a seguir para criar um namespace do Prometheus para o servidor Prometheus e outros componentes de monitoramento. prometheus-agent-namespaceSubstitua pelo nome que você deseja para esse namespace.

kubectl create namespace prometheus-agent-namespace

Etapa 3: Configurar perfis do IAM para as contas de serviço

Para esse método de ingestão, é necessário usar perfis do IAM para contas de serviço no cluster do Amazon EKS em que o agente do Prometheus está em execução.

Com os perfis do IAM para contas de serviço, é possível associar um perfil do IAM a uma conta de serviço do Kubernetes. Essa conta de serviço pode fornecer permissões da AWS para os contêineres em qualquer pod que use essa conta de serviço. Para obter mais informações, consulte Perfis do IAM para contas de serviço.

Se você ainda não configurou esses perfis, siga as instruções em Configurar perfis de serviço para a ingestão de métricas de clusters do Amazon EKS para configurar os perfis. As instruções nessa seção exigem o uso do eksctl. Para obter mais informações, consulte Conceitos básicos do Amazon Elastic Kubernetes Service – eksctl.

nota

Quando você não está usando o EKS ou AWS está usando apenas a chave de acesso e a chave secreta para acessar o Amazon Managed Service para Prometheus, você não pode usar EKS-IAM-ROLE o SigV4 baseado.

Etapa 4: Configurar o novo servidor e começar a ingerir métricas

Para instalar o novo agente do Prometheus e enviar métricas para o espaço de trabalho do Amazon Managed Service for Prometheus, siga estas etapas.

Como instalar o novo agente do Prometheus e enviar métricas para o espaço de trabalho do Amazon Managed Service for Prometheus
  1. Use um editor de textos para criar um arquivo chamado my_prometheus_values_yaml com o conteúdo a seguir.

    ## The following is a set of default values for prometheus server helm chart which enable remoteWrite to AMP ## For the rest of prometheus helm chart values see: https://github.com/prometheus-community/helm-charts/blob/main/charts/prometheus/values.yaml ## serviceAccounts: server: name: amp-iamproxy-ingest-service-account annotations: eks.amazonaws.com/role-arn: ${IAM_PROXY_PROMETHEUS_ROLE_ARN} server: remoteWrite: - url: https://aps-workspaces.${REGION}.amazonaws.com/workspaces/${WORKSPACE_ID}/api/v1/remote_write sigv4: region: ${REGION} queue_config: max_samples_per_send: 1000 max_shards: 200 capacity: 2500
  2. Insira o comando a seguir para criar o servidor Prometheus.

    • prometheus-chart-nameSubstitua pelo nome de lançamento do Prometheus.

    • prometheus-agent-namespaceSubstitua pelo nome do seu namespace Prometheus.

    helm install prometheus-chart-name prometheus-community/prometheus -n prometheus-agent-namespace \ -f my_prometheus_values_yaml