31歳ほぼ未経験からIT業界へ転職。備忘録と勉強になればと思いサイトを立ち上げました。

IT技術のあれこれ

Zabbix

Zabbixのインストール

投稿日:

zabbix_install_01

 

環境

  • VirtualBox6.1.8
  • OS:CentOS7

 

Zabbix初心者のため、間違いなどがあるかもしれませんので参考程度にお願いします。

 

Zabbixとは

Zabbixは「Zabbix LLC」という企業が開発しており、ネットワークに繋がるさまざまな機器を監視することができる「監視ソフトウェア」です。

監視対象の障害を検知した場合にメールで通知したり、Webのインターフェースで表示することもできます。

ZabbixはGNU General Public License(GPL)v2のライセンスで配布されており、高機能なのにすべての機能を無料で利用することができます。

 

 

Zabbixのインストール

インストール準備

centosをインストール後、アップデートします。

yum update

 

アップデート完了後、再起動で設定反映させます。

shutdown -r now

 

ソフトウェアのインストール

zabbixを動作するために必要なソフトウェアをインストールしていきます。

 

Apacheのインストール

yum -y install httpd

 

phpのインストール

yum -y install php

 

MariaDBのインストール

yum -y install mariadb-server

 

zabbixの公式リポジトリのインストール

今回インストールしているバージョンは「4.4」をインストールしています。

yum -y install https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm

 

Zabbix Serverの関連パッケージをインストール

yum -y install zabbix-web-mysql zabbix-web-japanese zabbix-server-mysql

 

Zabbix Agentのインストール

yum -y install zabbix-agent

 

Apacheの設定

タイムゾーンの変更をするため、以下のファイルを変更します。

vi /etc/httpd/conf.d/zabbix.conf

 

タイムゾーンの変更

# php_value date.timezone Europe/Riga」がコメントアウトされているので、「php_value date.timezone Asia/Tokyo」に変更します。

・変更前

<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 max_input_vars 10000
php_value always_populate_raw_post_data -1
# php_value date.timezone Europe/Riga
</IfModule>

・変更後

<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 max_input_vars 10000
php_value always_populate_raw_post_data -1
# php_value date.timezone Europe/Riga
php_value date.timezone Asia/Tokyo
</IfModule>

 

Zabbix Serverの設定

DBサーバへの接続情報を変更するため、以下のファイルを変更します。

vi /etc/zabbix/zabbix_server.conf

 

接続情報の設定

DBのパスワードを設定します。

・変更前

# DBPassword=

・変更後

# DBPassword=
DBPassword=P@ssword

 

Zabbix Agentの設定

Zabbix Serverからの監視などの設定を変更するため、以下のファイルを変更します。

vi /etc/zabbix/zabbix_agentd.conf

 

リモートコマンドを使用した監視の有効化

・変更前

EnableRemoteCommands=0

Hostname=Zabbix server

・変更後

EnableRemoteCommands=1

Hostname=Zs01

 

DBの自動起動設定

systemctl enable mariadb.service

systemctl start mariadb.service

systemctl status mariadb.service

 

MariaDBの初期設定

mysql_secure_installation

設定内容

Enter current password for root (enter for none):→空エンター

Set root password? [Y/n]→yを入力

New password:→DBのrootユーザのパスワードを入力
Re-enter new password:→再度、入力

Remove anonymous users? [Y/n]→yを入力

Disallow root login remotely? [Y/n]→yを入力

Remove test database and access to it? [Y/n]→yを入力

Reload privilege tables now? [Y/n]→yを入力

 

Zabbix用のデータベースとDBユーザを作成

mysql -u root -p

設定内容

Enter password:→DBのrootユーザのパスワードを入力

MariaDB [(none)]>が表示されたら
CREATE DATABASE zabbix character set utf8 collate utf8_bin;

MariaDB [(none)]>が表示されたら
CREATE USER zabbix@localhost IDENTIFIED BY '<パスワード>';

CREATE USER zabbix@localhost IDENTIFIED BY 'P@ssword';

MariaDB [(none)]>が表示されたら
GRANT ALL ON zabbix.* TO zabbix@localhost;

MariaDB [(none)]>が表示されたら
quit;

 

Zabbix用のスキーマファイルをデータベースに読み込み

zcat /usr/share/doc/zabbix-server-mysql-4.*/create.sql.gz | mysql -u zabbix -p zabbix
Enter password:→P@sswordを入力

 

SELinuxの設定

getenforceコマンドで確認し、disabledになっていない場合、disabledに変更します。

[root@localhost ~]# getenforce
Enforcing

 

SELinuxを無効化

disabledに変更するため、以下のファイルを変更します。

vi /etc/selinux/config

 

・変更前

SELINUX=enforcing

 

・変更後

#SELINUX=enforcing
SELINUX=disabled

 

/etc/selinux/configファイルを変更後、再起動で設定反映させます。

shutdown -r now

 

再起動後確認すると、disabledになっています。

[root@localhost ~]# getenforce
Disabled

 

 

ファイアウォールの設定

Zabbix ServerとZabbix Agentの通信許可の設定をします。

今回は、インストールからGUIへのログインまで、Zabbix ServerとZabbix Agentは同じサーバにインストールしているため、GUIへの接続するhttpのみ設定しました。

・10050/tcp : Zabbix Server から Zabbix Agentのパッシブ監視設定(Zbbixサーバ自身は不要、監視対象サーバでは必要)

・10051/tcp : Zabbix Agent → Serverのアクティブ監視設定(Zabbixサーバのみ必要)

firewall-cmd --add-service=http --zone=public --permanent

firewall-cmd --reload

 

Apacheのサービス起動

systemctl enable httpd

systemctl start httpd

 

Zabbix Serverのサービス起動

systemctl enable zabbix-server

systemctl start zabbix-server

 

Zabbix Agentのサービス起動

systemctl enable zabbix-agent

systemctl start zabbix-agent

 

Zabbix Serverへの接続

WebUIの設定

http://<ZabbixサーバIPアドレス>/zabbix/

接続してGUIの画面が表示されたら、Next stepをクリックします。

zabbix_install_10

 

PHPの全項目がOKになっていたら、「Next step」をクリックします。

zabbix_install_11

 

「Password」の箇所に、DBユーザに指定した、zabbixのパスワードを入力して、「Next step」をクリックします。

zabbix_install_12

 

WebUIを動作させるPHP-FPMとZabbix Serverが同じサーバなので今回は設定変更は特に不要なので「Next step」をクリックします。

zabbix_install_13

 

「Next step」をクリックします。

zabbix_install_14

 

Congratulations!が表示されたらインストールができたので、「Finish」をクリックして完了です。

zabbix_install_15

 

ログイン画面が表示されるので、初期ユーザ名「Admin」、初期パスワード「zabbix」を入力して、「Sign in」をクリックします。

zabbix_install_16

 

GUIが表示されました。

zabbix_install_17

 

日本語設定

ログイン直後が、GUIの表記が英語になっているので、日本語に変更します。

 

右上の人影をクリックします。

zabbix_install_20

 

「Language」を「Japanese(ja_JP)」に変更し、「Update」をクリックします。

zabbix_install_21

 

 

 

-Zabbix

Copyright© IT技術のあれこれ , 2024 AllRights Reserved.