監視サーバーをAWS上で構築し、CML上のネットワーク機器/サーバーを監視します。監視ソフトウェアはZabbixを利用します。
【前回】AWS上での監視サーバー(Zabbix)構築【3.AWSのRDS作成】
【次回】AWS上での監視サーバー(Zabbix)構築【5.AWSとCMLのVPN接続】
ネットワーク構成
下記のネットワーク環境を構築し、AWS上のEC2(Zabbixサーバー)から、CML上のネットワーク機器/サーバーを監視できるようにしていきます。
Zabbixのインストール
こちらの手順を参考にEC2を作成し、SSH接続します。
yumのパッケージをアップデートします。
sudo yum -y update
SELinuxが無効となっていることを確認します。
getenforce
[ec2-user@ip-10-0-0-100 ~]$ getenforce
Disabled
無効化されていない場合は、SELinuxのコンフィグを修正し、再起動します。
sudo vi /etc/selinux/config
SELINUX=disabled
sudo reboot
Zabbixのリポジトリをインストールします。
sudo rpm -Uvh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-2.el7.noarch.rpm
zabbix-server-mysql、zabbix-web-mysql、zabbix-web-japanese、zabbix-agentをインストールします。
sudo yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-web-japanese zabbix-agent
MySQLのセットアップ
MySQLクライアントをインストールします。
sudo yum -y install mysql mysql-devel
RDS(MySqL)に接続します。マスターユーザー名/パスワードは、RDS作成の際に設定したものです。
sudo mysql -h RDSのエンドポイント -P 3306 -u マスターユーザー名 -p
[ec2-user@ip-10-0-0-100 ~]$ sudo mysql -h zabbix-database-1.xxxxxxxxxxx.rds.amazonaws.com -P 3306 -u admin -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.0.23 Source distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [(none)]>
RDSのエンドポイント名は、AWSの下記画面で確認できます。
Zabbix用のデータベースを作成します。
create database zabbix character set utf8 collate utf8_bin;
ユーザー(zabbix)を作成し、権限を付与します。※”password”の部分は任意のパスワードを設定します。
create user 'zabbix'@'%' identified by 'password';
grant all privileges on zabbix.* to zabbix@'%';
MySQLからログアウトします。
quit;
MySQLに作成したZabbix用のデータベースに初期データを登録します。パスワードを聞かれるので、上記で設定したzabbixユーザーのパスワードを入力します。1分ほど時間がかかりますが、プロンプトが返ってくれば成功です。
sudo zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -h RDSのエンドポイント -P 3306 -u zabbix -p zabbix
Zabbixのコンフィグファイル修正
zabbix_server.confを修正します。
sudo cp -p /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.backup
sudo vi /etc/zabbix/zabbix_server.conf
下記を追記します。
DBHost=RDSのエンドポイント
DBPassword=上記で設定したzabbixユーザーのパスワード
[ec2-user@ip-10-0-0-100 ~]$ sudo vi /etc/zabbix/zabbix_server.conf
# DBHost=localhost
DBHost=zabbix-database-1.xxxxxxxxxxxxx.xxxxxxxxxxxxxx.rds.amazonaws.com
# DBPassword=
DBPassword=password
zabbix.confを修正します。
sudo cp -p /etc/httpd/conf.d/zabbix.conf /etc/httpd/conf.d/zabbix.conf.backup
sudo vi /etc/httpd/conf.d/zabbix.conf
下記を追記します。
php_value date.timezone Asia/Tokyo
[ec2-user@ip-10-0-0-100 ~]$ sudo vi /etc/httpd/conf.d/zabbix.conf
# php_value date.timezone Europe/Riga
php_value date.timezone Asia/Tokyo
Zabbixの起動
Zabbixを起動し、自動起動設定を追加します。
sudo systemctl restart zabbix-server zabbix-agent httpd
sudo systemctl enable zabbix-server zabbix-agent httpd
Zabbixの設定
ブラウザで「http://(EC2のパブリックIPv4アドレス)/zabbix」に接続します。
Welcome to Zabbix の画面が表示されるので、「Next step」をクリックします。
全てOKとなっていることを確認します。
下記の通り入力します。
Database host:RDSのエンドポイント名
Password:上記で設定したzabbixユーザーのパスワード
下記のエラーが表示される場合は、こちらの手順を参考にRDSへパラメータグループを設定してください。
Cannot connect to the database.
Error connecting to database: Server sent charset unknown to the client. Please, report to the developers
Zabbix server details は、デフォルトのままで大丈夫です。
設定内容を確認します。
Congratulations!と表示されれば、設定完了です。
Zabbixの初期ユーザー(Admin)と初期パスワード(zabbix)でログインします。
Zabbixのトップ画面が表示されることを確認します。
Zabbixの日本語化
右上の人型のマークをクリックします。
Languageで「Japanese(ja_JP)」を選択し、「Update」をクリックします。
日本語化されました。
これで、AWS上での監視サーバー(Zabbix)構築【4.Zabbixのインストールと設定】の説明は完了です!
【前回】AWS上での監視サーバー(Zabbix)構築【3.AWSのRDS作成】
【次回】AWS上での監視サーバー(Zabbix)構築【5.AWSとCMLのVPN接続】