Zabbixで PostgreSQL を監視! pg_monz のご紹介 Zabbix Conference Japan 2015 2015年11月20日 SRA OSS, Inc. 日本支社 マーケティング部 http://www.sraoss.co.jp/ 会社概要 社名: SRA OSS, Inc. 日本支社 設立: 2005年7月 支社長: 石井 達夫 資本金:100万米国ドル 事業内容 § Linux, PostgreSQLを中心としたオープンソースソフトウェアのサポート § オープンソースソフトウェアを用いたシステム開発のコンサルティング § PowerGres の開発・販売 § その他オープンソースソフトウェア関連プロダクト販売 加盟団体 § オープンソースビジネス推進協議会 § 日本データベース学会 § 日本PostgreSQLユーザ会 § PostgreSQL エンタープライズコンソーシアム § OpenAM コンソーシアム COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 2 SRA OSSのOSS関連サポートサービス PostgreSQL/PowerGres サポート&保守サービス § ヘルプデスク、障害対応 OSSプロフェッショナルサポートサービス § 33種類以上の幅広いOSSをまとめてワンストップでサポート § インシデント制 Zabbix関連サービス § Zabbixサポートサービス (ヘルプデスク、障害対応) § 導入支援コンサルティング / 構築支援サポート Hinemos関連サービス § Hinemosサポートサービス (ヘルプデスク、障害対応) § 導入支援コンサルティング / 構築支援サポート Fluentd エンタープライズサポートサービス (2015/10/14~) § TRESURE DATA社様との協業 OSSサポートサービス § サーバ、ソフトウェア単位の個別サポート COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 3 pg_monz(ぴーじもんず) PostgreSQL monitoring template for Zabbix ZabbixでPostgreSQL の監視を行うためのテンプレート http://pg-monz.github.io/pg_monz/ 2013/11/05 バージョン 1.0リリース 2015/03/31 バージョン 2.0リリース 開発 TIS株式会社様 SRA OSS,Inc.日本支社 共同 ライセンス Apache License Version 2.0 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 4 pg_monz v1.0 機能 監視機能 § PostgreSQLサーバーの死活監視 § PostgreSQLのログ監視 § データベースサイズの監視 § トランザクション処理状況の監視 § 滞留クエリ処理の監視 など Zabbix のディスカバリ機能を利用し、データベース やテーブルを自動検出し、自動で監視を開始する COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 5 pg_monz v1.0 反省点 PostgreSQL単体の監視 § クラスタリング構成に未対応だった 監視項目1個に対して1個のクエリ発行 § PostgreSQLサーバでSQL発行が多発してしまった § 同時刻の関連がある値が見れなかった 取得した値を列挙しただけ § 関連があるデータをグルーピングして表示していなかった COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 6 pg_monz v 2.0では PostgreSQLクラスタリング構成対応 1回のクエリで複数個の監視データを取得 表示の改善 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 7 PostgreSQLクラスタリング構成 pgpool-II 機能 • 負荷分散 • フェイルオーバ • クエリキャッシュ PostgreSQL Streaming Replication 機能 • 同期/非同期 レプリケーション COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 8 Streaming Replication 監視機能 ü Primary-Standby状態監視 1号機に障害が発生2号機を Primaryに昇格させた場合の イベント COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 9 ü 同期状況監視 § LLDでスタンバイ固有情報を自動取得 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 10 ü Write query block監視 Ø 同期レプリケーションでStandbyが1台もいない場合に、 Primaryサーバで書き込みクエリが止まってしまう Ø 書き込みクエリではなく参照クエリで監視 ü split-brain監視 Ø Primaryサーバが複数立ち上がっていないことを監視 ü コンフリクト監視 ü Streaming Replication固有のプロセス監視 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 11 pgpool-II 監視機能 ü pgpool-II 死活監視 ü クライアント利用状況 Ø 利用可能接続数、使用中接続数 ü コネクションプール利用状況 ü クエリキャッシュ状況監視 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 12 ü バックエンド監視 Ø pgpool-IIが接続しているPostgreSQLの状態 Ø ロール、負荷分散ウエイト、ステータス pgpool-IIがPostgreSQLを 切り離したときのイベント COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 13 ü pgpool-II watchdog機能の監視 ü pgpool-IIの切り替え ü delegate_ip(仮想IP)の監視 ü split-brain監視 仮想IP 仮想IP watchdog pgpool-II COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 14 その他 細かい改善 ü 不要領域の状況監視 Ø 不要領域の推測値をデータベースサイズと一緒にグラフ化 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 15 ü 取得不可 Ø 原因が分かるように COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 16 性能改善 ディスカッション Zabbixのモジュールを作成してはどうか? PostgreSQLのバックグランドプロセスを作成してはどうか? 簡単に使えるようにしたい COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 17 性能改善 ü 1度のクエリで、複数の監視データを取得 Ø zabbix_senderを利用 Zabbixサーバ PostgreSQLサーバ get命令 SQL発行 zabbix_sender まとめて返却 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 18 表示の改善 ü アプリケーション名を監視種類ごとに整理 Ø PostgreSQLユーザが分かり易い用語で表記 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 19 pg_monz 提供テンプレート Template Template Template Template Template App App App App App PostgreSQL PostgreSQL SR PostgreSQL SR Cluster pgpool-II pgpool-II watchdog COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 20 使い分け Template App PostgreSQL § Streaming Replication を使用していない PostgreSQL向けのテンプレート PostgreSQL 1台運用 Streaming Replicationを使用していない PostgreSQL 複数台運用 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 21 Template App PostgreSQL SR § Streaming Replicationを利用している PostgreSQL向けテンプレート § Template App PostgreSQLも自動的にリンクされる Primaryサーバから レプリケーションしている場合 カスケード接続 Standby Primary Primary Standby Standby Standby COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 22 Template App PostgreSQL SR Cluster § 物理サーバに当てるテンプレートではなく、論理的なクラスタを1台の サーバをして捉えてリンクさせるテンプレート § Zabbixでは適当なノードを作成する(しかない) § 同じグループにPostgreSQLサーバを配置 § グループ内で整合性が保たれているかどうか評価 ホスト名:PostgreSQL Cluster Standby Primary グループ内にPrimary サーバが複数存在すれ ば通知 PostgreSQL グループ COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. Standby 23 Template App pgpool-II § 全てのモード向けテンプレート SR,native,コネクションプール、ロードバランス モードに依存しない作りとなっている オンメモリクエリキャッシュの監視はデフォルト無効 pgpool-II COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 24 Template App pgpool-II watchdog § 適当なホストに当てるテンプレート § 同じグループにpgpool-IIサーバを配置 § グループ内で整合性を確認 ホスト名:PostgreSQL Cluster 仮想IP pgpoolグループ watchdog グループ内に仮想IPが 複数存在すれば通知 COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 25 pg_monzの想定環境 対象バージョン § Zabbix 2.0以降 § PostgreSQL 9.2以降 § pgpool-II 3.4以降 URL § https://github.com/pg-monz/pg_monz COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 26 ご清聴ありがとうございました COPYRIGHT(c) SRA OSS, Inc. Japan All Rights Reserved. 27
© Copyright 2025 ExpyDoc