Public | Automated Build

Last pushed: 2 years ago
Short Description
Monitoring for Nagios + Ganglia
Full Description

docker-monitor

データベースを使わない監視環境をさくっと立ち上げられるように
作成したコンテナです。

なぜ「データベースを使わない」を選択したかというと、設定するときは
コンテナで確かめるのでそもそも不要なのでは?と思ったのが経緯です。

使用しているものは、Nagios と Ganglia です。
(実際、Zabbixだと設定めんどくさいので)

事前準備

ホストにボリュームを持たせる場合は、以下ディレクトリを作成することを推奨します。
もちろん、ボリュームは --link-conrainer でおこなっても構いません。

#!/bin/bash
NAME=mymonitor
# useradd -u 48 -r -c "Apache" -d /var/www -s /sbin/nologin apache
# useradd -u 117 -r -c "Ganglia Monitoring System" -d /var/lib/ganglia -s /sbin/nologin ganglia
# useradd -u 119 -r -c "Nagios Monitoring System" -d /var/spool/nagios -s /sbin/nologin nagios
mkdir -p /var/www/monitor/${NAME}/{archives,rw,spool,spool/checkresults}
chown 117:117 /var/www/monitor/${NAME} /var/www/monitor/${NAME}/{archives,rw,spool,spool/checkresults}
chmod 750 /var/www/monitor/${NAME}/ /var/www/monitor/${NAME}/{archives,rw,spool,spool/checkresults}
mkdir -p /var/www/monitor/${NAME}/{conf,rrds,dwoo,dwoo/cache,dwoo/compiled}
chown 48:48 /var/www/monitor/${NAME}/{conf,dwoo,dwoo/cache,dwoo/compiled}
chown 119:119 /var/www/monitor/${NAME}/rrds

使用方法

docker-compose(fig) の場合

docker-compose の場合、以下のように使用しています。

monitor:
  image : miko2u/monitor
  hostname: mymonitor
  stdin_open: true
  tty: true
  ports:
    - 9808:80
  volumes:
    - /var/www/monitor/mymonitor:/var/lib/ganglia
    - /var/www/monitor/mymonitor:/var/log/nagios

環境設定

REDIS

外部の REDIS を使用する場合、trueを設定します。
デフォルトは falseです。

ただし、使用できない場合はセッションのために内部のredisを使用します。

REDIS_PORT_6379_TCP, REDIS_PORT_6379_TCP_ADDR

外部の REDIS を使用する場合、IPアドレス等を使用します。
リンクコンテナ用ですが、変数を合わせることもできます。

デフォルトは、tcp://172.17.42.1:6379になります。

MONITOR_PASSWORD

アクセスするための Basic 認証を設定します。(ユーザー名はnagiosadmin)

デフォルトは非公開です。

ADMIN_EMAIL

通知のための管理者メールアドレスを指定します。

デフォルトは root@localhost.localdomain になります。

MAILHUB

メールを送信するときの中継アドレスを指定します。
コンテナ内部には MTA を立てていませんので、必須になります。

デフォルトは172.17.42.1になります。これは、ホストのIPアドレスになります。
iptables を使用している場合は、 docker0 ブリッジをコンテナから見えるようにしてください。

注意点

監視するときのIPアドレスは当然dockerによってNATされますので、
各監視エージェント(gmond, nrpe等)から見えるIPアドレスにご注意ください。

Docker Pull Command
Owner
miko2u
Source Repository