Zabbix 5.0 対応 Amazon Linux / Amazon Linux 2 でのZabbix Server自動構築


Amazon Linux 向けの Zabbix Server 自動構築スクリプトを紹介します。

このスクリプトを利用する事により約2分でZabbix 環境を構築することができます。

デモサイトや機能検証はもちろん、
本番環境でも利用可能です。

インスタンス作成

自動構築スクリプトを利用してZabbixServeインスタンスを構築して行きます。

1.マネージメントコンソールでインスタンス作成をクリックします。

2.インスタンスOSの選択
今回のスクリプトはAmazon LinuxおよびAmazon Linux2に対応してます。
好みや要件に合わせて選択してください。

3.インスタンスタイプの選択
インスタンス内でMySQL(MariaDB)が動作するため、インスタンスサイズはt2.small以上にしてください。本番利用の際はZabbixのチューニングパラメータを元に適切なインスタンスサイズを選択してください。

4.インターネットからパッケージを取得する必要があるので、インターネットアクセスが可能なサブネットに配置してください。
NATゲートウェイなどがあるのであればプライベートサブネットでもかまいません。

5.UserDataにLaunch-ZabbixServer-on-AmazonLinux.shの内容を張り付けてください。
Launch-ZabbixServer-on-AmazonLinux.sh

6.パラメータの設定
今回はZabbix 4.0 構築が目的ですので、version=の値を4.0 に設定してください。
amazonlinux= の値は選択したAmazon Linux AMIに合わせて
Amazon Linuxであれば amzn1
Amazon Linux2であれば amzn2 に設定してくだし。

その他のパラメーターはスクリプトのコメントを参考に必要があれば変更してください。
変更せずにローンチしても問題ありません。

7.デモサイトや機能評価目的であればディスクサイズは8GBのままで問題ありません。
本番利用などであれば、適宜サイズを拡張してください。

8.タグは機能に影響しませんので、適宜設定してください。

9.フロントエンドアクセスのため80番ポートおよび、Zabbixの10051番ポートを開けてください。
SSHアクセスは要件に合わせて選択してください。
ZabbixServerを構築するだけであればSSHアクセスは不要です。

10.将来のメンテナンスやチューニングに合わせてキーペアを設定するか、セッションマネージャーなどの利用のためキーペア無しで構築するかはポリシーに合わせて選択してください。
今回の構築でキーペアを利用する事はありません。

11.インスタンスが作成されたら、UserDataの処理が完了するまで2分ほどお待ちください。
(スクリプト自体は67秒程度で完了しますが、OSの起動、再起動時間を含めると2分程度かかります)

Zabbix初期設定

1.http://<インスタンスIP>/zabbixにアクセスします。
Zabbixの初期設定画面が表示されます。Next Stepをクリックします。

2.全てのチェック項目がOK になっていますのでNext Stepをクリックします。

3.DB接続情報を入力します。

Userdata抜粋
dbname=zabbix #ZabbixDB名
dbuser=zabbix #ZabbixDBユーザ名
dbpassword=zabbix #ZabbixDBパスワード

UserDataに入力したパラメータの値をDB接続情報に入力します。

デフォルトでは
Database namezabbix
User zabbix
Password zabbix
です。 入力したら Next Stepをクリックします。

4.ZabbixServerプロセスへの接続情報を入力します。
変更項目はありません。Nameは複数のZabbixServerを見る際に見分けられる名前を入力してください。

Next Step をクリックします。

5.設定項目を確認したら Next Step をクリックします。

6.初期設定は完了しました。 Finishをクリックします。

Zabbixログイン

1.Zabbixのログイン画面が表示されます。
UsernameAdmin
Passwordzabbixを入力して
Sine Inをクリックしてください。

2.Zabbix 4.0 のダッシュボードが表示されます。

日本語表示への変更

1.Administration-Usersを選択します。

2.guestユーザを選択します。

3.guest ユーザのLanguageJapanese(ja_JP)に変更して
Updeteをクリックします。

これにより、ログイン画面の表示が日本語になります。

4.Adminもguestと同様にLanguageJapanese(ja_JP)に変更します。

5.任意のページをリロードすれば日本語表示に切り替わります。

今回のスクリプトについて

これで Zabbix 4.0 環境が構築されました。
UserDataのみでZabbix 4.0 の環境が構築されました。

今回のスクリプトは Zabbix 4.0 だけではなく、 Zabbix 3.0 3.4 4.0 4.2 4.4 5.0に対応していますので、 機能比較や機種転換手順書の作成などにもご利用いただけます。

Zabbix 4.0 のスムースな導入にぜひご活用ください。

Zabbix 5.0 での注意点

Zabbix 5.0 ではphp7.2以降が必要です。
このためAmazon LinuxではAgentのみが提供しています。
Server を構築するには Amazon Linux2が必要です。
また、amazon-linus-extras をから php 7.2 をインストールする必要があります。

amazon-linus-extras
amazon-linux-extras install lamp-mariadb10.2-php7.2 epel php7.2 -y 

自動構築スクリプトの中では 上記のコマンドでphp7.2をインストールしています。

本番向け対応

今回のスクリプトではEC2 on MySQLにてZabbix Serverを構築しています。
本番環境など、より可用性が必要な環境では今回のスクリプトでZabbixServerを構築いただいたあと、一旦AMIを作成してください。

作成したAMIから再度EC2インスタンスをローンチする際に
Zabbix-for-RDS.shをUserDataに張り付けてローンチを行ってください。

Zabbix-for-RDS.shを利用する事により、EC2無いのZabbixDatabaseのdumpデータを作成し、RDS for MySQLに対してデータ移行を実施し、zabbix_server.confおよびwebフロントエンドのdb接続情報をRDSに変更して起動します。

ユーザによる変更操作は必要ありません。

まとめ

Launch-ZabbixServer-on-AmazonLinux.shをご利用いただくことで、2分で任意のバージョンのZabbixServerを構築していただく事が可能です。

テストから本番環境に移行する際には
Zabbix-for-RDS.shスクリプトを利用して頂く事で、ユーザーの操作無くRDSをバックエンドとしたZabbixServerを構築することができます。

お手軽快適なZabbixライフを満喫してください。

なお各スクリプトではヒストリテーブルの圧縮設定などある程度のチューニング済の状態でローンチされるようになっています。