WEBベースのサーバ・機器監視アプリケーションcactiを過去Windows OSを利用したことはあったのですが、今回はQNAP TS-459 Pro+(以下QNAP)にインストールしてみました。
当初QNAPedia Community Wikiに書いてある通りやれば良いと思って深く考えていなかったのですが、実際の作業はWindowsベースの知識しかない人間には結構きついものがありました。
が、なんとか稼働させることは出来ましたので少し整理して記載しておきます。
利用した筐体はTS-459 Pro+ですが、基本的にはどの筐体でも手順は大きく変わらないと思います。
また、QNAPのWEB管理画面やphpMyAdminから実行した方が楽な部分もありますが、基本的にはsshからほとんど設定は可能です。
QNAPのファームウェアバージョンは「3.7.3 Build 20120801」でsshクライアントにはTera Termを利用しています。
Windows OS上で稼働させるとVBスクリプト経由で値が取得出来るので個人的にはWindows版の方が好きではあるのですが、QNAPにインストールするのもお手軽で良いなと思いました。
Cacti 公式
http://www.cacti.net/
Cacti QNAPedia Community Wiki
http://wiki.qnap.com/w/index.php?title=Cacti&setlang=ja#Configure_MySQL_server
[HOWTO] – Install CACTI
http://forum.qnap.com/viewtopic.php?f=32&t=21218
Tera Term
http://sourceforge.jp/projects/ttssh2/
環境準備
SSHでQNAPにログインし、以下のコマンドを使い各ipkgをインストールします。
※以下基本的に注釈が無い場合はsshからの作業です
※一部既に導入しているパッケージがあれば省略しても構いません
※patchコマンドはCactiのpatchを適用する場合に利用するようですが、今回の手順では省略しています。
cactiのインストール
wgetコマンドでCactiをダウンロードします。
※インストールするバージョンは同じである必要はありませんが、バージョンが異なる場合はファイル名が変更になるので、変更になった部分は各自置換してください。
※ダウンロード先はここ(http://www.cacti.net/download_cacti.php)から確認出来ます。
※ダウンロード先は(/root)になります
ダウンロードしたファイルを解凍します。
QNAPのWebディレクトリにCactiというディレクトリを作成します。
先ほど解凍したデータをcactiフォルダに移動します。
アカウント・グループの作成
グループ「cactigrp」を作成し、ユーザ「cacti」を追加します。
※このアカウントおよびグループはQNAPのWEB管理画面からでも作成・確認が可能です
※ユーザ作成時にパスワードを要求されるので、適当に入力しておいてください
Clipboard11
データベースの作成
MYSQL上にデータベースCACTIDBを作成します。
※デフォルトパスワードはadminです
※パスワードがわからない場合はQNAPのWEB管理画面から初期化する事も出来ます
作成したCACTIDBを以下のコマンドで初期化します。
config.phpの編集
‘/share/Web/cacti/include/config.php’ にデータベース接続用の設定を行います。
この設定はQNAPの共有ファイルからメモ帳等で編集するかviコマンド等を利用して編集してください。
Cronの設定
Cronの設定を行います。
※CronはWindowsで言うタスクスケジューラです
QNAPのCronはcrontabコマンドで編集すると再起動時に初期化されてしまうので、以下の方法で設定します。
viで/etc/config/crontabのcrontabを開きます。
crontabに以下の行を追加します。
※viはテキストエディタです。Windowsのテキストエディタとは異なり、通常読み取り専用モードになっています。編集を開始するにはiをタイプしてください。編集後はエスケープキーを押した後:q!で保存しないで終了、:wqで保存して終了です。
以下のコマンドを実行して編集結果をcrontabに反映させます。
crondを再起動し、crontabに変更内容が反映されている事を確認します。
※crontab -lで内容の確認が出来ます
WEBブラウザからの設定手順
ここからはWEBブラウザから設定を行います。
※ブラウザは適当なブラウザでも問題ないと思いますが、自分はInternet Explorer 8を利用しました。
以下のディレクトリにアクセスすると、インストールが開始されます。
メモ
以下のようなエラーが画面上に表示される場合は、config.phpの設定値が間違っていますので、再度config.phpの内容を確認してください。
FATAL: Cannot connect to MySQL server on ‘localhost’. Please make sure you have specified a valid MySQL database name in ‘include/config.php’
New Installを選択し、NextをクリックするとPathsの設定画面に切り替わります。
各設定値は以下の値を利用してください。
※ここで設定を入れなかった場合も、Cactiログイン後、[Configuration]→[Settings]→[Paths]から再設定する事が出来ます
snmpwalk Binary Path
snmpget Binary Path
snmpbulkwalk Binary Path
snmpgetnext Binary Path
RRDTool Binary Path
PHP Binary Path
Cacti Log File Path
※Cacti自体のデバイス読み取り設定はここではいったん割愛します
グラフ生成の確認
5分待ってグラフが作成されるかを確認して、グラフが表示されたら無事インストールは完了です。
※グラフがいつまで経っても表示されない場合は、Cactiの管理画面上から[Turn On Data Source Debug Mode.]を選択し、Data Source Debugにエラーが表示されていないか確認し、エラーが表示されていた場合には内容を修正してください。
今回利用したテンプレート
mysql-cacti-templates
mysqlの値を取得する場合は以下のテンプレートを利用出来ます。
http://code.google.com/p/mysql-cacti-templates/
Multi CPU Utilization Graph
cacti標準のCPUステータスをまとめて一つのグラフに表示出来るテンプレートです。
http://forums.cacti.net/about11615-0-asc-150.html
Scripts and Templates
その他テンプレートやスクリプトを取得するにはフォーラムのScripts and Templatesにアクセスしてください。
http://forums.cacti.net/viewforum.php?f=12
Plugins
http://docs.cacti.net/plugins
おまけ
手動でグラフが作成できるか確認するには以下のコマンドを実行。
RSA SecurIDアプライアンスをCactiで監視する場合のテンプレート
http://docs.cacti.net/usertemplate:host:rsa:securid
QNAP TS-459 Pro+用テンプレート
QNAPのステータスを取得出来るプラグインが公開されていたのですが上手く動作させることが出来なかったのでそれベースに作ってみました。
※現在HDD利用領域がザックリとしか取得出来ていないので、そのうち修正してアップロードしておきます。