オープンソースの統合監視ツールZABBIXを導入した。

ZABBIX公式サイト(https://www.zabbix.com/

導入サーバ環境(KVM)
ホストOS:Debian GNU/Linux 10.7
ゲストOS:Debian GNU/Linux 10.7

Apache、MariaDBは、インストール済みである。

# apache2 -v
Server version: Apache/2.4.38 (Debian)
Server built:   2021-06-10T10:13:06
# mysql --version
mysql  Ver 15.1 Distrib 10.3.29-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

 

 ZABBIX公式サイトの「Download and install Zabbix」を参考にインストールを行った。

 

①ZABBIXのrepositoryをダウンロードしてインストール(/usr/local/src ディレクトリにダウンロードした。)

#cd /usr/local/src

# wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1+debian9_all.deb
--2021-09-09 14:56:23--  https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1+debian9_all.deb
repo.zabbix.com (repo.zabbix.com) をDNSに問いあわせています... 178.128.6.101, 2604:a880:2:d0::2062:d001
repo.zabbix.com (repo.zabbix.com)|178.128.6.101|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 3380 (3.3K) [application/octet-stream]
`zabbix-release_5.4-1+debian9_all.deb' に保存中

zabbix-release_5.4-1+debian9_all 100%[=======================================================>]   3.30K  --.-KB/s 時間 0s

2021-09-09 14:56:23 (20.4 MB/s) - `zabbix-release_5.4-1+debian9_all.deb' へ保存完了 [3380/3380]
# dpkg -i zabbix-release_5.4-1+debian9_all.deb
dpkg: 警告: zabbix-release を 1:5.5-1+debian10 から 1:5.4-1+debian9 にダウングレードしています
(データベースを読み込んでいます ... 現在 75932 個のファイルとディレクトリがインストールされています。)
zabbix-release_5.4-1+debian9_all.deb を展開する準備をしています ...
zabbix-release (1:5.4-1+debian9) で (1:5.5-1+debian10 に) 上書き展開しています ...
zabbix-release (1:5.4-1+debian9) を設定しています ...
新バージョンの設定ファイル /etc/apt/sources.list.d/zabbix.list をインストールしています ...

--- 省略 ---
# apt update
ヒット:1 http://ftp.jaist.ac.jp/debian buster InRelease
ヒット:2 http://ftp.jaist.ac.jp/debian buster-updates InRelease
ヒット:3 http://security.debian.org/debian-security buster/updates InRelease
取得:4 https://repo.zabbix.com/zabbix/5.4/debian stretch InRelease [7,088 B]
ヒット:5 https://artifacts.elastic.co/packages/7.x/apt stable InRelease
取得:6 https://repo.zabbix.com/zabbix/5.4/debian stretch/main Sources [981 B]
取得:7 https://repo.zabbix.com/zabbix/5.4/debian stretch/main amd64 Packages [1,922 B]
9,991 B を 2秒 で取得しました (5,632 B/s)
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
アップグレードできるパッケージが 4 個あります。表示するには 'apt list --upgradable' を実行してください。
root@sub:/usr/local/src# apt upgrade
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
アップグレードパッケージを検出しています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  linux-image-4.19.0-12-amd64
これを削除するには 'apt autoremove' を利用してください。
以下のパッケージはアップグレードされます:
  elasticsearch libssl-dev libssl1.1 openssl
アップグレード: 4 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。
348 MB のアーカイブを取得する必要があります。
この操作後に追加で 53.2 kB のディスク容量が消費されます。
続行しますか? [Y/n] y
取得:1 http://security.debian.org/debian-security buster/updates/main amd64 libssl-dev amd64 1.1.1d-0+deb10u7 [1,795 kB]
取得:2 https://artifacts.elastic.co/packages/7.x/apt stable/main amd64 elasticsearch amd64 7.14.1 [344 MB]
取得:3 http://security.debian.org/debian-security buster/updates/main amd64 libssl1.1 amd64 1.1.1d-0+deb10u7 [1,539 kB]
取得:4 http://security.debian.org/debian-security buster/updates/main amd64 openssl amd64 1.1.1d-0+deb10u7 [845 kB]
348 MB を 37秒 で取得しました (9,522 kB/s)
changelog を読み込んでいます... 完了
パッケージを事前設定しています ...
(データベースを読み込んでいます ... 現在 75932 個のファイルとディレクトリがインストールされています。)
.../libssl-dev_1.1.1d-0+deb10u7_amd64.deb を展開する準備をしています ...
libssl-dev:amd64 (1.1.1d-0+deb10u7) で (1.1.1d-0+deb10u6 に) 上書き展開しています ...
.../libssl1.1_1.1.1d-0+deb10u7_amd64.deb を展開する準備をしています ...
libssl1.1:amd64 (1.1.1d-0+deb10u7) で (1.1.1d-0+deb10u6 に) 上書き展開しています ...
.../elasticsearch_7.14.1_amd64.deb を展開する準備をしています ...
elasticsearch (7.14.1) で (7.14.0 に) 上書き展開しています ...
.../openssl_1.1.1d-0+deb10u7_amd64.deb を展開する準備をしています ...
openssl (1.1.1d-0+deb10u7) で (1.1.1d-0+deb10u6 に) 上書き展開しています ...
elasticsearch (7.14.1) を設定しています ...
warning: usage of JAVA_HOME is deprecated, use ES_JAVA_HOME
Created elasticsearch keystore in /etc/elasticsearch/elasticsearch.keystore
libssl1.1:amd64 (1.1.1d-0+deb10u7) を設定しています ...
libssl-dev:amd64 (1.1.1d-0+deb10u7) を設定しています ...
openssl (1.1.1d-0+deb10u7) を設定しています ...
systemd (241-7~deb10u8) のトリガを処理しています ...
man-db (2.8.5-2) のトリガを処理しています ...
libc-bin (2.28-10) のトリガを処理しています ...

--- 省略 ---

 

②Zabbix server,、frontend,、agent インストール

# apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
zabbix-agent はすでに最新バージョン (1:6.0.0~alpha2-1+debian10) です。
zabbix-frontend-php はすでに最新バージョン (1:6.0.0~alpha2-1+debian10) です。
zabbix-server-mysql はすでに最新バージョン (1:6.0.0~alpha2-1+debian10) です。
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  linux-image-4.19.0-12-amd64
これを削除するには 'apt autoremove' を利用してください。
以下のパッケージが新たにインストールされます:
  zabbix-apache-conf zabbix-sql-scripts
アップグレード: 0 個、新規インストール: 2 個、削除: 0 個、保留: 0 個。
5,426 kB のアーカイブを取得する必要があります。
この操作後に追加で 5,582 kB のディスク容量が消費されます。
続行しますか? [Y/n] y
取得:1 https://repo.zabbix.com/zabbix/5.4/debian buster/main amd64 zabbix-apache-conf all 1:5.4.4-1+debian10 [339 kB]
取得:2 https://repo.zabbix.com/zabbix/5.4/debian buster/main amd64 zabbix-sql-scripts all 1:5.4.4-1+debian10 [5,086 kB]
5,426 kB を 12秒 で取得しました (460 kB/s)
以前に未選択のパッケージ zabbix-apache-conf を選択しています。
(データベースを読み込んでいます ... 現在 75997 個のファイルとディレクトリがインストールされています。)
.../zabbix-apache-conf_1%3a5.4.4-1+debian10_all.deb を展開する準備をしています ...
zabbix-apache-conf (1:5.4.4-1+debian10) を展開しています...
以前に未選択のパッケージ zabbix-sql-scripts を選択しています。
.../zabbix-sql-scripts_1%3a5.4.4-1+debian10_all.deb を展開する準備をしています ...
zabbix-sql-scripts (1:5.4.4-1+debian10) を展開しています...
zabbix-sql-scripts (1:5.4.4-1+debian10) を設定しています ...
zabbix-apache-conf (1:5.4.4-1+debian10) を設定しています ...
Enabling conf zabbix.
To activate the new configuration, you need to run:
  systemctl reload apache2

 

③データベースを作成する

# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 267
Server version: 10.3.29-MariaDB-0+deb10u1 Debian 10

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database zabbix2 character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.002 sec)

MariaDB [(none)]> create user zabbix2@localhost identified by 'パスワード';
Query OK, 0 rows affected (0.002 sec)

MariaDB [(none)]> grant all privileges on zabbix2.* to zabbix2@localhost;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> quit;
Bye

 

④初期スキーマとデータをインポートする。

※③で設定したパスワードを入力する。インポート完了までに少々時間がかかった。

# zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -uzabbix2 -p zabbix2
Enter password:

 

⑤設定ファイル(zabbix_server.conf)にDBのパスワードを入力する。

 ※129行目のDBPassword=パスワード

# vi /etc/zabbix/zabbix_server.conf


      1 # This is a configuration file for Zabbix server daemon
      2 # To get more information about Zabbix, visit http://www.zabbix.com
      3
      4 ############ GENERAL PARAMETERS #################
      5
      6 ### Option: ListenPort
      7 #       Listen port for trapper.
      8 #
      9 # Mandatory: no
     10 # Range: 1024-32767
     11 # Default:
     12 # ListenPort=10051

--- 省略 ---


     95 ### Option: DBName
     96 #       Database name.
     97 #       If the Net Service Name connection method is used to connect to Oracle database, specify the service name from
     98 #       the tnsnames.ora file or set to empty string; also see the TWO_TASK environment variable if DBName is set to
     99 #       empty string.
    100 #
    101 # Mandatory: yes
    102 # Default:
    103 # DBName=
    104
    105 DBName=zabbix
    106
    107 ### Option: DBSchema
    108 #       Schema name. Used for PostgreSQL.
    109 #
    110 # Mandatory: no
    111 # Default:
    112 # DBSchema=
    113
    114 ### Option: DBUser
    115 #       Database user.
    116 #
    117 # Mandatory: no
    118 # Default:
    119 # DBUser=
    120
    121 DBUser=zabbix
    122
    123 ### Option: DBPassword
    124 #       Database password.
    125 #       Comment this line if no password is used.
    126 #
    127 # Mandatory: no
    128 # Default:
    129  DBPassword = パスワード
    130
    131 ### Option: DBSocket
    132 #       Path to MySQL socket.
    133 #

--- 省略 ---

    955 # Mandatory: no
    956 # Range: 0 - INT_MAX (depends on system, too large values may be silently truncated to implementation-specified maximum)
    957 # Default: SOMAXCONN (hard-coded constant, depends on system)
    958 # ListenBacklog=

 

⑥サービスの自動起動設定

# systemctl enable zabbix-server zabbix-agent apache2
Synchronizing state of zabbix-server.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable zabbix-server
Synchronizing state of zabbix-agent.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable zabbix-agent
Synchronizing state of apache2.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable apache2

 

⑦起動!

# systemctl restart zabbix-server zabbix-agent apache2

 

⑧ブラウザで http://IPアドレス/zabbix/ アクセスする。

ユーザー名「Admin」、パスワードは「zabbix」でログイン

 

⑨ログイン成功後に、日本語に設定する。

 

⑩ダッシュボードが日本語で表示される。

 

監視対象サーバに「Zabbix Agent」をインストールすれば、監視項目(アイテム)や検知しきい値(トリガー)を設定し監視が可能となる。
※ping、ポート等の簡単な監視であれば、「Zabbix Agent」のインストールは不用である。

以上