2013年 03月 09日
SUSE Studio から Zabbix 管理ツールの導入
しかし Zabbix は比較的新しいツールで、ほとんどの設定をブラウザ上から行うことができます。
しかも、日本語での情報はそこそこにまとまって充実していること、また openSUSE 12.2 ベースのライブCDや SUSE Studio から、仮想アプライアンスとして導入できるなど、導入の敷居が低く、1日触っているだけでおおよその使い方がわかってしまうという点では大変使いやすいツールだと思います。 SUSE Studio の存在はヒミツにしておきたいくらいのOSSの仮想アプライアンスの宝庫ですね。
How to setup zabbix4.2 on openSUSE Leap 15.1 セットアップ
反面、 nagios のように「手動で設定」する場面がなく、細かいカスタマイズが自由にできない、MySQL などのRDBを使うため、Zabbix サーバーの負荷が重い(MySQLのパラメータを修正する必要がある)などの欠点もあるようです。その点では「商用版」を使ってカスタマイズできるパートナーから有償サポートを受けてくださいということですね。
Zabbix オフィシャルサービス
資産管理、運用管理ツールには国産品も多くありますが、一般的に申しあげて「国産品は高くて機能が貧弱」なソフトウェアが多いという気がします。これはプログラムのUIの開発などが日本語で行われ、もともと多国語で使われる前提でないこと。ワールドワイドの数十パーセントしかシェアがない中での僅かな利用者。と言った要因で、中々「世界に通用する」情報量や障害報告、事例がない点が不満なのです。少なくとも OSS でもプロパラエタリでも世界で通用するものを作るなら、初めから英語でコーディングしろと言いたくなってしまうのは私だけでしょうか。
Zabbix のアプライアンスは以下のアドレスから入手できます。
Zabbix 2.0 x86
http://susestudio.com/a/MdKfmk/zabbix-2-0-x86
他にも Hyper-V, KVM などの仮想アプライアンスイメージがあるので、それぞれの環境に合わせて面倒なインストールなしですぐに利用できます。
apt-get 呪文... yum 呪文... Zypper 呪文 make 呪文 を知る必要はありません。 XEN や VMware などの仮想環境があれば、そのまま実装して使えるのでまさに Wizard(魔法) のようです。お手軽に試してみるには最高のアプライアンスです。これを使うと私のような未熟な似非 Linux 技術者でも「インストールの解説書」なんて馬鹿らしくて読む気はなくなります。
また SUSE Enterprise (SLES) 用パッケージはこちらから YaST の 1 Click インストールで導入できます。
http://software.opensuse.org/package/zabbix
-Zabbixアプライアンスの実装-
アプライアンスをダウンロードしたら、 tar.gz 形式のファイルを解凍します。アプライアンス自体は400Mb程度ですが、解凍すると約60Gbのアプライアンスイメージが作成されます。
このアプライアンスを XEN の場合、 /var/lib/xen/images/zabbix/zabbix.raw などのファイル名にコピーして、 Domain-0 に配置します。
アプライアンスの初期設定値はこちらを参考にすると良いでしょう。
2.6 Zabbixアプライアンスの使用
https://www.zabbix.com/documentation/jp/1.8/manual/installation/appliance#
GUI版 YaST2 から > Create Virtual Machine を選択し、"I Have a disk image ...." より openSUSE12 を選びます。
Disk が none となっているので、先ほど解凍した 60G の zabbix.raw のパスを指定します。MAC アドレスは固定しました。
-まずYaSTで必要な設定を変える-
openSUSE/SLES でシステムの基本設定や、パッケージの導入、変更をするには yast(CUI) もしくは yast2(GUI) を使って簡単に変更できます。CUIのテキストコンソールなら
YaST > Network Device から
- 固定アドレスの指定
- DNS の指定
- Default Gateway の指定
- Host Name の指定
- NTP と地域、言語情報(Timezone)などの設定
- root パスワードの変更
- Firewall の無効化(デフォルトで有効)
などです。
などの項目を設定したら一度サーバをリブートします。
ちなみに ipv6 はイネーブルになっています。
使わなければ Global Options よりチェックを外してから再起動が要求されます。
ipv6があってもなくても、あまりパフォーマンスには変化はありませんでした。
また、アプライアンスのIPアドレスを DNS のレコードに登録しておきましょう。
※ /etc/php5/apache2/php.ini に Timezone の設定項目があります。デフォルトは 'UTC' です。これも Asia/Tokyo に修正します。ただし"date.timezone"の記載方法は PHP のバージョンによって異なるようです。
zabbix:~ # grep timezone /etc/php5/apache2/php.ini
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
;date.timezone = 'UTC'
date.timezone = Asia/Tokyo
zabbix:~ #
これで、全ての作業はリモートターミナルやブラウザで行うことができます。
-ソフトウェアアップデート-
SUSE SStudio でダウンロードした Zabbix アプライアンスの YaST には Automatic Update の項目がありません。そこで YaST にこの項目を追加します
YaST > Software Management > Search から "update" などのキーワードで検索すると Yast Online Update(YOU) がリストされるので YOU のパッケージを全てチェックしてインストールします。YOUがインストールされると yast を quit してもう一度 yast を起動します。 Online Update の項目が出てくるので、一応 openSUSE の必要なアップデートを行います。
ブラウザで http://my-zabbix.mynet/ を開きます。
adnmin/zabbix (アプライアンスのデフォルト)でログインします。
※言語の設定は、ログインした後に Profile リンクで日本語に変更できます。
このような感じで zabbix アプライアンスが起動します。
-agent-
※重要 - zabbix_agentd の通信ができるようファイアウォールを開放しないと、データ収集はしません。 zabbix_agentd の通信を許可するか、 10050 ポートの開放が必要です。
zabbix-agent のダウンロード
http://software.opensuse.org/package/zabbix-agent
SUSE Linux の場合、 opensuse のサイトに 1click インストールできるリンクがあるのでここからインストールするか rpm パッケージを使って rpm -ivh xxxx.rpm でインストールします。あまり依存性がないパッケージなので、台数が多い場合は 1 Click インストールするよりは rpm でインストールした方が早いかもしれません。
/etc/zabbix/zabbix-agentd.conf の数か所を書き換えて起動します。YaST の System Service にチェックを入れておくことを忘れないようにしてください。
target:/etc/zabbix # grep zabbix zabbix-agentd.conf
:コメント略
Server=zabbix.mynet
ServerActive=zabbix.mynet
UserParameter=key,zabbix
※ UserParameter= はデフォルトでコメントアウトされています。コメントを外して "key,secret-key-name" を設定します。上の例では "zabbix" としました。これは Zabbix Agent Discovery で使うキーです。
target:/etc/zabbix # /etc/init.d/zabbix-agentd restart
Shutting down zabbix agentd done
Starting zabbix agentd done
target:/etc/zabbix # tail /var/log/zabbix/zabbix-agentd.log
19174:20130308:125542.827 agent #3 started [listener]
19175:20130308:125542.828 agent #4 started [active checks]
19163:20130308:125933.923 Got signal [signal:15(SIGTERM),sender_pid:19229,sender_uid:0,reason:0]. Exiting ...
19163:20130308:125935.923 Zabbix Agent stopped. Zabbix 2.0.5 (revision 33558).
19247:20130308:125936.023 Starting Zabbix Agent [target.intra]. Zabbix 2.0.5 (revision 33558).
19254:20130308:125936.038 agent #0 started [collector]
19255:20130308:125936.039 agent #1 started [listener]
19256:20130308:125936.040 agent #2 started [listener]
19257:20130308:125936.040 agent #3 started [listener]
19258:20130308:125936.041 agent #4 started [active checks]
target:/etc/zabbix #
こんな感じで監視対象のターゲット側にエージェントがインストールされます。
YaST >System Service に runlevel で起動できるよう登録しておきます。
-Windows 側のターゲットエージェント-
http://www.zabbix.com/download.php
より Pre-compiled Zabbix 2.0.4 (stable) agents are available for selected platforms の Windows 版をダウンロードします。解凍すると ...../bin, ..../conf の二つのディレクトリができます。
zabbix_agentd.win.conf のファイル名を zabbix_agentd.conf に変更して、 C:\ にコピーします。
Linux版同様に
Server=zabbix.mynet
ServerActive=zabbix.mynet
UserParameter=key,zabbix
の3行を書き換えます。
C:\ > zabbix_agentd.exe --install
を実行します。デフォルトで c:\zabbix_agentd.conf を設定ファイルとしてサービスが起動します。
※ とっても重要 : Windows7/8(たぶんVistaも)、2008/2012系ばコマンドプロンプトを右ボタンから「管理者として実行」で開いてインストールします。一般ユーザ(管理者権があっても)でコマンドプロンプトを開いてもインストールできません。xp 系ではこの制限はありませんでした。
ということで Zabbix の利用環境が出来ました。
もっとも、Zabbix Agent は必須かどうかは利用状況を考えても良いでしょう。大部分は標準的なテンプレートで管理が行えるようです。
-NET-SNMPの導入-
ここでは詳細を述べませんが、監視対象のデバイス、サーバーの SNMP を有効にしておくと良いでしょう。 Linux の場合は NET-SNMP を導入します。
引き続いて
Zabbix2 で linux サーバーを管理する
Zabbix2 で Windows を管理
Zabbix2 でマップを作成
Zabbix2 のハマリどころ
Zabbix2 のよくあるトラブルシューティングと評価(そのうちに書きます.....)
islandcenter.jp
あわせて読みたい
プライベートクラウド SUSE SLES11sp2 SLES XEN 仮想化 Linux Windows 統合管理ツール