HiRoLabブログ

HiRoのゆるふわIT備忘録

zabbix 6.0を構築してみた

はじめに

Zabbixの構築ブログを掲載していなく、せっかくなので6.0で構築してみた インストール時のエラーなど、初心者がハマる点についの備忘録しての記事になる

目次

対象者

・ESX上の仮想マシンにてZabbixを構築し、ネットワーク監視を行いたい人

環境

ESXiのバージョンは6.7

ESXi以外の環境は環境は下図を参考

zabbix インストール

下記インストールマニュアル通りに順に実行

www.zabbix.com

zabbixリポジトリインストール

# wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4%2Bubuntu20.04_all.deb
# dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb
# apt update

apt updateを実施した際、下記のようなメッセージが発生

N: リポジトリ 'https://repo.zabbix.com/zabbix/6.0/ubuntu focal InRelease' がアーキテクチャ 'i386' をサポートしないため設定ファイル 'main/binary-i386/Packages' の取得をスキップ

解決策 /etc/apt/sources.list.d/zabbix.listを編集

deb https~とあるのでdebhttpsの間に[arch=amd64]を追加して再度apt updateを行うと解消される

本メッセージを解消せずに先進めるとパッケージインストールの際エラーが発生する
エラーの内容は次の工程を参照

必要なパッケージ類のインストール

マニュアル通り下記コマンドを実行

apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent

リポジトリインストール時にも記述した通り、パッケージ取得がskipされることにより下記のエラーが発生する為、前工程でのskipは解消する必要がある

E: パッケージ zabbix-apache-conf が見つかりません
E: パッケージ zabbix-sql-scripts が見つかりません

データベースの構築

マニュアル通り実行する前に書きに注意

マニュアルには記載がないですが、mysql-serverを入れてないとsocketファイルが見つからないエラーになる為、下記コマンドにて事前にインストールをしておくこと

apt install mysql-server

ここからデータベースの構築を開始

mysql -u root -p
パスワードはroot のパスワードを入力

mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
Query OK, 1 row affected (0.01 sec)

mysql> create user zabbix@localhost identified by 'ユーザのパスワード入力';
Query OK, 0 rows affected (0.01 sec)

mysql> grant all privileges on zabbix.* to zabbix@localhost;
Query OK, 0 rows affected (0.00 sec)

mysql> quit;

mysqlのユーザ(zabbix)のパスワードは任意で設定すること

スキーマとデータをインポート

マニュアル通り下記を実行

zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

confファイルにパスワード設定

マニュアル通り/etc/zabbix/zabbix_server.confをエディタで開き、DBPasswordがコメントアウトされている為、 コメントを外して、データベース構築でユーザー(zabbix)に設定したパスワードを登録

DBPassword=<ユーザ(zabbix)のパスワード>

サービスの再起動と有効化

マニュアル通り下記を実行

# systemctl restart zabbix-server zabbix-agent apache2
# systemctl enable zabbix-server zabbix-agent apache2

マニュアルには記述がないが、正しくサービスが稼働してるかの確認は下記コマンドにて確認

systemctl status zabbix-server
systemctl status zabbix-agent 
systemctl status apache2

webアクセスにて初期設定

アクセス先はhttp://<ホストIP>/zabbix

言語設定

前提条件確認

内容を確認して次へ

データベースへ接続

データベース構築で設定したユーザー(zabbix)のパスワードを入力したら次へ

サーバ名とタイムゾーン設定

zabbixサーバ名とタイムゾーンを設定

上記までで設定は完了 デフォルトの書きユーザ名とパスワードで
ユーザ名:Admin
パスワード:zabbix

下図のような画面が表示されればZabbixの構築は完了

おわりに

Zabbixでのホスト登録は過去の記事にZabbix 5.0バージョンで検証してるものになるが、参考程度に拝見いただければ幸いです
また、Ansibleを使ったホスト登録の自動化などの記事もある