Prometheus + Grafana + Elasticsearch + Kibana を Docker でいじり中
いじってます。
進捗
docker-compose.yml
はこんな感じ
version: '3' services: prometheus: image: prom/prometheus container_name: prometheus volumes: - .\prometheus.yml:/var/app/prometheus/prometheus.yml command: - '--config.file=/var/app/prometheus/prometheus.yml' ports: - 9090:9090 depends_on: - elasticsearch_exporter links: - elasticsearch_exporter grafana: image: grafana/grafana container_name: grafana ports: - 3000:3000 env_file: - /prom/grafana.env elasticsearch_exporter: image: justwatch/elasticsearch_exporter:1.0.2 command: - '-es.uri=http://elasticsearch:9200' restart: always ports: - 9108:9108 depends_on: - elasticsearch links: - elasticsearch elasticsearch: image: elasticsearch ports: - 9200:9200 kibana: image: kibana ports: - 5601:5601 depends_on: - elasticsearch
prometheus.yml
global: scrape_interval: 15s evaluation_interval: 15s external_labels: monitor: 'codelab-monitor' rule_files: # - "/var/app/prometheus/alert.rules" scrape_configs: - job_name: 'prometheus' static_configs: - targets: - '127.0.0.1:9090' - job_name: 'elasticsearch-exporter' static_configs: - targets: - 'elasticsearch_exporter:9108'
Prometheus + Grafana を Mac 上で docker-compose で起動 - Qiita
上記の記事をベースに、Elasticsearch + Kibana を追加して、Elasticsearch 用の Exporter も入れました。
Docker でのアドレス解決がわからなかったので、そこはこちらを読みながらなるほどー、と書いてみました。
Windows でやったので、一部ファイルがおかしいかも…
メトリクス周りを前から調べていて、Graphite や Influx、Mackerel もさわったし、はやりの Prometheus もやってみよう、という感じ。
去年の 2.0 出たときにいじりたかったけど、まぁほかに触るものがあれやこれやそれやあり遅れました。
Elasticsearch で GC に関連した値もとれるってのが個人的には気になってます。exporter よいなー。
一方で、いろいろ手広くやりすぎててまずいです。*1
ここのところ毎年いってるけど来年度は絞る。
*1:僕のせいだけではない