zabbix設定1) zabbix-server設定

　vpsにサーバメンテナンス監視ツールzabbixを導入し、別のvpsの監視を行うように構築した。導入したvpsはCentOS7、監視対象のvpsはCentOS6、CentOS7(自分自身）、Rockylinux8である。
　導入したvpsの正式なバージョンは以下である。

~~~linux
# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
~~~

　zabbixは結局は5.0をインストールすることになった。

## データベースのインストールと設定

　zabbixで用いるデータベースを選択して設定する。今回はMySQLと互換性があるMariaDBを選んだ。
　以下のようにインストールする。

~~~linux
# yum install mariadb mariadb-server
・・・・・・
Installed:
  mariadb.x86_64 1:5.5.68-1.el7       mariadb-server.x86_64 1:5.5.68-1.el7
・・・・・・
~~~

　サービスを起動し、再起動時にも起動するように設定する。

~~~linux
# systemctl enable mariadb.service
# systemctl start mariadb.service
~~~

　初期設定を行う。全てyesでよい。MaraiaDBのパスワードを設定する。

~~~linux
# mysql_secure_installation
・・・・・・
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!
・・・・・・
~~~

　データベースにログインする。先に設定したMariaDBのパスワードを入れる。

~~~linux
# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 5.5.68-MariaDB MariaDB Server

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)]>
~~~

　zabbixデータベースを作成する。

~~~linux
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
~~~

　ユーザを設定してzabbixデータベースのパスワードを設定する。

~~~linux
MariaDB [(none)]> create user zabbix@localhost identified by 'zabbixデータベースパスワード';
Query OK, 0 rows affected (0.00 sec)
~~~

　ユーザにzabbixデータベースの権限を与える。

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

　データベースを終了する。

~~~linux
MariaDB [(none)]> quit;
Bye
~~~

## SELinuxとファイアウォールの無効化

　zabbixで他のvpsの監視のために設定段階ではSELinuxとファイアウォール設定を無効化しておく。設定ができたら再度設定し直すようにする。

 以下を参照のこと。
　[SELinuxの無効化](https://qiita.com/naga_kt/items/47e9dd08272c1ff552a1#selinux%E3%81%AE%E7%84%A1%E5%8A%B9%E5%8C%96)
　[ファイアウォールのポート設定](https://qiita.com/naga_kt/items/a93913d4c4aec4ff7eeb)

## zabbix-serverのインストール
### 最新版(6.3)をインストールしてエラー

　最新版(6.3)をインストールしようとしたが、エラーになった。

~~~linux
# rpm -Uvh https://repo.zabbix.com/zabbix/6.3/rhel/7/x86_64/zabbix-release-6.3-1.el7.noarch.rpm

# yum install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent2
・・・・・・
Error: zabbix50 conflicts with zabbix40-4.0.39-1.el7.x86_64
・・・・・・
~~~

　仕方がないので、一旦削除した。

~~~linux
# yum remove zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent

# rpm -e zabbix-release-6.3-1.el7.noarch

~~~

### zabbix5.0をインストール

　ネットでCentOS7への導入の実績があるzabbix5.0をインストールすることにした。
　レポジトリをインストールする。

~~~linux
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
~~~

　レポジトリを掃除する。

~~~linux
# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: base epel extras updates zabbix zabbix-non-supported
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
~~~

　zabbix-serverをインストールする。

~~~linux
# yum install zabbix-server-mysql
・・・・・・
Installed:
  zabbix-server-mysql.x86_64 0:5.0.31-1.el7

Complete!
~~~

　データベースのテンプレートを作成したzabbixデータベースに読み込ませる。

~~~linux
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password:
~~~

　zabbix-server設定を行う。設定ファイルは/etc/zabbixにある。

~~~linux
# cd /etc/zabbix
# ls -lrt
total 40
-rw------- 1 root zabbix 22252 Jan 30 17:05 zabbix_server.conf
~~~

　zabbix_server.confのバックアップを取っておいて設定を変更する。zabbixデータベースのパスワードを記載する。

~~~linux
# cp -p zabbix_server.conf zabbix_server.conf-org
# vi zabbix_server.conf
# diff zabbix_server.conf zabbix_server.conf-org
125d124
< DBPassword=zabbixデータベースのパスワード
~~~

## zabbix-server起動

　以下のようにして起動し状態を確認する。

~~~linux
# systemctl start zabbix-server
# systemctl status zabbix-server
● zabbix-server.service - Zabbix Server
   Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; disabled; vendor preset: disabled)
   Active: active (running) since Tue 2023-01-31 14:15:10 JST; 12s ago
  Process: 9451 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
 Main PID: 9453 (zabbix_server)
   CGroup: /system.slice/zabbix-server.service
・・・・・・
~~~

　正常に起動されたことが確認できたら、自動起動設定をしておく。

~~~linux
# systemctl is-enabled zabbix-server
enabled
~~~



---
zabbix設定2) zabbix-agent2設定(自身の監視)
https://qiita.com/naga_kt/items/b40ff4a1308fa8373d38
に続く。


---

## 参考記事

・ MariaDB
CentOS7 MariaDB(MySQL)インストール手順
https://qiita.com/iamdaisuke/items/adc561e057a69afebad8

・CentOS7へのzabbix5.0インストール
Zabbixの構築手順(CentOS 7,MySQL)インストールとログインまで
https://atsushinotes.com/procedure_zabbix_install_to_login_centos-mysql-apache/

Zabbix 5.0をCentOS 7にインストール(SCL編)
https://qiita.com/atanaka7/items/429d7a3151542420c944

Zabbix インストール CentOS7 yum編
https://server-recipe.com/3138/