CentOS7.3 Zabbix3.0.9インストール on MariaDB10.2.6

シェアする

以前に構築した「Galera Cluster on MariaDB 10.2.6」環境を利用して、Zabbix環境の再構築を実施します。
なお、本環境は、同様に以前に構築した「Galera Load Balancer」環境も含んでいます。

基本的な実施内容に変化はありませんが、順番など微妙に違うので、とにかくメモしました。

データベースとユーザーの作成

 既存のデータベース上に、「Zabbix用データベース」及び「Zabbix用ユーザー」を作成します。

データベースサーバーでの操作

# mysql -u root -p
Enter password:rootpass
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 7516
Server version: 10.2.6-MariaDB MariaDB Server
 
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
 
MariaDB [(none)]> create database zabbix;
Query OK, 1 row affected (0.00 sec)
 
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| zabbix             |
+--------------------+
4 rows in set (0.00 sec)
 
MariaDB [(none)]> create user 'zabbixadmin'@'%' identified by 'zabbixpass';
Query OK, 0 rows affected (0.00 sec)
 
MariaDB [(none)]> select user,host from mysql.user;
+------------+-----------+
| user       | host      |
+------------+-----------+
| zabbixadmn | %         |
| root       | 127.0.0.1 |
| root       | ::1       |
| root       | localhost |
+------------+-----------+
4 rows in set (0.00 sec)
 
MariaDB [(none)]> grant all privileges on zabbix.* to 'zabbixadmin'@'%';
Query OK, 0 rows affected (0.00 sec)
 
MariaDB [(none)]> show grants for zabbixadmin;
+---------------------------------------------------------------------------------------------------+
| Grants for zabbixadmin@%                                                                          |
+---------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'zabbixadmin'@'%' IDENTIFIED BY PASSWORD '*E999DEB99DC99123EEF1DE23B8D5BBD' |
| GRANT ALL PRIVILEGES ON `zabbix`.* TO 'zabbixadmin'@'%'                                           |
+---------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
 
MariaDB [(none)]> exit
Bye

MariaDB10.2.6のリポジトリー設定

ここから、導入するZabbixサーバでの作業です。
MariaDBのクライアントが必要ですので、MariaDBのリポジトリーを設定します。

# vim /etc/yum.repos.d/mariadb.repo
# MariaDB 10.2 CentOS repository list - created 2017-05-25 08:12 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2.6/centos73-amd64/
enabled = 0
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

MariaDBクライアントのインストール

Zabbixはデータベースと同じサーバに構築せずに、別サーバ上に構築します。
なので、既存のデータベースにリモートで接続できるように、MariaDBのクライアントをインストールします。

# yum --disablerepo=\* --enablerepo=mariadb list available
Available Packages
MariaDB-aws-key-management.x86_64         10.2.6-1.el7.centos            mariadb
MariaDB-cassandra-engine.x86_64           10.2.6-1.el7.centos            mariadb
MariaDB-client.x86_64                     10.2.6-1.el7.centos            mariadb
MariaDB-common.x86_64                     10.2.6-1.el7.centos            mariadb
MariaDB-compat.x86_64                     10.2.6-1.el7.centos            mariadb
MariaDB-connect-engine.x86_64             10.2.6-1.el7.centos            mariadb
MariaDB-cracklib-password-check.x86_64    10.2.6-1.el7.centos            mariadb
MariaDB-devel.x86_64                      10.2.6-1.el7.centos            mariadb
MariaDB-gssapi-server.x86_64              10.2.6-1.el7.centos            mariadb
MariaDB-oqgraph-engine.x86_64             10.2.6-1.el7.centos            mariadb
MariaDB-rocksdb-engine.x86_64             10.2.6-1.el7.centos            mariadb
MariaDB-server.x86_64                     10.2.6-1.el7.centos            mariadb
MariaDB-shared.x86_64                     10.2.6-1.el7.centos            mariadb
MariaDB-test.x86_64                       10.2.6-1.el7.centos            mariadb
MariaDB-tokudb-engine.x86_64              10.2.6-1.el7.centos            mariadb
galera.x86_64                             25.3.20-1.rhel7.el7.centos     mariadb
jemalloc.x86_64                           3.6.0-1.el7                    mariadb
jemalloc-devel.x86_64                     3.6.0-1.el7                    mariadb
# yum remove mariadb-libs   <= 5.5系は不要
  :
Removed:
  mariadb-libs.x86_64 1:5.5.52-1.el7
 
Complete!
# yum --disablerepo=\* --enablerepo=mariadb install MariaDB-client   <= クライアントのインストール
  :
Installed:
  MariaDB-client.x86_64 0:10.2.6-1.el7.centos
 
Dependency Installed:
  MariaDB-common.x86_64 0:10.2.6-1.el7.centos
  MariaDB-compat.x86_64 0:10.2.6-1.el7.centos
 
Complete!
# mysql -h 192.168.1.175 -u zabbixadmin -p    <= 接続確認
Enter password: zabbixadminpass
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 7534
Server version: 10.2.6-MariaDB MariaDB Server
 
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
MariaDB [(none)]> exit
Bye

Zabbixリポジトリーの導入

ZabbixよりYumパッケージのリポジトリーが公開されていますので、そちらからインストールできるようにします。

# yum -y install \
> http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
  :
Installed:
  zabbix-release.noarch 0:3.0-1.el7
 
Complete!
# yum list | grep ^zabbix
zabbix-release.noarch           3.0-1.el7     installed
zabbix-agent.x86_64             3.0.9-1.el7   zabbix
zabbix-get.x86_64               3.0.9-1.el7   zabbix
zabbix-java-gateway.x86_64      3.0.9-1.el7   zabbix
zabbix-proxy-mysql.x86_64       3.0.9-1.el7   zabbix
zabbix-proxy-pgsql.x86_64       3.0.9-1.el7   zabbix
zabbix-proxy-sqlite3.x86_64     3.0.9-1.el7   zabbix
zabbix-sender.x86_64            3.0.9-1.el7   zabbix
zabbix-server-mysql.x86_64      3.0.9-1.el7   zabbix
zabbix-server-pgsql.x86_64      3.0.9-1.el7   zabbix
zabbix-web.noarch               3.0.9-1.el7   zabbix
zabbix-web-japanese.noarch      3.0.9-1.el7   zabbix
zabbix-web-mysql.noarch         3.0.9-1.el7   zabbix
zabbix-web-pgsql.noarch         3.0.9-1.el7   zabbix
# yum -y install zabbix-server-mysql
  :
Installed:
  zabbix-server-mysql.x86_64 0:3.0.9-1.el7
 
Dependency Installed:
  OpenIPMI-libs.x86_64 0:2.0.19-15.el7
  OpenIPMI-modalias.x86_64 0:2.0.19-15.el7
  fping.x86_64 0:3.10-1.el7
  iksemel.x86_64 0:1.4-2.el7.centos
  libtool-ltdl.x86_64 0:2.4.2-22.el7_3
  net-snmp-libs.x86_64 1:5.7.2-24.el7_3.2
  unixODBC.x86_64 0:2.3.1-11.el7
 
Complete!
# yum -y install zabbix-web-mysql
  :
Installed:
  zabbix-web-mysql.noarch 0:3.0.9-1.el7
 
Dependency Installed:
  apr.x86_64 0:1.4.8-3.el7
  apr-util.x86_64 0:1.5.2-6.el7
  dejavu-fonts-common.noarch 0:2.33-6.el7
  dejavu-sans-fonts.noarch 0:2.33-6.el7
  fontpackages-filesystem.noarch 0:1.44-8.el7
  httpd.x86_64 0:2.4.6-45.el7.centos.4
  httpd-tools.x86_64 0:2.4.6-45.el7.centos.4
  libX11.x86_64 0:1.6.3-3.el7
  libX11-common.noarch 0:1.6.3-3.el7
  libXau.x86_64 0:1.0.8-2.1.el7
  libXpm.x86_64 0:3.5.11-3.el7
  libjpeg-turbo.x86_64 0:1.2.90-5.el7
  libpng.x86_64 2:1.5.13-7.el7_2
  libxcb.x86_64 0:1.11-4.el7
  libxslt.x86_64 0:1.1.28-5.el7
  libzip.x86_64 0:0.10.1-8.el7
  mailcap.noarch 0:2.1.41-2.el7
  php.x86_64 0:5.4.16-42.el7
  php-bcmath.x86_64 0:5.4.16-42.el7
  php-cli.x86_64 0:5.4.16-42.el7
  php-common.x86_64 0:5.4.16-42.el7
  php-gd.x86_64 0:5.4.16-42.el7
  php-ldap.x86_64 0:5.4.16-42.el7
  php-mbstring.x86_64 0:5.4.16-42.el7
  php-mysql.x86_64 0:5.4.16-42.el7
  php-pdo.x86_64 0:5.4.16-42.el7
  php-xml.x86_64 0:5.4.16-42.el7
  t1lib.x86_64 0:5.1.2-14.el7
  zabbix-web.noarch 0:3.0.9-1.el7
 
Complete!
# yum -y install zabbix-web-japanese
  :
Installed:
  zabbix-web-japanese.noarch 0:3.0.9-1.el7
 
Dependency Installed:
  vlgothic-p-fonts.noarch 0:20130607-2.el7
 
Complete!
# yum -y install zabbix-agent
  :
Installed:
  zabbix-agent.x86_64 0:3.0.9-1.el7
 
Complete!
# yum -y install zabbix-get
  :
Installed:
  zabbix-get.x86_64 0:3.0.9-1.el7
 
Complete!

Apache HTTPサーバの簡易設定変更

Apache HTTPサーバはzabbixパッケージの依存関係でインストールされています。
とりあえず、簡易設定変更をしておきます。

# cd /etc/httpd/conf.d
# mv welcome.conf welcome.conf.original
# mv userdir.conf userdir.conf.original
# mv autoindex.conf autoindex.conf.original
# cd /etc/httpd/conf
# mv httpd.conf httpd.conf.original
# cat httpd.conf.original | \
> sed -e '/^# /d' | \
> sed -e '/^#$/d' | \
> sed -e '/.* # /d' | \
> sed -e '/.* #$/d' | \
> sed -e '/^$/d' > httpd.conf

zabbixデータベース周りの設定

作成したzabbixデータベース上に、zabbix用のデータベースを構築します。
zabbixのパッケージをインストールしたときに、構築用のSQLがありますので、それを流し込みます。

# cd /usr/share/doc/zabbix-server-mysql-3.0.9
# gunzip create.sql.gz
# mysql -h 192.168.1.175 -u zabbixadmin -p zabbix < create.sql  <= 流し込み
Enter password:zabbixpass

zabbixのデータベースはローカルホストにありませんので、そちらの設定も行ないます。
設定できるパラメータはいくつかありますが、とりあえず、動く設定にします。

# cd /etc/zabbix
# cp -p zabbix_server.conf zabbix_server.conf.original
# vim zabbix_server.conf
  :
### Option: DBHost
#       Database host name.
#       If set to localhost, socket is used for MySQL.
#       If set to empty string, socket is used for PostgreSQL.
#
# Mandatory: no
# Default:
# DBHost=localhost
 
DBHost=192.168.1.175
 
### Option: DBName
#       Database name.
#       For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored.
#
# Mandatory: yes
# Default:
# DBName=
 
DBName=zabbix
  :
### Option: DBUser
#       Database user. Ignored for SQLite.
#
# Mandatory: no
# Default:
# DBUser=
 
DBUser=zabbixadmin
 
### Option: DBPassword
#       Database password. Ignored for SQLite.
#       Comment this line if no password is used.
#
# Mandatory: no
# Default:
# DBPassword=
 
DBPassword=zabbixadminpass
  :

Zabbixサーバの起動

Zabbixサーバを起動してみます。

# systemctl status zabbix-server
* zabbix-server.service - Zabbix Server
   Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
    :
# systemctl start zabbix-server
# systemctl enable zabbix-server
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service
 to /usr/lib/systemd/system/zabbix-server.service.

Zabbixエージェントの起動

Zabbixエージェントを起動してみます。
自分自身を監視することになります。

# systemctl status zabbix-agent
* zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
    :
# systemctl start zabbix-agent
# systemctl enable zabbix-agent
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service
 to /usr/lib/systemd/system/zabbix-agent.service.

Apache HTTP サーバの設定変更

Zabbix用の定義ファイルを変更します。
実運用に合わせて、変更下さい。

# cd /etc/httpd/conf.d
# cp -p zabbix.conf zabbix.conf.original
# vim zabbix.conf
<Directory "/usr/share/zabbix">
       :
    <IfModule mod_php5.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value always_populate_raw_post_data -1
        #php_value date.timezone Europe/Riga
        php_value date.timezone Asia/Tokyo     <= 追加
    </IfModule>
</Directory>
# systemctl status httpd
* httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
    :
# systemctl start httpd
# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service
 to /usr/lib/systemd/system/httpd.service.

Zabbix Serverへの接続

Zabbixの監視画面は、ブラウザより「http://<Zabbixサーバ名>/zabbix/」で接続します。
初回接続時は、「ユーザー名:admin/パスワード:zabbix」となっているので、接続確認含めて、パスワードを変更しておきます。

(1) Zabbix Serverへの接続

ブラウザーのアドレス欄に「http://<Zabbixサーバ名>/zabbix/」を入力して接続すると、初回接続時のセットアップがはじまります。
[Next step]ボタンを押下します。

zabbixsetup01

(2) 要求事項の検査

Zabbixが稼動する上の要求を満たしているかが表示されます。
[Next step]ボタンを押下します。

zabbixsetup02

(3) データベースへの接続定義

Zabbixデータベースへの接続情報を設定して、[Next step]ボタンを押下します。

設定項目

Database type ・・・ 接続するDBの種類を指定。(MariaDBだけどMySQLで)
Database host ・・・ 接続先のDBをホスト名かIPアドレスで指定。
Database Port ・・・ 接続先のポート番号を指定。(「0」だとデフォルトのポート番号)
Database name ・・・ 接続先のDB名を指定。
User ・・・ 接続先DBのユーザー名を指定。
Password ・・・ 接続先DBのパスワードを指定。

zabbixsetup03

(4) Zabbix Agentからの受付ポート

基本的にはデフォルトのままでいいと思います。
[Next step]ボタンを押下します。

zabbixsetup04

(5) セットアップする際の設定サマリー

Zabbix Serverをセットアップするためのサマリーが表示されます。
[Next step]ボタンを押下します。

zabbixsetup05

(6) セットアップの完了

[Finish]ボタンを押下します。

zabbixsetup06

(7) Zabbixへのサインイン

初回ですので「ユーザー名:admin/パスワード:zabbix」で接続できます。
[Sign in]ボタンを押下します。

zabbixsetup07

(8) Zabbixの画面表示

Zabbixへのサインインができました。

zabbixsetup08

(9) ユーザー管理画面の表示

サインイン時のパスワードなどを変更します。
[Administration]-[Users]のリンクをたどって押下します。

 zabbixsetup09

(10) adminユーザーの管理画面

[admin]のリンクを押下します。

zabbixsetup10

(11) パスワード変更画面

[Change password]ボタンを押下します。

zabbixsetup11

(12) adminユーザーの設定変更

パスワードを変更するついでに、言語設定を「日本語」にして、テーマも「ダーク」系にしてみます。
[Update]ボタンを押下します。

zabbixsetup12

(13) 表示の確認

[F5]キーなどを押すなどして、画面を更新すると表示が変わりました。
再度ログインをしなおすと、パスワードも変更されています。

zabbixsetup13