Help us understand the problem. What is going on with this article?

Prometheus、Grafana、cAdvisorによる監視をコマンド一つで行える「dockprom」

More than 1 year has passed since last update.

本記事は、細かいところを抜きにしてPrometheusやGrafanaが動く様子を見たい人向けです。

監視、可視化ツール

近年、PrometheusやGrafanaなどの監視、可視化ツールが話題です
これらのツールは様々な企業に採用されており、導入を考えている方も多いと思います
しかし、様々なツールを連携させる必要があるので構築は難しいです

例えばPrometheusは起動自体は簡単ですがGrafanaやcAdvisorと連携させる場合、設定項目が多く煩雑です
試しに使ってみたい人にとっては、学習コストが高すぎます

そこで今回紹介するのがdockpromです

dockprom(https://github.com/stefanprodan/dockprom)

dockpromはPrometheusやGrafanaの連携などの煩雑な作業をdocker-composeコマンド一つで行うことができます。

ドキュメントにあるように基本的には、下記コマンドだけで全てが連携されたコンテナ群が生成されます

git clone https://github.com/stefanprodan/dockprom
cd dockprom

ADMIN_USER=admin ADMIN_PASSWORD=admin docker-compose up -d

ただし、masterブランチをそのまま利用する場合docker-compose.ymluserrootにする必要があります

  grafana:
    image: grafana/grafana:5.2.2
    container_name: grafana
    volumes:
      - grafana_data:/var/lib/grafana
      - ./grafana/datasources:/etc/grafana/datasources
      - ./grafana/dashboards:/etc/grafana/dashboards
      - ./grafana/setup.sh:/setup.sh
    entrypoint: /setup.sh
    // 下の一行を追加
    user: root
    environment:
      - GF_SECURITY_ADMIN_USER=${ADMIN_USER:-admin}
      - GF_SECURITY_ADMIN_PASSWORD=${ADMIN_PASSWORD:-admin}
      - GF_USERS_ALLOW_SIGN_UP=false
    restart: unless-stopped
    expose:
      - 3000
    networks:
      - monitor-net
    labels:
      org.label-schema.group: "monitoring"

また起動後のコンテナに入り、パーミッションを変える必要があります

docker exec -it --user root grafana bash

# in the container you just started:
chown -R root:root /etc/grafana && \
chmod -R a+r /etc/grafana && \
chown -R grafana:grafana /var/lib/grafana && \
chown -R grafana:grafana /usr/share/grafana

構築後

いくつかのプリセットが用意されており、Docker Containerの情報などが一目で確認できるようになっています

以下画像は実際に動かしている様子です。CPUやメモリの使用状況、プロセスの数などを簡単に可視化することができました
ここまでで大体10分程度で構築が完了したので、試しに使ってみたい人にとってはdockpromはとても便利なツールだと思います

dockprom.png

kontotto
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away