:::: MENU ::::

ZabbixでPostgreSQLの監視が出来るpg_monzをインストール


こんばんは、sovaのはき猫です。

ZabbixでPostgreSQLの監視がしたく、pg_monzを試してみました。

pg_monzの公式サイト

基本的には公式サイトの手順に沿って行けば問題なくインストール出来ました。
が、パスワード認証に対応していないらしく、今回の環境に合わせて少しカスタマイズしました。

監視するまでに実施したことをメモしておきます。

①Zabbix Agentのユーザパラメータの追加

まずはZabbix Agent側にPostgreSQLを監視する為のSQL情報が定義してあるUserParameterを配置します。

gitからuserparameterの設定ファイルをダウンロード

ユーザパラメータの配置

sqlスクリプトの配置

②Zabbix Serverへテンプレートをインポート

gitからTemplateファイルをダウンロードする

Zabbixの管理画面より設定->テンプレートよりダウンロードしたテンプレートのxmlファイルをインポートする

公式サイトにはテンプレート名がPostgreSQL Checkと書いてありますが、インポートされたテンプレートファイルは Template App PostgreSQL という名前なので注意

インポートしたTemplate App PostgreSQLのマクロを修正

③PostgreSQLサーバのテンプレートにTemplate App PostgreSQLを割当

監視したいホストにインポートしたテンプレートを割り当てます。
これで監視が開始されるかと思いましたが。。。

④追加作業

①〜③まででこれで監視がうまくいくのはPostgreSQLへのローカル接続がtrustの設定になっている場合のみです。
今回の環境はローカルからの接続でもパスワード認証にしていた為、Zabbix Agentのログに以下が出力されていました。

ユーザ postgres のパスワード:
psql: fe_sendauth: no password supplied

その為、find_dbname.shとfind_dbname_table.shとuser_parameterを全て修正してpostgresのローカルドメインでの接続のみパスワード無しで接続出来るようにしました。

これで監視が開始されました。
パスワード認証に対応していないのがちょっと微妙ですが、ZabbixでPostgreSQLの監視が出来るようになるので、オススメです。


So, what do you think ?