Amazon LinuxとZabbixで始める監視サーバ
クラウドから自宅サーバを監視するのがマイブームです。ここではAmazon EC2にZabbixをインストールする方法を紹介します。
前提条件
EC2上でLinuxインスタンスを起動します。今回は Micro instance, Amazon Linux x86_64 を使用しました。以下が正常に動作するようにしておいてください。
EC2と自宅サーバの間はVPNトンネルを張るようにしてください。OpenVPNがおすすめです。また、アラートメールを送信できるよう、sendmailやPostfixの設定を済ませておいてください。
インストール準備
Zabbixのインストールではいくつかの依存パッケージが必要になりますが、ほとんどはyumでインストールできます。例外として、iksemelはAmazon Linuxに用意されていないため、Zabbixリポジトリからインストールします。
wget http://www.zabbix.jp/binaries/relatedpkgs/rhel5/x86_64/zabbix-jp-release-5-3.noarch.rpm sudo rpm -ivh zabbix-jp-release-5-3.noarch.rpm sudo alternatives --config zabbix-jp-release sudo vim /etc/yum.repos.d/zabbix-jp.repo # :s/rhel$releasever/rhel5/g sudo yum install iksemel-devel
今回は TNKの気になること: Amazon Linux用Zabbix 1.8.4のRPM を利用させて頂きました。githubからSRPMをダウンロードします。
SRPMをリビルドします。不足している依存パッケージが表示された場合はyumでインストールしてください。
sudo rpmbuild --rebuild zabbix-1.8.4-1.amzn1.src.rpm
Zabbixのインストール
/usr/src/rpm/RPMS/x86_64/ に生成されたRPMをインストールします。私の環境では以下を入れました。
- zabbix-1.8.4-1.amzn1.x86_64.rpm
- zabbix-agent-1.8.4-1.amzn1.x86_64.rpm
- zabbix-server-1.8.4-1.amzn1.x86_64.rpm
- zabbix-server-mysql-1.8.4-1.amzn1.x86_64.rpm
- zabbix-web-1.8.4-1.amzn1.x86_64.rpm
- zabbix-web-mysql-1.8.4-1.amzn1.x86_64.rpm
sudo mysql -p zabbix < /usr/share/doc/zabbix-server-1.8.4/schema/mysql.sql sudo mysql -p zabbix < /usr/share/doc/zabbix-server-1.8.4/data/data.sql
Zabbix Serverの設定ファイルにデータベース接続情報を記述します。Zabbix Agentの設定ファイルも確認しておきましょう。Zabbix Webを設置するパスには /usr/share/zabbix へのシンボリックリンクを張ります。
sudo vim /etc/zabbix/zabbix_server.conf sudo vim /etc/zabbix/zabbix_agentd.conf cd /var/www/html/example sudo ln -s /usr/share/zabbix
chkconfigまたはntsysvで、起動時にZabbix ServerやZabbix Agentが開始するようにしておきます。
以上のステップが完了したら、WebブラウザでZabbixを設置したURLにアクセスします。インストール画面にしたがって進みます。PHPの設定不足を指摘されたら直してリトライします。