pg_monzの導入手順と PostgreSQL監視の実態
今回はpg_monzを導入する手順とpg_monzを使った監視運用の実態について解説します。
動作環境
pg_monz を使用するには以下のソフトウェアが必要です。
ソフトウェア名 | バージョン |
---|---|
Zabbix | 2.0以上 |
PostgreSQL | 9.2以上 |
また、PostgreSQLの情報取得にはZabbixエージェントの機能を利用するため、監視対象のサーバーにZabbixエージェントを導入する必要があります。ここではZabbixサーバー、エージェント導入方法の解説は割愛します。
導入手順
ここからはpg_monzの導入手順について解説します。なお、今回の解説ではZabbixのバージョン2.0.8を使っていますので、別バージョンのZabbixを利用した場合に一部手順が異なることがあります。
1. pg_monzのダウンロード
pg_monzのダウンロードサイト(https://github.com/pg-monz/pg_monz/releases)からモジュールをダウンロードします。ダウンロードしたアーカイブファイルを展開するとpg_monzディレクトリの中に以下の4つのファイルが格納されています。
ファイル名 | 役割 |
---|---|
pg_monz_template.xml | 監視テンプレート |
userparameter_pgsql.conf | エージェント用ユーザーパラメータ設定ファイル |
find_dbname.sh | データベースディスカバリスクリプト |
find_dbname_table.sh | テーブルディスカバリスクリプト |
2. エージェント用の設定ファイル、スクリプトのインストール
エージェント用ユーザーパラメータ設定ファイル(userparameter_pgsql.conf)を Zabbix エージェントがインストールされているマシンの所定の場所にコピーします。例えば、Zabbixエージェントが /usr/local/zabbix/ にインストールされている場合は以下の場所にファイルをコピーします。
/usr/local/zabbix/etc/zabbix_agentd.conf.d/userparameter_pgsql.conf
また、上記ファイルが読み込まれるようzabbix_agentd.confのInclude 設定を追加します。なお、設定の反映には再起動が必要です。
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
次にローレベルディスカバリで使用するスクリプトをコピーし、Zabbix Agentの起動ユーザー(デフォルトzabbix)に実行権限を付与します。デフォルトでは /usr/local/bin 以下にインストールされることを想定していますので、以下のコマンドを実行してください。
cp find_dbname.sh find_dbname_table.sh /usr/local/bin chmod +x /usr/local/bin/find_dbname.sh chmod +x /usr/local/bin/find_dbname_table.sh
3. 監視テンプレートのインポート
Zabbix の Web 管理画面にログインし、以下の手順でテンプレートをインポートします。タブの「設定 (Configuration)」 - 「テンプレート (Templates)」を選択し、テンプレート一覧を表示します。
右上の「インポート (Import)」をクリックして表示される画面で、「インポートするファイル (Import file)」に pg_monz_template.xml を選択して「インポート (Import)」をクリックします。
インポートに成功すると、テンプレート一覧に「PostgreSQL Check」が追加されます。