metricbeatをパッケージ(yum / apt)から入れる際の落とし穴


環境


  • Ubuntu 18.04LTS (CentOS6.5でも同じ)

  • Metricbeat 6.4


TL;DR

リポジトリからmetricbeatをインストールすると、 modules.d / kibana ディレクトリが存在しないので、tarballから設定をコピってこなければ何もデータが飛ばない。


詳細

以下の手順に従って、metricbeatをインストールしても思った通りに動作しない

https://www.elastic.co/guide/en/beats/metricbeat/current/setup-repositories.html

インストールは成功するし、metricbeat自体は動作するが、データが一切送られない。

原因は、 /etc/metricbeat/modules.d/ 以下が存在しないため。

modules.d 以下にはどのメトリックを送るかの設定ファイルが存在しなければならないが存在しないので何も送信されない。


対応

https://www.elastic.co/downloads/beats

ここからtarballをダウンロードして、展開すると modules.dkibana ディレクトリがあるので、中身ごと、/etc/metricbeat/ 以下にコピーする。

その後、metricbeatを再起動するとメトリックが送信されるようになる。


蛇足

modules.dが入らないのは、もしかすると、あえてこうしているのかもしれません。

バージョンアップの時にconfが上書きされると割と気づきにくい事故になってしまうので、それを避ける狙いなのかも。。