CentOS 7、EPEL有り、nginxでmuninによるモニタリングをします。muninをインストールするサーバーと監視対象は同一とします。
目次
環境
環境は以下。
- ConoHaのVPS
- CentOS 7(EPEL有り)
- nginx 1.10.2
- muninをインストールするサーバーと監視対象は同一サーバー
- DNS設定済み(ここでは仮にmunin.example.comとする)
手順
muninのインストールから、ページの確認まで。
muninをインストール
muninをインストール。
sudo yum install munin
BASIC認証
muninのページでBASIC認証(パスワードを入力させるダイアログを表示させるアレ)の設定。パスワードファイルは、標準で用意されている/etc/munin/munin-htpasswdを使用する。ここでは、ユーザー名をmunin、パスワードをpassとする。当然このままではセキュアでないので、適宜変更。また、opensslコマンドのオプション-apr1を用いて、MD5による暗号化を行う(デフォルトではcryptによる暗号化で、これは最長8文字…「nginxでBasic認証(パスワードによる認証)」)
echo "munin:$(openssl passwd -apr1 pass)" | sudo tee -a /etc/munin/munin-htpasswd
nginxの設定
/etc/nginx/conf.d/munin.confを作成し、以下を記述する。ただし、ドメインをmunin.example.comとしているので、その部分は適宜変更する。
server {
listen 80;
server_name localhost;
location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}
}
server {
listen 80;
server_name munin.example.com;
access_log /var/log/nginx/munin.example.com.access.log main;
error_log /var/log/nginx/munin.example.com.error.log;
root /var/www/html/munin;
index index.html;
auth_basic "munin";
auth_basic_user_file /etc/munin/munin-htpasswd;
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
文法チェック。
sudo nginx -t
サービスの開始
成功したらnginxをrestartして、munin-nodeをstartする。ついでにenableでサーバー起動時にstartするように。
sudo systemctl restart nginx.service
sudo systemctl start munin-node.service
sudo systemctl enable munin-node.service
5分くらい待って、muninのページにアクセスし、パスワードが求められること、グラフが作成されていることを確認する。
以上。
参考
参考にさせていただきました。ありがとうございました。
コメント