目次~
#contents
*概要 [#f9494492]
**前提 [#e21bd649]
ZABBIX Server 4.0α版のインストール手順。~
RPM形式では提供されていないため、ソースコードからのコンパイルを行う。~
**環境 [#jdcc47dd]
Google Cloud PlarformのインスタンスにZabbix 4.0を導入する。~
Zabbix ServerはCompute Engine上のインスタンスに導入し、データベースはCloud SQL(第2世代 MySQL 5.7)を使用する。~
*手順 [#xa80d434]
**GCPの準備 [#z306ab33]
***インスタンスの準備 [#yaeceb85]
以下の工程は省略~
-Zabbix Server用インスタンスの作成(CentOS7)~
-静的な外部IPの確保とZabbix Server用インスタンスへの付与~
-Cloud SQLのインスタンス作成~
***Zabbix Server用インスタンスの設定 [#vb2e02a5]
-SE Linux無効化~
# vi /etc/selinux/config
SELINUX=disabled
-Frewalld無効化~
systemctl disable firewalld
-アップデートの実行
yum update -y
**コンパイル [#y2897d69]
***パッケージの導入 [#p6205385]
コンパイルに必要となるパッケージとミドルウェアを導入する。~
-関連パッケージの導入
yum install -y httpd
yum install -y fping
yum install -y gcc
-ライブラリ導入
yum install -y php php-bcmath php-cli php-common php-gd php-ldap php-mbstring php-mysql php-pdo php-xml
yum install -y libxml2-devel libevent-devel curl-devel mariadb-devel
yum install -y net-snmp net-snmp-utils net-snmp-devel
***事前準備 [#fda526f3]
コンパイル前に必要な処理を行う。~
-ユーザ追加
groupadd zabbix
useradd -s /bin/nologin -g zabbix zabbix
-ディレクトリ作成
mkdir /var/run/zabbix
chown zabbix.zabbix /var/run/zabbix
mkdir /var/log/zabbix
chown zabbix.zabbix /var/log/zabbix
mkdir /etc/zabbix
chown zabbix.zabbix /etc/zabbix
-テンポラリファイルの自動生成設定
echo "d /var/run/zabbix 0755 zabbix zabbix" > /etc/tmpfiles.d/zabbix.conf
***コンパイル [#ma6d99f2]
ソースコードをダウンロードし、コンパイルする。~
-ソースの解凍とコンパイル
tar xfvz zabbix-4.0.0alpha5.tar.gz
cd zabbix-4.0.0alpha5
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
make install
-Frontendのコピー
cp -rf frontends/php /usr/share/zabbix
chown apache.apache /usr/share/zabbix/conf
-設定ファイルの作成
cp conf/zabbix_server.conf /etc/zabbix/
cp conf/zabbix_agentd.conf /etc/zabbix/
touch /etc/sysconfig/zabbix-server
touch /etc/sysconfig/zabbix-agent
-リンクの作成
cd /usr/sbin/
ln -s /usr/local/sbin/zabbix_server zabbix_server
ln -s /usr/local/sbin/zabbix_agentd zabbix_agentd
cd /usr/bin/
ln -s /usr/local/bin/zabbix_sender zabbix_sender
ln -s /usr/local/bin/zabbix_get zabbix_get
**設定 [#aa628790]
***データベースの作成 [#h5d59902]
-スキーマとデータの投入
cat database/mysql/schema.sql | mysql -u zabbix -p zabbix -h [Cloud SQL IP]
cat database/mysql/images.sql | mysql -u zabbix -p zabbix -h [Cloud SQL IP]
cat database/mysql/data.sql | mysql -u zabbix -p zabbix -h [Cloud SQL IP]
***起動ファイルの作成 [#t2c9783a]
systemd用の制御ファイルはソースには含まれていないため、Zabbix 3.0等のパッケージに含まれているものを流用する。~
-設定ファイルの配置
cp zabbix-server.service /usr/lib/systemd/system/
cp zabbix-agent.service /usr/lib/systemd/system/
-自動起動設定
systemctl enable zabbix-server
systemctl enable zabbix-agent
systemctl enable httpd
***httpdサーバ設定 [#p5ed0264]
httpdの設定ファイルもソースには含まれていないため、Zabbix 3.0等のパッケージに含まれているものを流用する。~
-設定ファイルの配置
cp conf/zabbix.conf /etc/httpd/conf.d/
***Zabbixの設定 [#iea0040e]
-/etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
PidFile=/var/run/zabbix/zabbix_server.pid
DBHost=[Cloud SQL IP]
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
Timeout=4
LogSlowQueries=3000
-/etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=10
EnableRemoteCommands=1
Server=127.0.0.1
ServerActive=127.0.0.1
HostnameItem=system.hostname
***サーバ再起動 [#g6142a4a]
サーバの再起動を行い、プロセスが起動することを確認する。~
***Frontendの設定 [#rc541807]
ブラウザでFrontendにアクセスを行い、初期設定を行う。~
http://[ip]/zabbix
**その他 [#j2ae0dc5]
***グラフの日本語化対応 [#ea8b6ec1]
Zabbixには日本語フォントが含まれていないため、グラフ描画等で日本語を表示することができない。~
この問題に対処するため、IPAフォントを組み込み、日本語描画に対応させる。~
-IPAフォントのインストール
yum -y install ipa-gothic-fonts ipa-mincho-fonts ipa-pgothic-fonts ipa-pmincho-fonts
cd /usr/share/zabbix/fonts
cp /usr/share/fonts/ipa-gothic/ipag.ttf ./
-フォント指定の変更
vi /usr/share/zabbix/include/defines.inc.php
【変更前】 define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name
【変更後】 define('ZBX_GRAPH_FONT_NAME', 'ipag'); // font file name