Muninのインストールと設定方法

Contents


Munin 概要

MuninはAgent型のパフォーマンス収集ツールです。ZappixやNagiosに比べるとアラート通知機能は貧弱ですが、設定が非常に簡単である事が最大のメリットです。

監視ツールとしては貧弱ですが、キャパシティプランニングだけならばMuninのみで充分です。また、監視が必要な環境でしたら他の統合監視ツールと組み合わせる事で手間を大きく削減できると思います。サーバ台数が多く運用工数削減が叫ばれるような環境では、非常にお勧めできるソフトウェアです。

huginn_muninn_001

Munin Masterのインストール

監視ツールは監視を行うサーバと監視されるサーバが存在し、サーバ、クライアント、エージェントなど呼び名はツールによって異なります。 Muninの場合は監視すサーバをMunin Masterと呼び、監視されるサーバをMunin nodeと呼びます。まずは、監視する側であるMunin Masterのインストール方法について説明します。

Munin Master インストール 方法 [必須]

Muninはepelリポジトリに配置されています。以下の方法で、epelリポジトリを登録して下さい。

yumコマンドを用いてMunin Masterをインストールします。このコマンドによって、インストールされるパッケージは、munin、munin-node、munin-commonの3つです。muninというパッケージがMunin Masterの事を指します。

apacheがインストールされていない場合は、以下のコマンドでapacheをインストールします。MuninはApacheによって表示されます。

 Munin Master ディレクトリ構成の変更 [任意]

/etc/munin/munin.confを表示しディレクトリ構成を把握します。2011年頃は、ディレクトリの明示指定が必要であったり、バージョン変更のためにディレクトリ構成が変わったり、何かと面倒でした。しかし、2014年頃では、muninの仕様変更も少なくなり、特にディレクトリの設定を行わなくても(コメントアウトの削除も必要ございません)動作させる事ができます。

古いバージョンのmuninをメンテナンスしなければならない人やnginxでMuninを表示したい人は、ディレクトリ構成を変更しなければなりません。そのような方のために、Muninのディレクトリの意味をまとめました。Muninが使用するディレクトリは以下のようになります。

directoryデフォルト設定説明
dbdir/var/lib/munin集計結果のデータ(RRD database)が格納されます
htmldir/var/www/html/munin集計結果を閲覧するためのHTMLが格納されます
logdir/var/log/muninmuninの動作に関するログが格納されます
rundir/var/run/munin二重起動を防ぐためのpidファイルが格納されます

 Munin Apache 設定 [必須]

Munin Masterをインストールすると、Muninを閲覧するためのApache設定を自動的におこなってくれます。Munin Masterのインストールと同時に、/etc/httpd/conf.d/munin.confというファイルが作成されます。まずは、/etc/httpd/conf.d/munin.confを読んで構成を把握します。

munin.confを読むと、BASIC認証が設定されている事が分かりました。ですので、Muninを閲覧するには、以下のどちらかの方法を必要となります。

  • Munin用にBASIC認証ユーザ/パスワードを設定する
  • MuninのBASIC認証を解除する
Munin Master BASIC認証ユーザ/パスワードの設定

htpasswdコマンドを用いて、BASIC認証のユーザを追加します。ユーザ名、パスワードは環境に応じて適宜変更して下さい。

Munin Master BASIC認証の解除

BAISC認証が必要ないセキュアな環境ならば、BASIC認証を解除しても良いかもしれません。/etc/httpd/conf.d/munin.confのBASIC認証に関する設定を削除するかコメントアウトします。

Munin Master 動作確認

ブラウザに以下URLを入力しmuninの画面が閲覧できる事を確認します。

  • http://<ip_address>/munin/

Muninのブラウズ表示

Munin Nodeのインストール

Muninでは監視されるサーバの事をMunin  nodeと呼びます。以下Munin nodeの設定と監視対象の追加方法について説明します。

Munin Node インストール 方法 [必須]

Muninはepelリポジトリに配置されています。以下の方法で、epelリポジトリを登録して下さい。

yumコマンドを用いてMunin Nodeをインストールします。

Munin Node 起動 [必須]

Munin Nodeは、多くの統合監視ツールで呼ばれる監視エージェントに相当する概念です。常駐プログラムで、このプログラムを起動させる事によって、監視サーバの応答に答えるようになります。以下のようなコマンドでmunin-nodeを起動させます。

Munin Node 接続許可 [必須]

セキュリティ上の理由で、Munin Nodeのデフォルト設定はローカルホストからの接続のみを許可します。このデフォルト設定では、Munin Masterからの監視はできませんので、Munin Masterからの接続を許すよう/etc/munin/munin-node.confを編集します。allow句正規表現で指定し、cidr_allowはサブネットマスクで指定します。設定例は以下の通りです。

munin-nodeを再起動し、設定を反映させます。

Munin MasterとMunin Nodeの間は、tcp 4949を用いて通信を行います。iptablesやファイアウォールの設定を変更し、tcp4949が疎通可能になるようにします。設定方法は環境によって大きく異なると思いますので、ここでは具体的な設定例は示しません。

通信を許可したら、Munin Masterからtelnetコマンドを用いて疎通を確認します。

Munin Master 監視対象の定義 [必須]

Munin Masterで監視対象を定義するファイルは、/etc/munin/munin.confです。

監視台数が増えてきたらカテゴリ分けし、見やすくする事もできます。[category:hostname]という書式でカテゴリ分けができます。設定例は以下の通りです。

Munin Pluginの設定

Munin Nodeでは、監視項目の事をPlugin (プラグイン) と呼びます。CPU、メモリなどのOSに関わる監視項目は自動的に監視されますが、apache、nginxなどは一手間が必要になります。

munin-node-configure –suggest

Munin NodeではPlugin (プラグイン、監視項目)を自動的に設定するツールが備わっています。munin-node-configureに–suggestオプションを渡す事によって、現在有効になっているPluginと有効にならない理由を確認する事ができます。

実行例は以下の通りです。この場合は、server-statusが設定されていないため、apacheの監視が有効にならばい事が分かります。

 Munin Plugin ディレクトリ構成

Munin Pluginの有効/無効を設定できるようになるためには、まずはMunin Pluginのディレクトリ構成を理解する必要があります。Munin Pluginは、/usr/share/munin/plugins/に配置されています。apache, MySQLなどあらゆるPluginが配置されていますが、これら全てが有効になっているわけではありません。

有効になっているMunin Pluginは/etc/munin/plugins/に格納されています。このディレクトリに、Pluginに対するシンボリックリンクを配置し、シンボリックリンクが存在するPluginのみが有効になる仕組みです。

以下のようにシンボリックリンクを作成する事で、Munin Pluginを有効にする事ができます。ただし、以下のようにlnコマンドを手打ちする事は滅多になく、後述のmunin-node-configure –shellコマンドを使用する方法がお勧めです。

 munin-node-configure –shell

munin-node-configure –shellコマンドを使用すると、有効にすべきプラグイン一覧が表示されます。サーバの設定を自動的にチェックし、有効にすべきPluginに対してシンボリックリンク生成コマンドを自動的に生成します。

munin-node-configure –shellをshにパイプで渡す事で、自動的にシンボリックリンクが作成されMunin Pluginが有効になります。

Munin Plugin Apache監視の有効化 [任意]

サーバの設定によっては、デフォルトの状態でApacheの監視画面は表示されません。Apacheの監視画面が表示されない理由を確かめるために、munin-node-configure –suggestを実行します。すると、”apache server-status not found”とのヒントが得られました。

Apache監視が有効にならない理由を確かめるため、プラグインを読んでみましょう。/usr/share/munin/plugins/apache_accessesを読むと、”http://localhost/server-status?auto”へのアクセスを前提としている事が分かります。server-statusとは、Apacheの状態を確認するための画面です。Munin Pluginはこの画面をパースして、Apacheの状態を把握します。

server-statusを有効にするには、/etc/httpd/conf/httpd.confにおいて

  • mod_statusがロードされている事
  • ExtendedStatusが有効になっている事

を確認する必要があります。/etc/httpd/conf/httpd.confに以下2行が設定されている事を確認します。恐らくデフォルト設定では、ExtendedStatusはコメントアウトされている事が多いと思いますので、その場合は、ExtendedStatusのコメントアウトを削除します。

“http://localhost/server-status”というURLでアクセスできるよう、適当なディレクティブを作成します。私ならば、/etc/httpd/conf.d/server_status.confというファイルを以下のように作成します。

apacheをリロードし、”http://localhost/server-status?auto”というアドレスでアクセスできる事を確認します。

munin-node-configure –suggest | sh を使用してプラグインを有効化します。

pluginの変更を反映させるには、munin-nodeのリロードが必要となります。

Munin Plugin Apache監視の有効化 – ポート番号 URL変更が必要となる場合 [任意]

apacheのポート番号として80を使用できない場合やURLが”http://localhost/server-status?auto”にならない場合は、一手間必要となります。

まずはデフォルト設定を把握するために、/usr/share/munin/plugins/apache_accessesを読みます。すると、デフォルト設定が以下のように記載されています。

Munin Pluginの設定を変更するには、/etc/munin/plugin-conf.d/に設定ファイルを作成します。例えば、apacheを8080でListenする場合の設定ならば、/etc/munin/plugin-conf.d/apacheというファイルを以下のように作成します。

Munin Plugin nginx 監視の有効化 [任意]

サーバの設定によっては、デフォルトの状態でNginxの監視画面は表示されません。Nginxの監視画面が表示されない理由を確かめるために、munin-node-configure –suggestを実行します。すると、”no nginx status on http://localhost/nginx_status”とのヒントが得られました。

エラーメッセージの通り、Munin Pluginは”http://localhost/nginx_status”にNginxのステータス画面が表示される事を期待しています。ステータス画面を表示するためには、stub_statusというディレクティブを使用します。私ならば、”/etc/nginx/conf.d/localhost.conf”というファイルを以下のように作成します。

Nginxをリロードし、”http://localhost/nginx_status”というアドレスでアクセスできる事を確認します。

munin-node-configure –suggest | sh を使用してプラグインを有効化します。

pluginの変更を反映させるには、munin-nodeのリロードが必要となります。

Munin Plugin Nginx 監視の有効化 – ポート番号 URL変更が必要となる場合 [任意]

Nginxのポート番号として80を使用できない場合やURLが”http://localhost/nginx_status”にならない場合は、一手間必要となります。

まずはデフォルト設定を把握するために、/usr/share/munin/plugins/nginx_statusを読みます。すると、デフォルト設定が以下のように記載されています。

Munin Pluginの設定を変更するには、/etc/munin/plugin-conf.d/に設定ファイルを作成します。例えば、Nginxを8080でListenする場合の設定ならば、/etc/munin/plugin-conf.d/nginxというファイルを以下のように作成します。

Munin Plugin MySQL監視の有効化 [任意]

デフォルトの状態でMySQLの監視画面は表示されない事もあるかもしれません。これは、MySQL PluginがいくつかのCPANモジュールを前提としているためです。どのようなCPANモジュールの追加インストールが必要になるのかは、サーバの設定に依存しますし、今後のMySQL Pluginのバージョンアップによって変わっていくでしょう。

今現在(2014/06/22)時点で、追加が必要なCPANモジュールはperl-DBD-MySQLとperl-Cache-Cacheです。以下yumコマンドで、CPANモジュールをインストールして下さい。

もし、この2モジュールでMySQLの画面が表示されない場合は、後述の”トラブルシューティング”、”Tips”を参考に必要なモジュールを探してください。

Munin Plugin MySQL監視の有効化 – 接続ユーザの変更 [任意]

MySQL関連のMunin Pluginは、rootユーザ、空パスワードを前提として接続を試みます。もし、rootユーザ、空パスワードによる接続ができない(または認められない)場合は、接続情報の変更が必要となります。接続情報をどのように設定すべきか確かめるため、Munin Pluginである/usr/share/munin/plugins/mysql_を読みます。

Munin Pluginの設定を変更するには、/etc/munin/plugin-conf.d/に設定ファイルを作成します。例えば、ユーザ名munin、パスワードpasswdで接続する場合ならば、/etc/munin/plugin-conf.d/mysqlというファイルを以下のように作成します。

Munin Pluginの自作

Muninはデフォルトである程度のプラグインがインストール済になっています。しかし、デフォルトのプラグインでは要件を満たせない場合もあるかもしれません。そのような場合は、プラグインの自作を検討しても良いかもしれません。

また、Muninのようなプラガブル(plugable)な設計思想のソフトウェアは、プラグインによって品質がまちまちです。github等からダウンロードしたプラグインの中には、製作者の勤務先に特化しすぎて、多くの会社では使い物にならない場合がよくあります。そのような「使い物にならない」プラグインでも、Plugin作成の知識を持っていれば、適宜修正を行なって、再利用できるかもしれません。

Muninに限らず、監視ツールのプラグインはそれほどハードルの高い技術ではないので、覚えておいて損はないでしょう。

Munin Pluginの自作 – 引数

Muninプラグインを作成するには、以下の表のように、autoconfig, config, 引数なしの場合の処理を実装します。

引数説明
autoconf監視を行なうべきかどうかの判定結果を返します。
config監視結果を格納するRRDのデータ型を定義します。
引数なし監視結果を返します。

以下、「ネットワークチェンジニアとして」の総はてなブックマーク数をグラフ化するプラグインを例に挙げて説明します。

Munin Pluginの自作 – autoconf

まずは具体的な処理のイメージを膨らますために、Muninプラグインを手動で実行してみましょう。

autoconfigは、監視を行なうべきかどうかを返す処理です。例えば、PostgreSQLがインストールされていないサーバに対して、PostgreSQLの監視を行なっても意味がありません。

仮想サーバ環境でusers, sensors_という2種類のプラグインに、引数autoconfを与えて実行します。userは”yes”を返すものの、sensors_は”no”を返します。このコマンドを実行したのは、仮想サーバなので”sensors_”で温度や消費電力をグラフ化しても意味ない事を表します。

それでは、引数autoconfを実装してみましょう。WEBサーバを動作しているホストのみ監視するという要件と仮定します。”changineer.info”とホスト名の両方の名前解決を4,5行目で行ないます。両者の名前解決した結果のIPアドレスが一致するならば、WEBサーバが動作しているホストと推測します(7行目)。

このような処理に基づいて、監視をすべきと判断するならば”yes”を標準出力します。監視をしないべきと判断するならば”no”を標準出力します。

先ほど作成したファイルを/usr/share/munin/plugins/bookmarkという名前で保存します。munin-node-configure –suggestコマンドを用いて、プラグインの自動登録を試みます。

しかし、munin-node-configure –suggestコマンドを使用しても、bookmarkというプラグインの表示が見当たりません。これは、family, capabilitiesの処理が漏れているためです。

muninプラグインは、ソースコード内のfamily, capabilitiesというコメント文を読み取り、プラグインがどのような機能を持っているのかを判断します。munin-node-configureを使用したいならば、以下のようにfamily, capabilitiesのコメント追加して下さい。

munin-node-cofigureコマンドでプラグインを登録できる事を確認します。

Munin Pluginの自作 – config

MuninはRRD(round robin database : ラウンドロビンデータベース)にデータを格納します。プラグインに引数 configを与えて実行すると、RRDのデータ型を返すようにして下さい。試しに、usersというプラグインに引数configを与えて実行すると、RRDのデータ型のようなものが返される事が分かります。

RRDデータ型の指定方法は以下のURLを参照ください。

実装例は以下の通りです。

Munin Pluignの自作 – 引数なし

Munin Pluginに引数なしで実行した場合は、監視結果を返します。例えば、usersというプラグインの実行結果ならば、以下の通りです。”監視項目.value”という書式で、監視結果が標準出力されている事が分かります。

実装例は以下の通りです。

Munin Pluginの自作 – 作成例

以上、はてなブックマーク総数を取得するプラグインを作成しました。ソースコード全文は以下の通りです。

監視結果は以下のようになります。

munin_hatebu_001

Munin Plugin 自作の功罪

私個人の意見になりますが、プラグインを自作するのは、良い事とも悪い事とも言えません。「足りない物は作る、無い物は作る」という事に遣り甲斐や格好良さを感じる人も居るかも知れません。

しかし、運用を5年間やってきた私の意見としては、自作プラグインは非常に迷惑な話です。作った本人は良いかもしれませんが、充分な情報を与えられずに引き継がされた立場の人は非常に辛いです。プラグインの自作は極力控えるようにした方が良いかもしれません。

「プラグインは作れるけど敢えて作らない」というのが理想かと思います。プラグイン作成のための知識は、ここ一番のトラブルシューティングの時まで温存しておくのが良いでしょう。

やむを得ずプラグインを作成せざるを得ない場合もあるかと思いますが、そのような場合は1年に1度くらいの割合で、標準的なプラグインがあるかどうか再検討しましょう。自社開発のコードを捨てて、標準的なソフトウェアに乗り換える事で運用の俗人化を排除する事ができます。

トラブルシューティング

HTML生成に関するトラブルシューティング

Munin Masterは常駐型のプログラムではなく、5分に一回実行されるcronです。Muninの画面が生成されるまでには5分かかりますので、HTMLが生成されない場合は、5分, 10分待ってみる事をお勧めします。

しばらく待ってもHTMLが生成されない場合は、HTML生成に関するログを見ます。/var/log/munin/munin-html.logをtailしならが、トラブルの原因を探します。

Munin Masterによって生成されるHTMLは、/var/www/html/munin に格納されます。/var/www/html/munin配下にHTMLファイルが存在するかを確認して下さい。なお、確認する時は、ファイルのパーミッションには十分注意しましょう。

ファイルを見ても、トラブルの原因が推測できない時は、手作業でHTML生成スクリプトを実行する事もできます。Munin Masterに関する定期実行処理は、/etc/cron.d/muninに記載されています。このファイルを読むと、/usr/bin/munin-cronというスクリプトが5分に一回実行されている事が分かります。さらに、/usr/bin/munin-cronを読むと、HTML生成スクリプトは/usr/share/munin/munin-htmlである事が分かります。

HTML生成スクリプト/usr/share/munin/munin-htmlをmuninユーザで実行し、何かエラーが出力されるかを観察します。この時、rootユーザで実行しないよう注意して下さい。rootで実行してしまうと、root権限のファイルができてしまい、muninユーザによる書き込みが以降できなくなってしまう可能性があります。

Node 追加 (監視対象サーバ追加) に関するトラブルシューティング

Munin Masterに関する監視ログは /var/log/munin/munin-update.logに出力されます。munin-update.logをホスト名またはIPアドレスでgrepで絞込みつつ、tail -fで眺めます。

ログ出力の結果によって、大きく分けて以下2つのトラブルに分類する事ができます。

  • ログまったく出力されず、/etc/munin/munin.confでのNode 追加設定誤りが予想される。
  • ログが出力されるが、何らかの理由により接続が拒否されている。

/etc/munin/munin.confの設定誤りの場合は、munin.confの設定をもう一度見直してください。

接続を拒否されている場合は、telnetコマンドを用いてtcp4949に接続可能かどうかを確かめます。以下のように”No route to host”と表示される場合は、tcpによる接続ができない事を意味します。Layer 4以下のネットワーク上の問題で、iptablesやファイアウォールの設定を疑うと良いでしょう。

telnet接続時に、”Escape character is”と表示された後に、”Connection closed by foreign host”と表示された場合は、ネットワーク上の問題ではありません。これは接続した後に切断されている事を意味するので、Munin Nodeの動作である事が予想されます。/etc/munin/munin-node.confのallowやcidr_allowの設定が漏れていると、このような動作になります。

Plugin 有効化 (監視項目追加) に関するトラブルシューティング

“munin-node-configure –suggest”実行時に、Suggestions欄にnoとのみ表示され、何もヒントが得られない事があります。以下、mysql_を例に挙げ、munin-node-configureコマンドでヒントが得られない場合の対応方法について説明します。

munin-node-configureは、各プラグインに引数autoconfを渡して実行した場合の標準出力を整形しているツールになります。従って、 各プラグインがエラーを標準出力しない場合は、作業で実行する事でトラブルシューティングする事ができます。

/usr/share/munin/plugins/mysql_を実行した時のトラブル事例は、以下の通りです。以下の出力の場合では、perlモジュール DBD::mysql がインストールされていない事が推測する事ができます。

Munin 実際の監視画面

このサイト「ネットワークチェンジニアとして」の監視結果を紹介します。実際の画面を見て頂き、muninの雰囲気を感じとって頂ければと思います。

Tips

Munin Plugin MySQL 有効時のトラブル

Missing dependency Cache::Cache

サーバの構成によっては、デフォルト設定でMySQL監視が有効にならない事もあります。munin-node-configure –suggestを実行した結果、”Missing dependency Cache::Cache”とのヒントが表示された場合の対応方法について説明します。

エラーの原因を探るため、MySQL Pluginである/usr/share/munin/plugins/mysql_のソースを読みます。”Missing dependency Cache::Cache”というキーワードで検索しながらソースを読むと、Cache::SharedMemoryCacheというCPANモジュールをrequireできない時に発生するエラーである事が分かります。/usr/share/munin/plugins/mysql_の”Missing dependency Cache::Cache”に関連する処理を抜粋すると以下のようになります。

CPANモジュールperl-Cache-Cacheをインストールする事でエラーを解消できます。

mysql_innodb_io_pend, mysql_innodb_insert_buf

MySQLは設定やバージョンによっては、一部のデータが取得できない可能性があります。/var/log/munin/munin-update.logをよく観察すると、mysql_innodb_io_pend, mysql_innodb_insert_bufのグラフに関する値が取得できていない事が分かります。

念のため、munin-runコマンドも用いて、確かにエラーが出力される事を確認します。

これはSHOW ENGINE INNODB STATUSの出力がMySQLのバージョンによって異なるためです。muninプラグインが、現在お使いのMySQLのバージョンと合わない場合は、プラグインを手作業で修正する必要があります。

まずはMySQLのSHOW ENGINE INNODB STATUSの出力を観察します。

SHOW ENGINE INNODB STATUSの出力に合わせて、/usr/share/munin/plugins/mysql_ を修正します。なお、修正方法は、MySQLの環境によって異なると思いますので、適宜対応をお願いします。

munin-runコマンドを用いて、エラーが解消された事を確認します。

Unknown section: INDIVIDUAL BUFFER POOL INFO

MySQL構成によっては殆どのデータが取得できない事があります。/var/log/munin/munin-update.logをよく観察すると、殆どの監視項目において”no data for label”と表示されているのが分かります。

何が起きているかを確かめるため、munin-runコマンドも用いて手動でデータを取得します。

/etc/munin/plugins/mysql_commandsの1098行目前後を読むと、どうやらSHOW ENGINE INNODB STATUSのパース処理でエラーが出力されている事が読み取れます。

SHOW ENGINE INNODB STATUSの出力を観察すると、”Unknown section: INDIVIDUAL BUFFER POOL INFO”というメッセージの通り、INDIVIDUAL BUFFER POOL INFOというセクションが存在する事が分かります。

munin mysqlプラグインは、innodb buffer poolが複数に分かれる場合に対応していない事が分かりました。この現象を回避するには、INDIVIDUAL BUFFER POOL INFOに関するパース処理をスキップするよう/usr/share/munin/plugins/mysql_を改修します。

munin-runコマンドを実行し、エラーが解消された事を確認します。

XML::SAX::Base.3pm.gz conflicts

epel, rpmforgeの2つのリポジトリを有効にしてしまうと、現時点(2014/06/22)では以下のような依存環境のエラーが発生します。

rpmforgeのperl-XML-SAX-Baseが新しい過ぎるため、依存関係のエラーが発生しています。以下のようにリポジトリをbaseとepelに限定する事で、依存関係を解消する事ができます。

Invalid UTF-8 string passed to pango_layout_set_text()

munin-cronコマンド実行時に以下のようなエラーメッセージが表示される事があります。

これはmunin-plugin内にUTF-8以外の文字が紛れ込んでしまったためです。 以下のファイルの”°”を削除する事で対応可能です。

PHP Parse error: syntax error, unexpected T_STRING

PHPの設定によっては、Parse errorによりブラウズができない事もあります。 ブラウザで白い画面が表示されapache error logに以下のようなPHP Parse errorが出力されている場合は、 php.iniの設定を疑います。

これはshort_open_tagの機能によるものです。 short_open_tagとは、<?php ?>だけでなく、<? ?>もphp tagとして認める機能です。 PHP5ではshort_open_tagはデフォルトで有効になっていますが、 この機能は<?xml version=”1.0″ encoding=”iso-8859-1″?>のようなXML宣言をPHPタグと誤解してしまう難点があります。 muninによって生成されるHTMLはXML宣言を含んでいますので、 /etc/php.iniを以下のように編集しshort_open_tagを無効化させて下さい。

動作確認

動作確認を行った環境は以下の通りです。

  • 動作確認日 : 2015/01/03
  • CentOS 6.6 64bit (Sakura VPS), Redhat 6.5 64bit ( AWS : Amazon Web Service )
  • munin-2.0.25-1
  • munin-node-2.0.25-1

シェアする

  • このエントリーをはてなブックマークに追加

フォローする