O Managed Service for Prometheus coleta métricas no nível do sistema operacional de hosts Linux ou Windows do Elastic Compute Service (ECS) usando o node_exporter. O service também obtém dados de monitoramento de processos com o process_exporter e recupera métricas personalizadas gravadas em arquivos por meio do textfile collector.
Pré-requisitos
O Managed Service for Prometheus está ativado. Instance billing.
O Managed Service for Prometheus está ativado. Instance billing.
Uma instância ECS foi criada. Crie e gerencie uma instância ECS usando o console do ECS (versão express).
O Resource Center está ativado. Ative o Resource Center.
Benefícios do monitoramento de hosts
O monitoramento de hosts oferece uma solução automatizada de observabilidade para instâncias ECS da Alibaba Cloud, abrangendo descoberta de hosts, instalação de agentes, coleta de métricas e alertas.
Há suporte para instâncias ECS da Alibaba Cloud, servidores locais autogerenciados e servidores de cloud de terceiros. Para instâncias ECS, o service instala automaticamente os exporters e gera configurações de coleta. Um agente gerenciado do Prometheus cuida da coleta, armazenamento, visualização e alerta de métricas. Em hosts fora da Alibaba Cloud sem suporte a descoberta automática, instale manualmente o agente da Alibaba Cloud para enviar os dados.
Benefício | Descrição |
Descoberta de hosts quase em tempo real |
|
Instalação de agente quase em tempo real |
|
Coleta de métricas quase em tempo real |
Um host é integrado entre 30 e 60 segundos após a criação. Os intervalos de coleta são ajustáveis de 1 a 60 segundos. |
Agente serverless |
|
Rótulos de métricas inteligentes |
|
Coleta e armazenamento de dados em larga escala |
|
Dados completos de monitoramento upstream e downstream |
|
Monitoramento no nível de processo |
|
Painéis Grafana de nível especialista incluídos por padrão |
|
Etapa 1: Integrar dados de monitoramento de hosts
Faça logon no console do ARMS. No painel de navegação à esquerda, clique em Integration Center.
-
Na página Integration Center, clique em Infrastructure no painel de navegação à esquerda e, em seguida, clique em Host Monitoring.
NotaO Managed Service for Prometheus usa o Resource Center para descobrir VPCs e instâncias ECS. Caso o Resource Center não esteja ativado, o processo de integração orientará você a ativá-lo. Ative o Resource Center.
A ativação do Resource Center é uma operação assíncrona. Se o status não for atualizado, aguarde de 10 a 20 segundos e clique em Redetect.
-
No painel exibido, selecione a VPC de destino e configure as Configuration Information conforme descrito na tabela a seguir.
Parâmetro
Descrição
Policy name
Opcional. Nome para esta integração.
Notes
Este recurso coleta métricas sem agente para ECS a partir do Cloud Monitor. Também é possível instalar exporters, como Node-Exporter, Process-Exporter ou Windows-Exporter, para coletar métricas de agente de host.
A instalação de um agente em um host de ambiente de produção é considerada uma alteração de produção. Envie uma solicitação de alteração de acordo com os padrões da sua organização.
Se o acesso entre regiões estiver ativado, não será possível usar um agente para coletar métricas de nó, processo ou Windows.
Atualmente, não há suporte para instalação de exporter no LifseaOS. Instâncias que executam LifseaOS são ignoradas automaticamente.
Uso de recursos: O agente é executado como um service systemd com GOMAXPROCS=1, limite de CPU de 30% e limite de memória de 256 MB. O uso de recursos é baixo em condições normais. A sobrecarga de coleta aumenta conforme o número de processos no host.
Aviso de risco: Ativar o recurso Collect Process PSS Memory Metrics faz com que o arquivo smaps de cada processo seja lido, mantendo brevemente o mmap_lock. Isso pode introduzir falhas de latência em processos que usam grandes quantidades de memória ou realizam operações mmap frequentes. Se você não precisar de métricas de Proportional Set Size (PSS), desative este recurso.
Node-exporter installation mode
Automatic Installation (Recommended): Instala o node-exporter nas instâncias ECS selecionadas automaticamente. Nenhuma etapa manual é necessária.
Self-installation: Instale o node-exporter por conta própria.
Host discovery mode
Stain label selection: Mecanismo de lista de bloqueios. Instâncias com rótulos correspondentes são excluídas. Por padrão, os nós do service de monitoramento de contêineres não são coletados.
Unconditional: Instala exporters e coleta métricas de monitoramento de todos os hosts ECS na VPC atual.
Tag selection: Mecanismo de lista de permissões. Apenas instâncias com tags correspondentes são integradas.
IP CIDR selection: Integra instâncias cujo IP esteja dentro do bloco CIDR especificado. Insira o bloco CIDR da VPC para selecionar todas as instâncias nela contidas.
Instance ID: Especifique IDs de instância separados por vírgulas (,).
ECS stain label
Cada stain label é um par chave-valor. É possível definir vários rótulos.
Collect TextFile
Define se as métricas do Prometheus devem ser coletadas de um arquivo especificado.
Collect process status metrics
Coleta dados de monitoramento de processos por padrão.
Collect Process PSS Memory Metrics
Quando ativado, lê o arquivo
smapsde cada processo para coletar PSS (memória residente proporcional ao conjunto) e métricas relacionadas.Node-Exporter Service Port
A porta padrão é 9100. Se tanto o arms-prometheus quanto o ack-prometheus-operator estiverem instalados no mesmo cluster ACK, ambos os conjuntos de node-exporter usarão a porta 9100 por padrão, o que pode causar conflito de porta e resultar em erros de service.
Metric scrape interval (seconds)
Intervalo de coleta. Padrão: 15 segundos.
Automatically configure security groups
Ativado por padrão.
Custom ECS tag injection
Especifique uma chave de tag ECS. O sistema injeta o par chave-valor da tag nas métricas do Prometheus como rótulos.
Clique em OK. Aguarde de 1 a 2 minutos para que a integração seja concluída.
Se nenhum dado aparecer no painel após a integração, verifique se as regras de entrada do grupo de segurança do ECS permitem que os blocos CIDR 100.64.0.0/10 e 192.168.0.0/18 acessem as portas 9100 e 9256 (portas padrão para node-exporter e process-exporter). Visualize as regras do grupo de segurança. Caso utilize portas diferentes, ajuste as regras adequadamente.
Solucionar conflitos de porta do node-exporter
Quando o arms-prometheus e o ack-prometheus-operator são implantados no mesmo cluster ACK, seus respectivos DaemonSets do node-exporter competem pela hostPort 9100. Isso impede que um dos conjuntos de pods do node-exporter seja iniciado. Para resolver esse problema, altere a porta de um dos DaemonSets do node-exporter para 9101.
-
Execute os comandos a seguir para confirmar quais pods do node-exporter do DaemonSet falharam no agendamento:
kubectl get pods -A | grep node-exporter kubectl describe pod <pod-name> -n <namespace> -
Edite o DaemonSet em conflito:
kubectl edit daemonset <daemonset-name> -n <namespace> -
No YAML do DaemonSet, localize o argumento
--secure-listen-addresse altere a porta de9100para9101. Atualize também os valores decontainerPortehostPortpara9101:args: - --secure-listen-address=0.0.0.0:9101 ... ports: - containerPort: 9101 hostPort: 9101 name: https -
Salve e saia. Verifique se os pods do node-exporter reiniciaram e estão sendo executados na nova porta.
NotaSe o componente foi instalado originalmente usando Helm, um
helm upgradesubsequente pode sobrescrever suas alterações. Antes de atualizar, faça backup da configuração modificada ou fixe a versão do chart.
Configurar um ServiceMonitor para monitoramento personalizado
Após resolver o conflito de porta, configure um ServiceMonitor no console do ARMS para coletar métricas da instância do node-exporter na nova porta.
Faça logon no console do ARMS.
No painel de navegação à esquerda, escolha Prometheus Monitoring > Service Discovery.
Clique em Create ServiceMonitor. No painel de criação, selecione YAML Mode.
-
Insira uma configuração de ServiceMonitor que tenha como alvo seu service node-exporter na porta 9101. Veja um exemplo abaixo:
apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: name: node-exporter-custom namespace: <namespace> spec: endpoints: - port: https interval: 15s scheme: https tlsConfig: insecureSkipVerify: true namespaceSelector: matchNames: - <namespace> selector: matchLabels: app.kubernetes.io/name: node-exporterSubstitua
<namespace>pelo namespace onde seu node-exporter está implantado. Clique em OK. O ServiceMonitor entra em vigor em alguns minutos.
Etapa 2: Visualizar painéis de monitoramento
Faça logon no console do ARMS.
No painel de navegação à esquerda, clique em Integration Management.
Na página Integration Management, clique na aba Integrated Environments e selecione ECS Environment.
Na lista ECS Environment, clique no nome do ambiente de destino para abrir sua página de detalhes.
Na aba Component Management, na seção Addon Type, clique em Dashboard para visualizar os painéis integrados do Grafana.
Etapa 3: Configurar alertas
Faça logon no console do Managed Service for Prometheus. No painel de navegação à esquerda, clique em Integration Management.
Na página Integration Management, clique na aba Integrated Environments e selecione ECS Environment.
Na lista ECS Environment, clique no nome do ambiente de destino para abrir sua página de detalhes.
Na aba Component Management, na seção Addon Type, clique em Alarm Rules para visualizar as regras de alerta integradas.
As regras de alerta integradas geram eventos, mas não enviam notificações. Para enviar notificações, clique em Edit e configure um método de notificação. Também é possível personalizar limiares, duração e conteúdo. Crie uma regra de alerta do Prometheus.
No Simple Mode, defina os destinatários da notificação, o período de notificação e a política de repetição.
Exemplos de painéis Grafana
Painel ECS Overview

Painel ECS Detail
