そーだいなるらくがき帳

そーだいが自由気侭に更新します。

iptablesの監視 ~ mackerel-plugin-conntrackを読み解く

この記事は Mackerel プラグインアドベントカレンダー(全部CRE) の15日目です。

qiita.com

soudai.hatenablog.com

それでは15日目は mackerel-plugin-conntrack です。

mackerel-plugin-conntrackはiptablesのトラッキング情報の統計情報である ip_conntrack を監視するプラグインです。

github.com

ip_conntrackってなに?って方のためにすごくよくまとまったエントリーがあったのでこちらをどうぞ。

あなたの大量配信サーバ、ip_conntrack溢れていませんか?│株式会社イー・エージェンシー

インストールと設定手順

プラグインプラグイン集として提供しているパッケージの mackerel-agent-plugins に含まれています。 インストール先は /usr/bin/mackerel-plugin-conntrack です。

次にMackerelのプラグインはコマンドですので実行する事ができます。

iptablesの設定は各自行ってください ※ /usr/bin はPATHが通っているので省略出来ます

# mackerel-plugin-conntrack
conntrack.count.used    0       1513308879
conntrack.count.free    32768   1513308879

設定ファイルであるmackerel-agent.confは標準では /etc/mackerel-agent/mackerel-agent.conf にインストールされます。 こちらに下記のとおり追記しましょう。

[plugin.metrics.conntrack]
command = "mackerel-plugin-conntrack"

以上を行った上でmackerel-agentを再起動してください。

見れるメトリック

ip_conntrackについては先ほどのリンクに全て書いてあるので割愛します。

各グラフ定義ごとに説明します。 それでは各グラフ定義ごとに説明します。 また表に出てくるdiffとはプラグイン上で差分値計算をするかどうかです。 となっている項目はプラグインで前回の実行時の値と差分値計算して出力しています。

Conntrack Count

メトリック名(ラベル) プラグインの出力名 diff 説明
current conntrack.count.used 使用しているトラッキング
current conntrack.count.free 空いているトラッキング

シンプルに今使っているトラッキング数と使えるトラッキング数が可視化されます。 iptablesを使うことは多々あると思いますが ip_conntrack の監視をしているところは少ないのでは? 非常にシンプルなプラグインですので気軽に始められ、わかりやすいところも mackerel-plugin-conntrack のいいところです。

iptablesあるある

僕は若かりし頃にも物理Serverでやってしまい、サーバールームまで行ったことがあります。 今回はAWSだったため、致命傷は避けられました。クラウド便利!! 普段、iptablesはAnsible等で一括で設定することが多いとは思いますがテストなどの際はご注意ください!

15日目はiptablesに関連するプラグインについての説明でした。 明日はやってそうでやってないシリーズ第二弾、NTPの監視です。 引き続き、Mackerel プラグインアドベントカレンダーをお楽しみに!

16日目 check-ntpoffset