Docker監視用のZabbix Agent
以前、会社のシステムをDocker化する際にZabbix Agentのために「monitoringartist/dockbix-agent-xxl-limited」を利用していました。
参考元:https://team-6.hatenablog.jp/entry/2017/08/11/220510
一ヶ月くらいテスト期間が終わり運営を初めて間も無く急に以下のエラーがで動かなくなってしましました。
Freeware licence - Usage of this binary is restricted to official monitoringartist Docker images only.
提供しているサイトに入ってみると書いておりました。
参考元:https://github.com/monitoringartist/dockbix-agent-xxl
一ヶ月くらいはなんで動いたのかと思いましたが、先ずは対応が優先なので色々検索して見ましたがほとんどが同じ製品を使う例かDockerにZabbixサーバーを入れて利用する内容でした。
一日検索したらOSが違いますが、基本的にはLinux(CentOs)なので試して以下のURLを参考で実行しました。
参考元:https://qiita.com/_BSmile_/items/5fe13bb6305de8f98ccd
お〜上手くいっている!!
.....
エラー
だが、「https://qiita.com/_BSmile_/items/5fe13bb6305de8f98ccd#%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8A%E7%9B%A3%E8%A6%96%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB%E3%81%AF%E4%BD%BF%E3%81%88%E3%82%8B」こちらのモジュールの設定で以下のDockerログで起動ができなくなりました。
cannot load module "zabbix_module_docker.so": /usr/lib/modules-load.d/zabbix_module_docker.so: invalid ELF header
参考サイトのモジュールのリンクは既になくなったので、モジュールは以下のところでDebian8をダウンロードしました。(注意:ダウンロードのリンク次第が一度リダイレクトされるのでHtmlを開いて元々のURLを利用)
https://github.com/monitoringartist/zabbix-docker-monitoring
ログを分析したらCoreOs用のZabbixAgent(https://github.com/bhuisgen/docker-zabbix-coreos/tree/master/files)が古すぎるのが原因そうでした。
対策
先ず、https://github.com/bhuisgen/docker-zabbix-coreos/tree/master/etc/zabbixをクロンしておく。
その後、以下のURL(Agentが3.0を想定)から該当するものをダウンロードして「files/zabbix-agent_2.2.7+dfsg-1.1_amd64.deb」の代わりに利用する。
Dockerfileの「zabbix-agent_2.2.7+dfsg-1.1_amd64.deb」ファイル名をダウンロードしたファイル名「zabbix-agent_3.0.18-1+jessie_amd64.deb」に変更する。
これでOKでした。「monitoringartist/dockbix-agent-xxl-limited」と同じことが出来ました。