Zabbix 3.4インストール手順 ( CentOS7 / MariaDB5.5 / Apache2.4 )

Zabbixのインストールについてまとめます。

Zabbixとは

  • サーバーやネットワークの状態監視、障害検知、それら通知するための管理ツールです。
  • オープンソース・ソフトウェア(OSS)として開発されており、無料でダウンロードできます。
  • 以下のような項目を監視できます。
    死活監視、リソースの使用率(CPU、メモリ、ディスク)、サービス稼働状況、Web動作状況
  • エージェントを用いずにSNMPで監視することも可能です。
  • 専門書籍や日本ユーザーZabbixユーザー会等のコミュニティが充実しているので、運用に必要な情報が得られやすいです。

目標

  • Zabbixによる監視サーバーの構築(Zabbixのインストール、管理画面ブラウザの起動)
  • なるべく時間と手間をかけないこと。(慣れれば所要時間20〜30分)

環境

MacOSにて、VagrantとVirtualBoxで構築したCentOS7に、Zabbixをインストールします。

ここでは詳細は割愛しますが、Virtualboxを直接いじるよりは、VagrantでCentOSを構築した方が、複数台のマシン構築、ならびに、インターネット、ホストOS、ゲストOS同士の接続が簡単にできます。

ホストOS MacOS Mojave 10.14.6
ゲストOS CentOS 7.6.1810
※Vagrant と Virtualbox で構築
※インターネットとホストOSへの接続、ゲストOS同士の接続も可能。
Zabbixサーバー 3.4.15
Webサーバー Apache 2.4.6(CentOS7に標準搭載)
DBサーバー MariaDB 5.5.65 (CentOS7に標準搭載)
Webブラウザ Google Chrome バージョン: 83.0.4103.61(Official Build) (64 ビット)

参考にした記事

さくらのナレッジ
ITインフラ監視入門~Zabbixインストール編~ – 「クラウド時代だから必要なITインフラ基礎知識」(5)
https://knowledge.sakura.ad.jp/12446/

インストール手順

スピード優先のため、OSアップデートは飛ばします。

Zabbixと各プログラムのインストール

Zabbix等のプログラムのインストールを行い、MariaDBへログインします。

Zabbixをインストールします。(動作確認も兼ねて、本来は監視対象向けのzabbix-agentもインストールします。)

[root@localhost]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
[root@localhost]# yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-web-japanese
[root@localhost]# yum -y install zabbix-agent

 

MariaDBを起動し、ログインします。

Zabbix用データベース作成と設定

MariaDBにログイン後、Zabbixのデータベースを作成します。
混乱しやすいですが、MariaDBのroot用と、Zabbixデータベース用と、2種類のパスワードを設定します。

パスワードを忘れたりすると、MariaDBの初期化やトラブルシューティングをする羽目になるので、慎重に行いましょう。
もし分からなくなったら、最初からやり直す方が早いかもしれません。

MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all on zabbix.* to zabbix@localhost identified by '【Zabbix管理画面で使用するパスワード】';
MariaDB [(none)]> UPDATE mysql.user SET Password=PASSWORD('【MariaDBのrootパスワード】') WHERE User='root';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit;
  1. UTF-8で”zabbix”という名称のデータベースを作成します。
  2. zabbixユーザを作成します。( GRANT 文で”zabbix.*”にマッチする権限を”zabbix@localhost”に与えます。)
  3. ここで、ブラウザのZabbix管理画面で使用するパスワードを設定します。
  4. MariaDBのrootパスワードを設定し、”FLUSH PRIVILEGES”で権限変更をデータベースに反映します。
  5. 終了します。

Zabbix用のデータベース作成後は、Zabbix起動に必要な設定を行います。

★Zabbix用に圧縮されたSQLファイル(create.sql.gz)をMySQLにインポートします。
 紛らわしいですが、下記の"-p"の後は、データベース名"zabbix"を入力し、その後に上記で決めたパスワードを入力します。
[root@localhost]# cd /usr/share/doc/zabbix-server-mysql-3.4.4/
[root@localhost]# zcat create.sql.gz | mysql -u zabbix -p zabbix
Enter password: 【Zabbix管理画面で使用するパスワード】】

★Zabbixサーバーの設定ファイルに上記で決めたパスワードを入力します。
[root@localhost]# vi /etc/zabbix/zabbix_server.conf
---

# DBPassword=
↓
DBPassword= 【Zabbix管理画面で使用するパスワード】

hoge

[root@localhost]# cd /usr/share/doc/zabbix-server-mysql-3.4.4/
[root@localhost]# zcat create.sql.gz | mysql -u zabbix -p zabbix
[root@localhost]# vi /etc/zabbix/zabbix_server.conf

タイムゾーンの設定(Apache)

Zabbixの管理画面で表示するタイムゾーンを東京に設定します。

[root@localhost]# vi /etc/httpd/conf.d/zabbix.conf
---

# php_value date.timezone Europe/Riga
↓
php_value date.timezone Asia/Tokyo

ロケールとSELinuxの設定

参考にした「さくらのナレッジ」では記載はありませんが、私の環境では、以下2つを追加で設定しました。

  • Zabbix管理画面の日本語表示化
  • Zabbix管理画面上での起動有効化(SELinuxの無効化)
    ※SELinuxとはセキュリティ関連のLinuxカーネルの制御機能です。(ディストリビューションではありません。)
★ロケールを日本に設定
[root@localhost]# localedef -f UTF-8 -i ja_JP ja_JP


★SELinuxの無効化(これをすることで、Zabbix管理画面上の「Zabbixサーバーの起動」が「はい」になる。)
[root@localhost]# vi /etc/selinux/config
---

# SELINUX=enforced
↓
SELINUX=disabled

★設定を反映するために再起動
[root@localhost]# reboot

★"Disabled"になっていればOKです。
[root@localhost]# getenforce
  Disabled

各サービスの起動

各サービスの起動で、CentOS7での作業は完了です!

★Zabbixサーバーの起動
[root@localhost]# systemctl start zabbix-server
[root@localhost]# systemctl enable zabbix-server

★Webサーバーの起動
[root@localhost]# systemctl start httpd
[root@localhost]# systemctl enable httpd

★ファイアーウォールの起動
[root@localhost]# systemctl start firewalld
[root@localhost]# firewall-cmd --add-service=http --zone=public --permanent
[root@localhost]# firewall-cmd --reload

Zabbix管理画面の設定

ここからはWebブラウザで作業を行います。
私はChromeで動作確認を行いました。

ブラウザのURLに以下を入力します。

http://[サーバのIPアドレス]/zabbix/

Zabbixの管理画面が表示されるまでに、以下のように、いくつかプロセスがあります。
各画面は省略しますが、以下のポイントを押さえて進めば問題ないかと思います。

Zabbix管理画面の設定手順

  1. 「Welcome to Zabbix 3.4」
    「Next Step」をクリックし、次に進みます。
  2. 「Check of pre-requisites」
    全てOKになっていることを確認し、「Next Step」をクリックし、次に進みます。
  3. 「Configure DB connection」
    「Password」に上記で設定した「【Zabbix管理画面で使用するパスワード】」を入力します。「Next Step」をクリックし、次に進見ます。
  4. 「Zabbix server details」
    「Next Step」をクリックし、次に進みます。(「Name」に空欄でOKです。)
  5. 「Pre-installation summary」
    「Next Step」をクリックし、次に進みます。
  6. 「Congratulations! You have sucessfully installed Zabbix frontend」
    「Finish」をクリックし、完了します。
  7. Zabbixログイン画面
    以下の初期設定を入力し「Sign In」をクリックします。
    username:Admin
    Password:zabbix
  8. Zabbix管理画面トップ
    画面右上の人型マークをクリックし「ユーザー」タブの「言語」で日本語を選択すれば完了です!

Zabbix管理画面トップ

まとめ

  • Zabbixのインストールに当たって、動作検証のためにも、2台以上の仮想マシンを用意しておくのが望ましいです。
    (インターネット接続、ホストOS – ゲストOS間の接続、ゲストOS同士の接続が可能だと尚良しです。)
  • Zabbixのインストールは、CentOS側でのインストール作業と、Zabbix管理画面の設定が必要です。
  • Zabbixサーバーのインストール以外に、Webサーバー、データベースなどのインストールが必要です。