読者です 読者をやめる 読者になる 読者になる

私をペロペロするがよい

lazy_dog のブログです。

Zabbix を Arch Linux に入れよう(ついでに SNMP ものんびり覚える)

れずれずアドベンドカレンダー 2 日目です。今回は、Arch Linux に Zabbix を入れることにします。

Zabbix とは

http://ja.wikipedia.org/wiki/Zabbix

方針

  • Arch Linux の最新を使用。
  • MariaDB
    • zabbix-server-mysql を使用することになる。
  • Lighttpd
  • Zabbix は AUR から
  • エージェントレスの SNMP を使用した監視にする。

今回の Zabbix の AUR のバージョンは 2.4.3-1

なお、例によって Arch Linux のインストールは割愛。下記を参考にしたので、重要そうなところをコメントする。

Zabbix (日本語) - ArchWiki
https://wiki.archlinux.org/index.php/Zabbix_(%E6%97%A5%E6%9C%AC%E8%AA%9E)

インストール内容

pacman で下記をまずはインストール。

AUR でしかインストールできない iksemel も一緒にインストールする。Jabber (チャットプロトコル)を処理するパーサらしい。不要だが、必須なので入れる他あるまい。。

AUR (en) - iksemel
https://aur.archlinux.org/packages/iksemel/

上記をインストールしたら、AUR から zabbix-server-mysql をのパッケージをダウンロードしビルドする。Zabbix の中身は C で書かれているため、コンパイルに多少の時間がかかる。

AUR (en) - zabbix-server-mysql
https://aur.archlinux.org/packages/zabbix-server-mysql/

/etc/php/php.ini を編集する。値は上記 Wiki をご参考願う。なお、下記の値もコメントアウトし有効化しないといけないので注意。MySQL (MariaDB) を使用する場合は必須。タイムゾーンも日本時間にすると、グラフが日本時間になるので設定すること。

extension=mysqli.so
always_populate_raw_post_data = -1
date.timezone = "Asia/Tokyo"

あとは mysqld を systemctl で enable と start し、Wiki に書かれている SQL のコマンドを実行する。パスワードの文字列(zabbix@localhost を作成している時の "test" の文字列)は適当に変えておくのもいいかも。

/etc/zabbix/zabbix_server.conf を作成する。もちろん、DBPassword の値はパスワードを指定すること。

Lighttpd 設定

Zabbix のアプリケーションが入ったディレクトリに対し、ln でシンボリックリンクを作る。

# ln -s /usr/share/webapps/zabbix /var/www

次に、LighttpdPHP を動かすために FastCGI の設定をする。

Lighttpd - ArchWiki
https://wiki.archlinux.org/index.php/Lighttpd#PHP

のページの config をそのままパクれば動くようになる。/etc/lighttpd/conf.d/fastcgi.conf を作成し、/etc/lighttpd/lighttpd.conffastcgi.conf を include する設定を追加する。

各種デーモン起動

先に動かしている MariaDB の mysqld 以外に、下記を start/enable する。

これで Zabbix が動く。

初期設定

http://{サーバのアドレス}/zabbix にアクセスすると、Zabbix のインストールを行う WebGUI 画面になる。DB の値など、適当に入れること。全て終了すると、ログイン画面になる。

  • ユーザー名: admin
  • パスワード: zabbix

で入られる。

おいらが経験したログイン後のトラブル

ダッシュボードの画面で、"zabbix server is not running" と表示される場合があった。これは zabbix_server.conf の設定がおかしくなっている可能性がある。おいらの場合、"DBuser" の値が空になっていた。

上記を修正したところ、無事 "Zabbix server is running" が Yes になった。

次回

SNMPYamaha RTX の情報を取得する際、もろもろ悩んだことを書く予定。

# Zabbix の設定方法や使い方は割愛。。。