How to monitor mongodb replica set using prometheu

How to monitor mongodb replica set using prometheus

How to monitor mongodb replica set using prometheu
监控mongodb replica set其实有很多方式:

  • Using zabbix template to view mongodb data(zabbix+grafana)
  • Mongodb官方自己的,不过现在收费了
  • Prometheus通过mongodb-exporter收集数据,然后使用Grafana展示数据(prometheus+grafana)
  • etc...

Install prometheus

simple configure file

➜  prometheus-2.3.1.linux-amd64 cat prometheus.yml|awk '{if($0 !~ /^$/ && $0 !~ /^#/) {print $0}}'
global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).
alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: 'prometheus'
    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.
    static_configs:
    - targets: ['localhost:9090']
  - job_name: 'node-exporter'
    static_configs:
    - targets: ['localhost:9100']
  - job_name: 'mongodb-exporter'
    static_configs:
    - targets: ['localhost:9001']

Install Node-exporter

Install mongodb-exporter

run mongodb-exporter

➜  prometheus ./mongodb_exporter -mongodb.uri mongodb://192.168.152.128:27017,192.168.152.128:27018,192.168.152.128:27019
Listening on :9001 (scheme=HTTP, secured=no, clientValidation=no)

you also can run the multi MongoDB-exporter process to get the metrics of simple MongoDB instance. if so. you should add multi job_name in prometheus.yml. you can monitor every simple MongoDB instance details in grafana by setting dashboard variables.

Insatll Grafana

Configure DashBoard

猜你喜欢

转载自blog.51cto.com/bkmaster/2138711