サーバー監視 · 1 min read · Oct 21, 2025

Ubuntu 14.04 LTSでのMuninとMonitによるサーバー監視

このチュートリアルでは、Ubuntu 14.04サーバーをMuninとMonitで監視する方法を示します。Muninはサーバーのほぼすべての側面に関する素晴らしいグラフを生成し、MonitはApache、MySQL、Postfixなどのサービスの可用性をチェックし、サービスが期待通りに動作していない場合は再起動などの適切なアクションを取ります。この2つの組み合わせにより、現在または今後の問題を認識できるグラフィックと、監視されたサービスの可用性を確保する監視役が得られます。このチュートリアルには、ISPConfigにMuninとMonitを統合するための2つの(オプションの)章が含まれています。

1 前提条件

私たちのシステムのホスト名はserver1.example.comで、ドキュメントルートが/var/www/www.example.com/webのウェブサイトwww.example.comがあります。

以下の手順はrootユーザーとして実行する必要があります。サーバーでrootユーザーになるには、次のコマンドを実行します:

sudo su

Muninをインストールする前に、システムが最新であることを確認するために、次のコマンドを実行します:

apt-get update  
apt-get upgrade

ApacheはMuninページを表示するために使用され、apache fcgidモジュールはMuninグラフのズーム機能に必要です。aptを使用してapacheとlibapache2-mod-fcgidモジュールをインストールします。

apt-get install apache2 libcgi-fast-perl libapache2-mod-fcgid

apacheでfcgidモジュールを有効にします。

a2enmod fcgid

2 Muninのインストールと設定

Ubuntu 14.04にMuninをインストールするには、以下のコマンドを実行します:

apt-get install munin munin-node munin-plugins-extra

サーバーがMySQLまたはMariaDBを実行している場合は、MySQLを監視するためにいくつかの追加のMuninプラグインを有効にします:

cd /etc/munin/plugins  
ln -s /usr/share/munin/plugins/mysql_ mysql_  
ln -s /usr/share/munin/plugins/mysql_bytes mysql_bytes  
ln -s /usr/share/munin/plugins/mysql_queries mysql_queries  
ln -s /usr/share/munin/plugins/mysql_slowqueries mysql_slowqueries  
ln -s /usr/share/munin/plugins/mysql_threads mysql_threads

次に、Munin設定ファイル/etc/munin/munin.confを編集する必要があります。dbdir、htmldir、logdir、rundir、およびtmpldirの行のコメントを外します(デフォルト値は問題ありません)。HTML出力でlocalhost.localdomainの代わりにserver1.example.comを使用するようにしたいので、シンプルホストツリーセクションでlocalhost.localdomainをserver1.example.comに置き換えます。コメントを外した後、変更されたファイルは次のようになります:

nano /etc/munin/munin.conf
# Muninのための例の設定ファイル、'make build'によって生成されました  
  
# 次の3つの変数は、RRDデータベース、HTML出力、ログ、およびロック/pidファイルの場所を指定します。すべて  
# munin-cronを実行しているユーザーが書き込み可能でなければなりません。すべて  
# ここに表示されている値にデフォルト設定されています。  
#  
dbdir /var/lib/munin  
htmldir /var/cache/munin/www  
logdir /var/log/munin  
rundir /var/run/munin  
  
# HTMLテンプレートを探す場所  
#  
tmpldir /etc/munin/templates  
  
# 静的wwwファイルを探す場所  
#  
#staticdir /etc/munin/static  
  
# 一時的なcgiファイルはここにあります。cgiユーザー(通常はnobodyまたはhttpd)が書き込み可能である必要があります。  
#  
# cgitmpdir /var/lib/munin/cgi-tmp

# (正確に1つ)すべてのファイルを含めるディレクトリ。
includedir /etc/munin/munin-conf.d  
[...]  
# シンプルなホストツリー  
[server1.example.com]  
 address 127.0.0.1  
 use_node_name yes  
[...]  

MuninのためのApache設定ファイル/etc/munin/apache.confを見つける必要があります - これは、muninのHTML出力ディレクトリ/var/cache/munin/wwwにmuninというエイリアスを定義しており、これによりこのサーバー上のすべてのウェブサイトから相対パス/muninを使用してmuninにアクセスできます(例:http://www.example.com/munin)。

Ubuntu 14.04に付属するapache.confファイルは、apache 2.4には正しくない古いapache 2.2構文を含んでいるため、そのファイルを新しいものに置き換えます。まず、古いファイルのバックアップを作成します。

mv /etc/munin/apache.conf /etc/munin/apache.conf_bak

新しいファイルをエディタで開きます:

nano /etc/munin/apache.conf

以下の内容を貼り付けます:

Alias /munin /var/cache/munin/www  
  
 # Require local  
 Require all granted  
 Options FollowSymLinks SymLinksIfOwnerMatch  
 Options None  
  
  
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph  
  
 # Require local  
 Require all granted  
 Options FollowSymLinks SymLinksIfOwnerMatch  
   
 SetHandler fcgid-script  
   
   
 SetHandler cgi-script  
   

Apacheを再起動します:

service apache2 restart

次にMuninを再起動します:

service munin-node restart

数分待ってMuninが最初の出力を生成できるようにし、ブラウザでhttp://www.example.com/munin/にアクセスすると、最初の統計が表示されます:

Ubuntu 14.04のMunin

(これはmuninが生成する多くのグラフィックのほんの一部です…)

3 Munin出力ディレクトリのパスワード保護(オプションですが強く推奨)

すべての人がサーバーに関するすべての小さな統計を見られるようにしたくない場合は、munin出力ディレクトリをパスワード保護することが良いアイデアです。

これを行うには、パスワードファイル/etc/munin/munin-htpasswdを作成する必要があります。ユーザー名adminでログインしたいので、次のようにします:

htpasswd -c /etc/munin/munin-htpasswd admin

adminのパスワードを入力します。次に、再度/etc/munin/apache.confを開きます…

nano /etc/munin/apache.conf

… “Require all granted”の行をコメントアウトし、私が赤でマークした行を追加します:

Alias /munin /var/cache/munin/www  
  
 # Require local  
 # Require all granted  
 AuthUserFile /etc/munin/munin-htpasswd  
 AuthName "Munin"  
 AuthType Basic  
 Require valid-user  
 Options None  
  
  
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph  
  
 # Require local  
 # Require all granted  
 AuthUserFile /etc/munin/munin-htpasswd  
 AuthName "Munin"  
 AuthType Basic  
 Require valid-user  
   
 SetHandler fcgid-script  
   
   
 SetHandler cgi-script  
   

次にApacheを再起動します:

service apache2 restart

4 Muninでの追加モジュールの有効化

Muninコマンド”munin-node-configure –suggest”を使用して、サーバーで有効にできる追加のMuninモジュールの推奨を取得できます。実行します:

munin-node-configure --suggest

出力は次のようになります:

Munin Suggestの使用

“used”列はモジュールが有効かどうかを示し、”Suggestions”列はサーバーがこのモジュールで監視できるサービスを実行しているかどうかを示します。モジュールを有効にするために、/etc/munin/pluginsにシンボリックリンクを作成します。

ここでは、apache_*モジュールを有効にします:

cd /etc/munin/plugins  
ln -s /usr/share/munin/plugins/apache_accesses  
ln -s /usr/share/munin/plugins/apache_processes  
ln -s /usr/share/munin/plugins/apache_volume

新しい設定を読み込むためにMuninを再起動します。

service munin-node restart

5 ISPConfigでのMuninの設定(オプション)

ISPConfigホスティングコントロールパネルには、ISPConfigモニターモジュール内でMuninデータを表示するオプションがあります。Muninデータはiframe内に読み込まれます。ほとんどのブラウザは、httpsサイト内でhttpから読み込まれるコンテンツをブロックするため、SSL経由でMunin統計にアクセスする方法を見つける必要があります。最も簡単な方法は、ISPConfigのSSL対応vhostを使用して、Munin wwwデータディレクトリへのシンボリックリンクをISPConfigのウェブディレクトリ内に作成することです。

ln -s /var/cache/munin/www /usr/local/ispconfig/interface/web/munin

これで、ISPConfigのapache vhostを通じてブラウザでhttps://server1.example.com:8080/muninにアクセスできます。

次のステップは、ISPConfigに設定を追加することです。

ISPConfigに管理者(admin)ユーザーとしてログインし、システム > サーバー設定に移動し、以下のようにMuninのURL、ユーザー名、パスワードを入力します。

ISPConfig Munin設定

Munin URLにはhttps://とポート8080を使用していることを確認してください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。