今回は、Ubuntu Server 20.04にZabbix5系をインストールしてみます。
前提条件
インストールを行う環境は以下の通りです。
- OS : Ubuntu Server 20.04
- CPU : 2vCPU
- MEM : 4GB
- DISK : 60GB
今回はHyper-Vに仮想マシンを作成して検証していきます。
なお、OSのインストールは割愛します。
Apache+PHP関連モジュールのインストール
UbuntuにSSH接続し、以下のコマンドでapacheとZabbixに必要なPHPモジュールのインストールを行います。
#Apacheインストール
sudo apt install apache2
#PHP関連モジュールインストール
sudo apt install php php-cgi libapache2-mod-php php-common php-pear php-mbstring
PHP設定
Zabbixで必要なPHPの設定をしていきます。
作業前に、コンフィグのバックアップをします。
#PHP.iniのバックアップ
sudo cp -a /etc/php/7.4/apache2/php.ini /etc/php/7.4/apache2/php.ini.org
PHP.iniファイルを編集して、以下の箇所を変更します。
#PHPのバージョンはインストールされたバージョンに合わせて読み替えてください
sudo vi /etc/php/7.4/apache2/php.ini
以下の箇所を変更
memory_limit 256M
upload_max_filesize 16M
post_max_size 16M
max_execution_time 300
max_input_time 300
max_input_vars 10000
date.timezone = 'Asia/Tokyo'
MySQLインストール・設定
Zabbixで使用するMySQL-Serverをインストールします。
sudo apt install mysql-server
インストールが完了したら、MySQLの設定を行います。
#MySQL Serverへログイン
mysql -u root -p
#Zabbix用のデータベースの作成
#[DB Name]のデータベースの作成(DBはUFT8の文字コードを使用)
CREATE DATABASE [DB Name] CHARACTER SET UTF8 COLLATE UTF8_BIN;
#DBを管理するユーザとユーザのパスワードを設定
CREATE USER '[DB User Name]'@'%'IDENTIFIED BY '[Password]';
#作成したユーザの権限を設定
GRANT ALL PRIVILEGES ON [DB Name].* TO '[DB User Name]'@'%';
#DBから抜ける
quit;
今回は、zabbixというデータベースを作成して、zabbixという名前のユーザを作成しました。
Zabbixインストール・設定
Apache・PHP・MySQLの設定が終わったら、Zabbix本体のインストールと設定を行っていきます。
#Zabbixのリポジトリをダウンロード
wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+focal_all.deb
Zabbixのレポジトリについては、Zabbix公式サイトに記載されているので、インストールするZabbixのバージョンを確認してください。
Zabbix Download
#ダウンロードしたパッケージをインストール
sudo dpkg -i zabbix-release_5.0-1+focal_all.deb
レポジトリをインストールした後は、APTのアップデートを必ず実施します。
APTのアップデートを実施しない場合、Zabbixに必要なパッケージが更新されず、インストールに失敗するパッケージが出てきます。
#パッケージリストのアップデート
sudo apt update
#パッケージのアップデート
sudo apt upgrade
#Zabbix関連パッケージのインストール
apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent zabbix-apache-conf
Zabbix関連のパッケージがインストールできたら、Zabbixが使用するDBのデーブルをインポートしていきます。
Zabbixで必要なテーブルはSQLファイルとしてZabbixのインストール時に展開されます。
そのため、GZの解凍→SQL文の発行という流れで設定していきます。
#Zabbixで必要なSQL文の解凍
cd /usr/share/doc/zabbix-server-mysql
gzip -d create.sql.gz
#ZabbixのDBに対してSQL文を発行
mysql [DB Name] < create.sql
このコマンドを実行すると、Zabbix用のDBに必要なテーブル等が展開されます。
また、このコマンドを実行した場合、当環境では5分ぐらいプロンプトが戻ってきませんでした。
気長に待ちましょう。
Zabbixのデータベース作成が完了したら、Zabbix本体の設定を行います。
#Zabbix configのバックアップ
sudo cp -a /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.org
#Zabbix configの編集
sudo vi /etc/zabbix/zabbix_server.conf
#ZabbixのDBに関する情報を記載
DBName=[DB Name]
DBUser=[DB User Name]
DBPassword=[DB Password]
サービスの再起動・自動起動
ある程度設定が完了したら、設定を行ったサービスの再起動を行います。
再起動後の確認は、systemctl statusで行っています。
再起動後にstatusが生きていれば問題ないと思います。
#Apacheの再起動
sudo systemctl restart apache2
#Apacheの再起動後確認
sudo systemctl status apache2
#MySQL Serverの再起動
sudo systemctl restart mysql
#MySQL Server再起動後確認
sudo systemctl status mysql
#Zabbix Serverの再起動
sudo systemctl restart zabbix-server
#Zabbix Serverの再起動後確認
sudo systemctl status zabbix-server
各種再起動が完了したら必要なサービスの自動起動を設定します。
#Apacheの自動起動
sudo systemctl enable apache2
#MySQL Serverの自動起動
sudo systemctl enable mysql
#Zabbix Serverの自動起動
sudo systemctl enable zabbix-server
Zabbix初期設定
上記の手順が完了したら、ブラウザより以下のアドレスにアクセスします。
http://[ZabbixのIP or FQDN]/zabbix
初回アクセスを行うと、Zabbixの初期設定画面が表示されます。
[Next Step]を選択し、次に進みます。
必要な設定・パッケージがインストールされているかのチェックが入ります。
すべてOKになっていれば[Next Step]を選択し、次に進みます。
Zabbixで使用するDBの情報を入力します。
基本的には、[Databese name][User][Password]を入力すれば問題ありません。
Zabbix Serverのホスト名や名前を設定できます。
基本的にはデフォルトで問題ありません。
最終確認です。問題がないようであれば[Next Step]を選択しましょう。
初期設定が完了したら、[Finish]を選択します。
初期設定が完了したら、ログイン画面が飛ばされるので、ログインします。
Zabbixの初期パスワードは以下になります。
- ユーザ名 : Admin
- パスワード : zabbix
ダッシュボードの画面が表示されたらZabbixのインストールは完了です。
Zabbixの日本語化
デフォルトだとZabbixは英語になっています。
これは、OSに日本語のロケールが存在していないためです。
ZabbixにSSHし、以下のコマンドを実行します。
#OSのロケール設定
sudo dpkg-reconfigure locales
上記コマンドを実行すると、ロケールの設定が表示されます。
この画面で、[ja_JP.UTF8 UTF8]を選択します。
対象の項目まで移動し、スペースキーで選択します。TABキーで左画面を抜けれるので、OKを選択してあげましょう。
なお、デフォルトで英語系のチェックが入っていますが、この設定は外さなくても問題ないです。
最後に、デフォルトで使用するロケールを選択する画面が表示されるため、[ja_JP.UTF8 UTF8]を選択します。
ロケールの設定が完了したら、以下のコマンドでApacheとZabbixを再起動します。
#Apacheの再起動
sudo systemctl restart apache2
#Apacheの再起動後確認
sudo systemctl status apache2
#Zabbix Serverの再起動
sudo systemctl restart zabbix-server
#Zabbix Serverの再起動後確認
sudo systemctl status zabbix-server
再起動後、Zabbixのページをリロードし、[User settings]-[User]-[Language]を選択し、言語を[Japanese (ja_JP)]に設定して[Update]を押下します。
ページがリロードされ、ダッシュボードが日本語になっていれば日本語化は成功です。
まとめ
今回は、UbuntuにZabbixをインストールしました。
ZabbixといえばCentOSが選ばれることが多く、日本語の記事が少なめでトラブルシューティング時に色々と厄介な部分が出てきそうです。
しかし、OSの違いやZabbixの仕組みを理解していれば、設定の方法等も読み替えることができ、OSやバージョンの違いもある程度は吸収することができると思います。
次回のZabbixの記事はAgent監視やSNMP監視等の監視の部分に重きをおいて記事にできれば良いなと思います。
コメント