Edited at

Zabbix Proxy + Hyclops をAWS上で検証してみた

More than 5 years have passed since last update.

前回の投稿でAWS上のZabbix Proxyが出来たので、Hyclopsについても検証してみました。


やりたいこと

Hyclops1.jpg

各リージョンにZabbixProxy+Hyclopsを導入し、監視をものすごく楽にしたい。

AutoScaleなんかも気にしないでいきたい。


Zabbix-ServerにHyclopsを入れた場合

Hyclops2.jpg

Zabbix Proxy経由で上手くHyclopsが連動してくれるかなぁと思ったのですが、Zabbix-Serverが主となります。(そりゃそうだ)

①CloudWatch等からAWS APIを用いて全リージョンのEC2を取得し、Zabbix-Serverに登録します。その時に以下のように登録されます。

Zabbixの表示:[Hyclops用ホスト名][AWSコンソール上で見えるName][Instance ID]

ホスト名   :Public DNS

IPアドレス :Public IP

ただし、標準がホスト名となっているので、ホスト名を使って通信に行くと思われます。そうするとAWSの仕様上PrivateIPで返ってきちゃいます。

②登録したEC2を監視しようとします。

【結論】

TOKYO、EUともにZabbix-Serverから監視しに行ってしまい、狙ったとおりになりません。


Zabbix-ProxyにHyclopsを入れた場合

◆Hyclopsの設定

そもそも入るかどうか不安でしたがいけました。手順は私の過去の投稿をごらんください。

違いは/opt/hyclops/hyclops.confのZabbixServerの指定にきちんとZabbix-ServerのIPを書いてあげることです。

◆Zabbix-Agentの設定

PrivateIPでの通信なので、Zabbix-ProxyのPrivateIPを/etc/zabbix/zabbix_agentd.confに記述してください。

◆セキュリティグループの設定

Zabbix-ProxyとZabbix-Agentそれぞれについてお互いのセキュリティグループで10050-10051を許可するようにしてください。セキュリティグループを許可した場合は、所属EC2のPrivateIP通信を許可します(過去の実験)。

Hyclops3.jpg

◆挙動

Hyclops4.jpg

①CloudWatch等からAWS APIを用いて全リージョンのEC2を取得し、Zabbix-Serverに登録します。(Zabbix-ServerにHyclopsを入れた場合と同じ)

②登録したEC2を監視しようとします。無事Zabbix-Proxyから各Agentの値を取り、Zabbix-Serverに返してくれます。

が・・・・・

EU以外の国も監視してしまいます。

【結論】

嬉:Zabbix-Proxy+HyclopsでEUのEC2を自動監視できた

悲:狙ってないリージョン(TOKYO)もにZabbix-Proxyから監視しに行ってしう。

  →リージョン毎にZabbix-Proxy+Hyclopsにすると全リージョンEC2がめっちゃ登録

  される

これも今後の検討事項となりました。