O que é o Prometheus?
O Prometheus é uma ferramenta de monitoramento de métricas e indicadores de aplicações e serviços.
Segundo a descrição no Github do Prometheus:
"Ele coleta as métricas dos pontos configurados em intervalos dados, avalia expressões das regras, exibe os resultados e também pode acionar alertas quando as condições especificadas são observadas como verdadeiras."
Para saber mais sobre o projeto, acesse o site oficial do Prometheus.
Como monitorar o Prometheus utilizando o Metricbeat?
Para começar esse lab, você precisará ter um ambiente com o Prometheus e outro ambiente com o Elasticsearch e com o Kibana configurados.
Assim que você tiver esses pré requisitos, poderá começar a seguir os passos abaixo para configurar o Metricbeat para coletar os dados do Prometheus.
Para instalar o Metricbeat no host do Prometheus, siga os passos descritos abaixo.
Faça o download do Metricbeat nesse link.
Instale o Metricbeat:
Windows:PowerShell.exe -ExecutionPolicy UnRestricted -File .\install-service-metricbeat.ps1
Linux:sudo rpm -vi metricbeat-7.10.1-x86_64.rpm
Acesse o arquivo de configuração do Metricbeat:
Windows:C:\Program Files\Metricbeat\metricbeat.yml
Linux:/etc/metricbeat/metricbeat.yml
Insira nele as informações de conexão com o Elasticsearch e com o Kibana.
output.elasticsearch:
hosts: ["url_do_elasticsearch:9200"]
setup.kibana:
host: ["url_do_kibana:5601"]
- Se você estiver usando o Metricbeat OSS insira as seguintes configurações no fim do arquivo metricbeat.yml.
setup.ilm.enabled: false
setup.pack.security.enabled: false
setup.xpack.graph.enabled: false
setup.xpack.watcher.enabled: false
setup.xpack.monitoring.enabled: false
setup.xpack.reporting.enabled: false
Habilite e configure o módulo do Prometheus:
Windows:.\metricbeat.exe modules enable prometheus
Linux:sudo metricbeat modules enable prometheus
Para modificar as configurações do módulo, altere o arquivo prometheus.yml:
Windows:modules.d/prometheus.yml
Linux:/etc/metricbeat/modules.d/prometheus.yml
Por padrão, o arquivo vem assim:
# Module: prometheus
# Docs: https://www.elastic.co/guide/en/beats/metricbeat/7.8/metricbeat-module-prometheus.html
# Metrics collected from a Prometheus endpoint
- module: prometheus
period: 10s
metricsets: ["collector"]
hosts: ["localhost:9090"]
metrics_path: /metrics
#metrics_filters:
# include: []
# exclude: []
#username: "user"
#password: "secret"
# This can be used for service account based authorization:
#bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
#ssl.certificate_authorities:
# - /var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt
# Metrics sent by a Prometheus server using remote_write option
#- module: prometheus
# metricsets: ["remote_write"]
# host: "localhost"
# port: "9201"
# Secure settings for the server using TLS/SSL:
#ssl.certificate: "/etc/pki/server/cert.pem"
#ssl.key: "/etc/pki/server/cert.key"
# Metrics that will be collected using a PromQL
#- module: prometheus
# metricsets: ["query"]
# hosts: ["localhost:9090"]
# period: 10s
# queries:
# - name: "instant_vector"
# path: "/api/v1/query"
# params:
# query: "sum(rate(prometheus_http_requests_total[1m]))"
# - name: "range_vector"
# path: "/api/v1/query_range"
# params:
# query: "up"
# start: "2019-12-20T00:00:00.000Z"
# end: "2019-12-21T00:00:00.000Z"
# step: 1h
# - name: "scalar"
# path: "/api/v1/query"
# params:
# query: "100"
# - name: "string"
# path: "/api/v1/query"
# params:
# query: "some_value"
Carregue os dashboards do módulo:
Windows:.\metricbeat.exe setup
Linux:sudo metricbeat setup
Inicie o serviço do Metricbeat:
Windows:Start-Service metricbeat
Linux:sudo service metricbeat start
Depois disso, você conseguirá ver os logs do seu ambiente no discover, além de ter dashboards com informações e métricas do estado do seu Prometheus.
Top comments (0)