Amazon Linux 2:Zabbix 4.0 LTS インストール

AWS(Amazon Web Services)上のEC2 + RDS(Aurora MySQL)の構成に、オープンソースの統合監視ソフトウェア「Zabbix 4.0 LTS」を構築します。(2018/12/02作成)

Integrated monitoring software StartupStockPhotos / Pixabay

オープンソースの統合監視ソフトウェア「Zabbix」とは

Zabbix はアレクセイ・ウラジシェフ(Alexei Vladishev)によって作られた、ネットワーク管理ソフトウェアである。様々なネットワークサービス、サーバ 、その他のネットワークハードウェアのステータスを監視・追跡できる。現在はウラジシェフが設立したZabbix社によって開発が継続されている。(出典: Wikipedia)

0.環境

  • Zabbix Server (4.0.2)
  • EC2(Amazon Linux 2)
  • RDS(Aurora MySQL)

1.前提事項

本紙は、AWSのEC2の中に「nginx+php(php-fpm socket)」環境が構築済みであること前提にしています。

2.Zabbixのインストール

1)RPMのインストール

$ sudo rpm -ihv https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

2)サーバー、フロント、エージェント、MySQLインストール

$ sudo yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get mysql

3.データベース設定

1)Zabbixのデータベースの作成

$ mysql -h mydbinstance-cluster-1.cluster-xxxxxxxxxxxx.us-west-2.rds.amazonaws.com -P 3306 -uawsuser -p
MySQL [(none)]> create database zabbix character set utf8 collate utf8_bin;
MySQL [(none)]> grant all on zabbix.* to zabbix@`%` identified by '<Password>';
MySQL [(none)]> flush privileges;

2)Zabbixのテーブル作成および初期データの登録

$ sudo zcat /usr/share/doc/zabbix-server-mysql-4.0.2/create.sql.gz | mysql -uawsuser -h mydbinstance-cluster-1.cluster-xxxxxxxxxxxx.us-west-2.rds.amazonaws.com -p zabbix

3)zabbix_server.confにDB接続情報を記載

$ sudo cp -p /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.ORG
$ sudo vi /etc/zabbix/zabbix_server.conf

4)Zabbixの自動起動設定およびZabbixの起動

$ sudo systemctl start zabbix-server.service
$ sudo systemctl start zabbix-agent.service

$ sudo systemctl enable zabbix-server.service
$ sudo systemctl enable zabbix-agent.service

$ sudo systemctl is-enabled zabbix-server.service
$ sudo systemctl is-enabled zabbix-agent.service

4.zabbix-web設定

1)ドキュメントRootにフロントwebのシンボリックリンクを張る

$ sudo chown nginx:nginx /etc/zabbix/web
$ pwd
/usr/share/nginx/html
$ sudo ln -s /usr/share/zabbix .

<h4><strong>2)zabbix-web設定(nginxコンフィグレーション例)</strong></h4>

$ sudo vi /etc/nginx/nginx.conf
…
server {
	listen 80 default_server;
	listen [::]:80 default_server;
	server_name  _;
	root /usr/share/nginx/html;
	index index.php index.html index.htm;
	
	include /etc/nginx/default.d/*.conf;
	
	location / {
	}

	location ~ \.php$ {
		include        fastcgi_params;
		fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
		fastcgi_pass   unix:/var/run/php-fpm/www.sock;
	}
}

3)セットアップウィザードに従う

http://{インストール環境FQDN}/zabbix/

セットアップ一覧:

  • Welcome
  • Check of pre-requisites
  • Configure DB connection
  • Zabbix server details
  • Pre-installation summary
  • Install

セットアップ完了:
Congratulations! You have successfully installed Zabbix frontend.
Configuration file “/etc/zabbix/web/zabbix.conf.php” created.

5.付属:グラフの日本語文字化けの修正

1)Zabbix使用フォントの変更

変更前) DejaVuフォント
https://dejavu-fonts.github.io/

変更後) IPAフォントのダウンロード
https://ipafont.ipa.go.jp/old/ipafont/download.html

$ wget https://ipafont.ipa.go.jp/old/ipafont/IPAfont00303.php -O IPAfont00303.zip

$ sudo mv IPAfont00303.zip /usr/share/fonts/

$ sudo unzip /usr/share/fonts/IPAfont00303.zip

$ ls -1 /usr/share/fonts/IPAfont00303
IPA_Font_License_Agreement_v1.0.txt
ipagp.ttf <---- IPA ゴシック
ipag.ttf <---- IPA Pゴシック
ipamp.ttf <---- IPA 明朝
ipam.ttf <---- IPA P明朝
Readme_IPAfont00303.txt

$ ls -l /etc/alternatives/zabbix-web-font
lrwxrwxrwx 1 root root 38 Nov 30 06:49 /etc/alternatives/zabbix-web-font -> /usr/share/fonts/dejavu/DejaVuSans.ttf

$ sudo rm /etc/alternatives/zabbix-web-font

$ sudo ln -s /usr/share/fonts/IPAfont00303/ipagp.ttf /etc/alternatives/zabbix-web-font

$ ls -l /etc/alternatives/zabbix-web-font
lrwxrwxrwx 1 root root 39 Nov 30 12:54 /etc/alternatives/zabbix-web-font -> /usr/share/fonts/IPAfont00303/ipagp.ttf

以上

About yoshimasa

埼玉県さいたま市在住、2男3女のパパです。Linux系の技術情報を中心にまとめています。1978年2月生まれ。