オープンソース版Miracle ZBXをインストールしてみました。すごい簡単でした。 手順をつらつらと書いてみます。
1.CentOS 7のインストール
今回セットアップしたMiracle ZBX 2.2は次のOSで動作するようですが、今回はCentOS 7.2を使いました。昨日PXEの設定をしたのでその確認も兼ねて...です。
- Asianux Server 4.x, 7.x(MIRACLE LINUX V6.x, V7.x)
- Red Hat Enterprise Linux Server 6.x, 7.x
- CentOS 6.x, 7.x
- Amazon Linux
2.MariaDBを事前にインストールしておく
CentOS 7には標準でMySQLサーバーはないので、MariaDBサーバーをインストールします。
# yum install mariadb mariadb-server
3.MariaDBのチューニングと設定
DBで使う文字コードの指定やパラメータチューニングを行います。
# vi /etc/my.cnf ... [mysqld] character-set-server=utf8 skip-character-set-client-handshake innodb_file_per_table innodb_buffer_pool_size=32M innodb_log_file_size=8M innodb_log_files_in_group=2
4.システムのアップデート
# yum update
5.MariaDBの起動と確認
MariaDBサーバーの起動とステータスの確認を行います。
# systemctl start mariadb # systemctl enable mariadb # systemctl status mariadb
6.Miracle ZBXのリポジトリーを追加
「MIRACLE ZBX 2.2 for ML6/7, RHEL6/7, CentOS6/7, Amazon Linux」の手順を参考に、リポジトリーを追加します。MIRACLE ZBX 2.2はZabbix 2.2に独自パッチがあたっているバージョンです。
7.Miracle ZBXの設定
インストールの後は基本的にZabbix公式の手順に従って設定を行います。
3 パッケージからのインストール [Zabbix Documentation 2.2]
7.1 標準の設定と異なる部分
Miracle ZBXで利用するデータベースは次のように作りました。
# mysql -u root -p MariaDB> create database zabbix; MariaDB> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'mysqlzabbixpass'; MariaDB> quit;
ここではユーザーzabbix、パスワードmysqlzabbixpassを指定しました。
初期スキーマとデータのインポートは同バージョンのZabbixとは異なっていました。インポートするsqlファイルは ZBXバージョン2.2.11なので次のパスにありました。
# cd /usr/share/doc/zabbix-server-mysql-2.2.11/mysql (sqlファイルがあるパスに移動) # mysql -u root -p zabbix < ./schema.sql # mysql -u root -p zabbix < ./images.sql # mysql -u root -p zabbix < ./data.sql (ちなみにインポートの順番が重要みたいです)
「ZabbixのWebインターフェース用のPHP設定の編集」のところはコメントアウトを外して次のように設定しました。
# vi /etc/httpd/conf.d/zabbix.conf ... ## ## Zabbix monitoring system php web frontend ## # Alias /zabbix /usr/share/zabbix # <Directory "/usr/share/zabbix"> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all <IfModule mod_authz_core.c> # Apache 2.4 Require all granted </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order allow,deny Allow from all </IfModule> php_value max_execution_time 600 php_value date.timezone Asia/Tokyo php_value memory_limit 256M php_value post_max_size 32M php_value upload_max_filesize 16M php_value max_input_time 600 php_value mbstring.func_overload 6 </Directory> <Directory ~ "^/usr/share/zabbix/(conf|api|include)/"> <IfModule mod_authz_core.c> # Apache 2.4 Require all denied </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order deny,allow Deny from all </IfModule> <files *.php> <IfModule mod_authz_core.c> # Apache 2.4 Require all denied </IfModule> <IfModule !mod_authz_core.c> Order deny,allow Deny from all </IfModule> </files> </Directory>
Zabbix Serverの設定を書き換えます。DBHostはZabbix Serverに一緒にインストールしたMariaDB ServerにDBを置くのでlocalhost、DBPasswordはDB作成時に指定したパスワードを設定します。
# vi /etc/zabbix/zabbix_server.conf DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=mysqlzabbixpass
8.サービスの再起動
各種サービスの再起動はsystemctlを利用します。
# systemctl restart httpd # systemctl restart zabbix-server
9.ポートの解放
Zabbix frontendにアクセスする前に、必要なポートを解放します。
# firewall-cmd --zone=public --add-port=80/tcp # firewall-cmd --zone=public --add-port=80/tcp --permanent # firewall-cmd --zone=public --add-port=10051/tcp # firewall-cmd --zone=public --add-port=10051/tcp --permanent
この後Webインターフェイスにアクセスして初期設定を行います。初期設定はウィザード形式で、画面の指示に従ってデータベース名、DBアカウントなどを入力していきます。
終わったらいよいよログインです。
ログイン画面
ログイン画面。初期ユーザーはadmin/zabbixです。
ホーム画面
Miracle ZBXの場合、使い始めから日本語でインターフェイスが表示されます。
10.エージェントについて
Miracle ZBXのZabbixエージェントについては以下に情報があります。
監視対象のサーバーにZabbixエージェントを入れたらTCP/10051番ポートを解放する必要があります。対象がLinuxの場合は最低限、次の設定を記述してエージェントの再起動、及び手動によるZabbixサーバーへのノード追加か、オートディスカバリー機能を使ってZabbixにノードを登録します。
# vi /etc/zabbix/zabbix_agentd.conf ... Server=Zabbix ServerのIPアドレス ListenIP=Zabbix AgentノードのIPアドレス ServerActive=Zabbix ServerのIPアドレス
とりあえずMiracle ZBX 2.2はインストールできたので、Zabbix 3.0ベースのMiracle ZBX 3.0についてもそのうち触ってみたいと思います。
11.参考になった書籍
以下の書籍が非常にわかりやすいです。書籍のほか、Kindle版もあるようです。
http://www.amazon.co.jp/gp/product/B00N4M5S1C/ref=as_li_ss_tl?ie=UTF8&camp=247&creative=7399&creativeASIN=B00N4M5S1C&linkCode=as2&tag=mozexpo-22www.amazon.co.jp