PEM 8.1 -PEM Admin Guide

EnterpriseDB

PEM Administrator’s Guide

このドキュメント>のEnterprise Managerの(PEM)を序文ます。 Postgres Enterprise Manager(PEM)は、 PostgreSQLおよびEDB Advanced Serverデータベースサーバーの管理、モニタリング、およびチューニングにおいて、データベース管理者、システム設計者、およびパフォーマンスアナリストを支援するために設計されたエンタープライズ管理ツール。 PEMは、ほんの一握りから数百台のサーバーまで、単一のコンソールからどこでも管理およびモニタできるように設計されており、データベースのあらゆる側面を完全かつリモートで制御できます。

PEMがサポートするプラットフォームとバージョンの詳細については、次のEDB ウェブサイトしてください。

https://www.enterprisedb.com/services-support/edb-supported-products-and-platforms#pem

このドキュメントでは、 PostgreSQLまたはEDB Postgres Advanced Serverデータベースを意味する* Postgres *を使用しています。

PEM Overview

PEMには、他のPostgreSQL管理ツールにはない多くの利点があります。

  • 管理大挙デザイン - PEMは、エンタープライズ・データベース>のために設計されており、地理的な境界を越えてラージのサーバーの管理に取り組むために構築されています。グローバルダッシュボードでは、すべてのサーバーのアップ/ダウン/パフォーマンスステータスを一目で把握できます。

  • 分散アーキテクチャ-PEMは、オペレーティングシステムプラットフォームに関係なく、統計情報を収集し、マシン上でリモートで操作を実行する能力を最大化する方法で設計されています。

  • グラフィカル管理-データベース管理のすべての側面は、グラフィカルインタフェースを介してPEMクライアントで実行できます。サーバーのスタートアップとシャットダウン、構成管理、ストレージとセキュリティの制御、オブジェクト作成、パフォーマンス管理などを単一のコンソールから処理できます。

  • フルSQL IDE -PEMには、アドホックSQLクエリ、ストアドプロシージャ/ファンクション開発、およびグラフィカルデバッガを提供する堅牢なSQL統合開発環境(IDE)が含まれています。

  • エンタープライズパフォーマンスモニタリング-PEMは、すべての管理対象データベースサーバーに対してエンタープライズクラスのパフォーマンスモニタリングを提供します。軽量で効率的なエージェントは、各データベースサーバーの動作のすべての側面と各マシンの基になるオペレーティングシステムをモニタし、詳細な統計情報をインタフェース内の簡単にナビゲートされるパフォーマンスページに返します。

  • プロアクティブなアラート管理-PEMには、24時間監視されるキーメトリック(メモリ、ストレージなど)ごとにパフォーマンスのしきい値を作成する機能が付属しています。しきい値違反があると、問題の性質と、シチュエーションがサーバーの全体的なパフォーマンスを危険にさらさないようにするために必要なアクションを伝えるアラートが集中ダッシュボードに送信されます。

  • 簡素化されたキャパシティプランニング-パフォーマンス関連のキー統計はすべて自動的に収集され、指定された期間PEMのリポジトリに保持されます。 Capacity Managerユーティリティを使用すると、さまざまな統計情報を選択し、時間の経過とともに傾向分析を実行して、ピークロード期間、ストレージ消費傾向などを把握できます。ツールの予測メカニズムにより、将来のリソース使用量を予測し、それに応じて計画/予算を立てることができます。

  • 監査マネージャー-監査マネージャーは、 Advanced Serverインスタンスの監査ロギングを構成します。このようなデータベースへの接続、データベースから切断し、データベースに対して実行SQLなどのアクティビティを記録することができます。その後、監査ログダッシュボードを使用して、ログをフィルタリングおよびビューログ。

  • ログマネージャー-ログマネージャーウィザードは、中央のテーブルへの(オプショナルの)ログ収集を使用してサーバーロギングパラメータを構成します。ウィザードを使用して、ログファイルのローテーション、ログの宛先、エラーメッセージの重大度などのロギング動作の設定を指定します。サーバーログダッシュボードを使用して、収集されたサーバーログエントリをフィルタリングおよび確認します。

  • ** SQLワークロードプロファイリング**-PEMには、1つ以上のサーバーに対して実行されるSQLステートメントをトレースできるSQLプロファイリングユーティリティが含まれています。 SQLプロファイリングは、アドホックまたはスケジュールされた方法で実行できます。キャプチャーされたSQLステートメントはフィルターに掛けられるため、実行が不十分なSQLステートメントを簡単に識別して調整できます。 SQLステートメントをAdvanced ServerのIndex Advisorに入力して、各ステートメントを分析し、パフォーマンスさせるヘルプに作成する必要がある新しいインデックスに関する推奨事項を作成することもできます。

  • エキスパートデータベース分析-PEMにはPostgres Expertユーティリティが含まれています。 Postgres Expertは、ベストプラクティスの実施目的で選択されたデータベースを分析します。一般的な構成、セキュリティのセットアップなどの領域が調べられます。推奨されるベストプラクティスからの逸脱は、特定の各問題の説明と、物事を正しくするために何をすべきかについてのエキスパートのヘルプとともに報告されます。

  • ストリーミングレプリケーションの監視-ストリーミングレプリケーションダッシュボードをモニタするか、PEMクライアントのオプションを使用して、レプリカノードをプライマリノードにプロモートせることができます。

  • セキュアクライアント接続-PEMは、暗号化されたSSHトンネルを介したセキュアクライアント接続をサポートします。フル機能のPEMクライアントには、安全な接続のための接続情報を提供できるSSHトンネル定義ダイアログが含まれています。

  • ワイドプラットフォームサポート-PEMは、ほとんどのメジャーLinuxおよびWindowsプラットフォームをサポートしています。

pem_architecture installed_pem_overview using_pem_web_interface

</ div>

PEM Architecture

Postgres Enterprise Manager(PEM)は、単一のGUIインタフェースを介してマルチプルのPostgresサーバーをモニタおよび管理するために設計されたツール。 PEMは、インフラストラクチャの次の領域をモニタリングできます。

Note * Postgresという用語は、 PostgreSQL 、 EDB Postgres Advanced Server、またはEDB Postgres Extendedのいずれかを指します。

  • ホスト-1つまたは複数のサーバー(物理的または仮想)およびそれらのオペレーティングシステム。
  • サーバー-ホストで実行されているPostgreSQLまたはEDB Postgres Advanced ServerまたはEDB Postgres Extended(旧称2ndQPostgres)の1つ以上のインスタンス。
  • データベース-1つまたは複数のデータベースと、その中のスキーマオブジェクト(テーブル、インデックスなど)。

PEMは、多数の個々のソフトウェアコンポーネントで構成されています。個々のコンポーネントについて以下に説明します。

  • ** PEMサーバー**-PEMサーバーは、データをモニタリングするためのデータリポジトリとして、およびエージェントとクライアントの両方が接続するサーバーとして使用されます。 PEMサーバーは、 PostgreSQLのインスタンスと、モニタリングデータをストレージするための関連データベース、およびWebサービスを提供するサーバーで構成されます。
  • ** PEMエージェント**-PEMエージェントは、タスクの実行と、エージェントホストおよび監視対象のPostgresインスタンスからPEMサーバーへの統計のレポートを担当します。単一のPEMエージェントは、1つ以上のホストに存在するPostgresのマルチプルのインストール済みインスタンスをモニタできます。
  • ** PEM Webクライアント**-PEM Webインタフェースにより、 Postgresサーバーを管理およびモニタ、PEM拡張機能を利用できます。 WebインタフェースソフトウェアはPEMサーバーとともにインストールされ、サポートされているWebブラウザーを介してアクセスされます。
  • ** SQL Profiler **- SQL Profilerは、PEMのSQL Profilerツールによって分析されるモニタリングデータとクエリープランをレコードするPostgresサーバープラグインです。これはPEMのオプショナルコンポーネントですが、 SQLプロファイラーツールを使用するPostgresの各インスタンスにプラグインをインストールする必要があります。 SQLプロファイラーは、 PostgreSQLサーバーまたはAdvanced Server (PEMサーバーで管理されているものだけでなく)のEDBディストリビューションのサポートされているバージョンで使用できます。詳細およびサポートされているバージョンについては、PEM SQL Profiler Configuration Guideを参照してください。

** PEMアーキテクチャ**

次のアーキテクチャ図は、PEMサーバー、クライアント、管理対象および非管理対象のPostgresサーバー間の関係を示しています。

PEM Architecture

PEMサーバー

PEM Server

PEMサーバはPostgresの、クライアントにWebサービスを提供するApacheウェブサーバのインスタンス、およびPEMエージェントのインスタンスで構成されています。 PEMは、サーバサイドの暗号化プラグインを使用して認証証明書を生成します。

Postgresのインスタンス(データベースサーバ)とApacheウェブサーバ(HTTPD)のインスタンスは、同じホスト上または別のホスト上にあってもよいです。

  • ** Postgresインスタンス(データベースサーバー)-これはバックエンドデータベースサーバです。 PEMサーバーのリポジトリとして機能する pem 名前付けのデータベースをホストします。 pem **データベースには、監視対象の各ホスト、サーバー、およびデータベースから収集されたメトリックデータを格納するいくつかのスキーマが含まれています。

  • ** pem **-このスキーマはPEMアプリケーションのコアです。これには、アプリケーションに必要な構成関数、テーブル、またはビューの定義が含まれています。

  • ** pemdata **-このスキーマには、監視対象データの現在のsnapshotが格納されます。

  • ** pemhistory **-このスキーマには、監視対象の履歴データが格納されます。

  • ** Apache Web Server(httpd)**-PEM Webアプリケーションは、HTTPDを使用してWSGIアプリケーションとしてデプロイされ、クライアントにWebサービスを提供します。次のもので構成されます。

  • ** Webコンテンツプレゼンテーション**-プレゼンテーションレイヤーはWebアプリケーションによって作成されます(例、ブラウザ、ログインページ、..)。

  • ** REST API**-REST APIを使用すると、他のアプリやサービスと統合できます。

  • データベースサーバーの管理/管理-CREATE、ALTER、DROPなどのデータベースサーバーの管理および管理アクティビティは、管理対象サーバーと非管理対象サーバーの両方で実行できます。

  • ダッシュボード/チャート生成-内部的に、Webアプリケーションにはダッシュボードとチャートを生成する機能が含まれています。

  • 管理ツール-Audit Manager、Capacity Manager、Log Manager、 Postgres Expert、 Postgres Log Analysis Expert、Tuning WizardがWebアプリケーションで利用可能になりました。

  • その他のツールは、管理対象サーバーまたは非管理対象サーバーで機能を提供します。

  • ** SQL Profiler UIの統合**- SQL Profilerは、簡単に分析されたセッションコンテンツのトレースを生成します。

  • クエリエディタ/データビュー-クエリエディタでは、データのクエリー、編集、ビューます。

  • デバッガ-デバッガはクエリのデバッグに役立ちます。

  • パフォーマンス診断-パフォーマンス診断は、 Advanced Serverのパフォーマンス分析に役立ちます。

PEMバックエンドデータベースの稼動インスタンスをホストするには、専用のマシンを使用することをお勧めします。ホストは、監視されているデータベースサーバーの数とサーバーが処理しているワークロードに応じて、高レベルのデータスループットのサブジェクト場合があります。

PEMエージェント

PEM Agent

PEMエージェントは、マシンとオペレーティングシステム、およびそれらがバインドされている各Postgresインスタンスからのモニタリングデータの収集を担当します。各PEMエージェントは、1台の物理的または仮想マシンをモニタし、局所的にマルチプル>データベース・サーバをモニタリングすることが可能であることができる-リモート同じシステムにインストールされ、又は-他のシステム上にインストール。また、ユーザ(例、サーバーのシャットダウン、SQLプロファイラトレース、ユーザーが定義したジョブ)によってスケジュールすることができる他のタスクを実行する責任があります。

PEMエージェントは、PEMサーバーのインストールとともにPEMサーバーにデフォルトでインストールされます。通常、PEMホスト上のPEMエージェントと呼ばれます。別途、PEMを使用して監視するPostgresインスタンスをホスティングする他のサーバーにPEMエージェントをインストールすることもできます。

ローカルで監視するかリモートでモニタリングかにかかわらず、PEMエージェントは、SSL証明書ベースの認証を使用して、PostgreSQLのlibpqを使用してPEMサーバーに接続します。 WindowsのPEMエージェントインストーラとLinuxのpemworker CLIは、各エージェントをPEMサーバーに登録し、必要な証明書を生成およびインストールします。

PEMエージェントとPEM Serverの間の唯一の一方通行があることにノートしてください。 PEMエージェントは常にPEMサーバーに接続します。

PEMエージェントは、監視する各データベースサーバに接続できる必要があります。この接続はTCP / IP接続(またはオプションでUnixホストのUnixドメインソケット)を介して行われ、オプションでSSLを使用できます。ユーザは、監視対象サーバーへの接続と認証を構成する必要があります。

構成が完了すると、各エージェントは、ホストと、監視対象の各データベースサーバとデータベースに関する統計情報やその他の情報を収集します。各情報はメトリックと呼ばれ、プローブによって収集されます。ほとんどのプローブは、効率のために一度にマルチプルのメトリックを収集します。収集されるメトリックの例は次のとおりです。

  • ディスクI / O統計
  • ネットワーク統計
  • データベースサーババージョン文字列
  • データベースサーバー構成オプション(GUC)値
  • テーブルアクセス統計
  • テーブルとインデックスのサイズ

PEMプローブのリストはhereにあります。

デフォルトでは、データベースサーバにバインドされたPEMエージェントはOS /データベースモニタリング統計を収集し、その特定のデータベースサーバのスケジュールされたタスク/ジョブを実行し、PEMサーバーのpemデータベースにデータを保存します。

アラート処理、SNMP / SMTPスプーラー、およびNagiosスプーラーデータは、PEMサーバーのpemデータベースに格納され、デフォルトでPEMホストのPEMエージェントによって処理されます。ただし、PEMエージェントのSNMP / SMTPおよびNagiosパラメーターを調整することにより、他のPEMエージェントによる処理を有効にすることができます。

これらのパラメーターの詳細については、Server Configurationを参照してください。

PEM Webクライアント

PEMクライアントは、サポートされているブラウザーで実行されるWebベースのアプリケーションです。クライアントのWebインタフェースはPEMサーバーに接続し、管理対象サーバーまたは管理対象外サーバー、およびそれらに存在するデータベースとスキーマを直接管理できます。

クライアントでは、ダッシュボード、 Postgres Log Analysis Expert、Capacity Managerなどの機能を介してサーバーに記録されたデータを利用するPEM機能を使用できます。

SQLプロファイラープラグイン

あなたは、すべてのサーバー上のSQLプロファイラプラグインをインストールする必要はありませんが、あなたは、SQLプロファイラを使用したい各サーバー上のプラグインをインストールして設定する必要があります。監視されていない開発サーバーにSQLプロファイラーをインストールして構成することもできます。アドホック使用の場合も、 SQL Profilerプラグインを一時的にインストールできます。

プラグインはEDB Postgres Advanced Serverディストリビューションとともにインストールされますが、 PostgreSQLで使用するには別途インストールする必要があります。 SQL Profilerインストーラは、EDB websiteから入手できます。

SQL Profilerは、PEMで管理されていないサーバーで使用できますが、スケジュールされたトレースを実行するには、サーバーにプラグインをインストールし、インストールおよび構成済みのPEMエージェントで管理する必要があります。

SQLプロファイラーの使用の詳細については、PEM SQL Profiler Guideを参照してください。

Installing PEM - Overview

PEMのインストールに関する詳細な手順については、次の場所にあるPEM Installation Guidesを参照してください。

PEMインストールプロセスに含まれる基本的な手順は次のとおりです。

  1. PEMサーバーコンポーネントをインストールします。 PEMサーバソフトウェアとバックエンドデータベース(pem名前付け)は、サポートするhttpdサーバーと同じホストに存在する場合も、別のホストに存在する場合もあります。 PEMサーバーインストーラは、PEMサーバーのホストにPEMエージェントとPEM Webクライアントをインストールします。

  2. PEMで管理する追加の物理的マシンまたは仮想マシンをそれぞれ登録します。便宜上、PEMはリモートモニタリングをサポートしています(監視するサーバーと同じホストにエージェントを配置する必要はありません)。リモートエージェントは、監視対象サーバーから利用可能なすべての情報を取得できないことにノートしてください。各サーバホストにエージェントをインストールできます。

  3. SQLプロファイラコンポーネントを、 SQLキャプチャと分析を実行する各Postgresインスタンスにインストールします。 SQL Profilerインストーラは、 Postgresのインストール場所のプロンプトを求め、必要なソフトウェアをそのディレクトリます。 SQL ProfilerプラグインはAdvanced Serverインスタンスに既にインストールされており、プロファイリングを有効にするための設定のみが必要です。

Using the PEM Web Interface

PEM Webインタフェースは、PEMサーバーとともにインストールされます。サーバーのインストールが完了したら、次の場所に移動して、選択したブラウザーでPEMインタフェースを開くことができます。

  • https://<ip_address_of_PEM_host>:8443/pem

ip_address_of_PEM_hostは、PEMサーバーのホストのIPアドレスを指定します。 Postgres Enterprise Managerログインウィンドウが開きます。

The PEM Login

Postgres Enterprise Manager Loginウィンドウのフィールドを使用して、PEMサーバーで自分自身を認証します。

  • Usernameフィールドにpemデータベースユーザの名前を入力します。最初に接続するユーザ、これはPEMサーバーのインストール時に指定された名前になります。

  • Passwordフィールドにユーザに関連付けられたパスワード。

資格情報を入力したら、LoginをクリックしてPEMに接続します。

PEM Webインタフェースが開き、Global Overviewダッシュボードが表示されます。

The Global Overview

Browserペインには、各サーバーにあるデータベースオブジェクトに関する情報へのアクセスを提供するツリーコントロールが表示されます。ツリーコントロールが展開され、PEMサーバーによって監視されているサーバーとオブジェクトの階層ビューが表示されます。

PEMメニューバー

PEMメニューバーを使用すると、データベースサーバーとそれらのサーバーにあるオブジェクトを管理するために使用できるコマンドと機能にアクセスできます。オプションが無効になっている場合:

  • 現在接続しているデータベースサーバは、選択した機能をサポートしていない可能性があります。

  • 選択されたメニューオプションは、現在のオブジェクトに対して有効でない場合があります(デザイン)。

  • サーバーへの接続に使用したロールには、選択したオブジェクトを変更するための十分な権限がない可能性があります。

PEM Webインタフェースの上部にあるコンテキスト依存メニューにより、環境をカスタマイズ、PEMのエンタープライズ管理機能へのアクセスを提供できます。

ファイルメニュー

The File Menu

Fileメニューを使用して、次のオプションにアクセスします。

Menu Option Action
Preferences Click to open the Preferences dialog to customize your PEM client settings.
Lock Layout Click to open a sub-menu to select the level for locking the UI layout.
Server Configuration Click to open the Server Configuration dialog and update your PEM server configuration settings.
Reset Layout If a workspace panel is popped out by mistake or intentionally it can be reset back to default using Reset Layout.

オブジェクトメニュー

The Object Menu

Objectメニューは状況依存です。 Objectメニューを使用して、次のオプションにアクセスします。

Menu Option Action
Create Click Create to access a context menu that provides context-sensitive selections.
Refresh… Click to refresh the currently selected object.
Delete/Drop Click to delete the currently selected object from the server.
Connect Server Click to open the Connect to Server dialog to establish a connection with a server.
CREATE Script Click to open the Query tool to edit or view the selected script.
Disconnect Server Click to refresh the currently selected object.
BART Click to access a context menu that provides options for removing BART configuration, taking a BART backup, or revalidate the BART configuration.
Clear Saved Password If you have saved the database server password, click to clear the saved password. Enabled only after password is saved.
Clear SSH Tunnel Password If you have saved the ssh tunnel password, click to clear the saved password. Enabled only after password is saved.
Drop Cascade Click to delete the currently selected object and all dependent objects from the server.
Hide Click to hide the currently selected group; to view hidden groups, enable the Show hidden groups option in Preferences.
Properties… Click to review or modify the currently selected object’s properties.
Trigger(s) Click to Disable or Enable trigger(s) for the currently selected table.
Truncate Click to remove all rows from a table (Truncate) or to remove all rows from a table and its child tables (Truncate Cascade).
View Data Click to access a context menu that provides several options for viewing data.

管理メニュー

The Management Menu

Managementメニューを使用して、次のPEM機能にアクセスします。

Menu Option Action
Audit Manager… Click to open the Audit Manager and configure auditing on your monitored servers.
Auto Discovery… Click to open the Auto Discovery dialog to instruct a PEM agent to locate and bind monitored database servers.
Capacity Manager… Click to open the Capacity Manager dialog and analyze historical or project future resource usage.
Log Manager… Click to open the Log Manager dialog and configure log collection for a server.
Manage Alerts… Click to access the Manage Alerts tab and create or modify alerting behavior.
Manage Charts… Click to open the Manage Charts tab to create or modify PEM charts.
Manage Dashboards… Click to open the Manage Dashboards dialog to VACUUM, ANALYZE, REINDEX, or CLUSTER.
Manage Probes… Click to open the Manage Probes dialog to VACUUM, ANALYZE, REINDEX, or CLUSTER.
Postgres Expert… Click to open the Postgres Expert wizard and perform a static analysis of your servers and databases.
Postgres Log Analysis Expert… Click to access the Postgres Log Analysis Expert dialog analyze log file contents for usage trends.
Scheduled Tasks Click to open the Scheduled Tasks tab and review tasks that are pending or recently completed.
Tuning Wizard… Click to open the Tuning Wizard dialog to generate a set of tuning recommendations for your server.
Reports Click to open the Reports dialog to generate the system configuration report and core usage report for your server.

ダッシュボードメニュー

The Dashboards menu

状況依存のDashboardsメニューを使用して、ダッシュボードにアクセスします。

Option Action
Alerts Click to open the Alerts Dashboard for the selected node.
Audit Log Click to open the Audit Log Analysis Dashboard for the selected node.
BDR Admin Click to open the BDR Admin Dashboard for the selected node.
BDR Group Monitoring Click to open the BDR Group Monitoring Dashboard for the selected node.
BDR Node Monitoring Click to open the BDR Node Monitoring Dashboard for the selected node.
Database Server Click to open the Database Analysis Dashboard for the selected node.
I/O Analysis Click to open the I/O Analysis Dashboard for the selected node.
Memory Click to open the Memory Analysis Dashboard for the selected node.
Object Activity Click to open the Object Activity Analysis Dashboard for the selected node.
Operating System Click to open the Operating System Analysis Dashboard for the selected node.
Probe Log Click to open the Probe Log Analysis Dashboard for the selected node.
Server Log Click to open the Server Log Analysis Dashboard for the selected node.
Session Activity Click to open the Session Activity Analysis Dashboard for the selected node.
Storage Click to open the Storage Analysis Dashboard for the selected node.
Streaming Replication Click to open the Streaming Replication Analysis Dashboard for the selected node.
System Wait Click to open the System Wait Analysis Dashboard for the selected node.

ツールメニュー

The Tools menu

Toolsメニューのオプションを使用して、次の機能にアクセスします。

Option Action
Schema Diff Click to open the Schema Diff dialog to compare the schema objects between two database schemas.
Search objects Click to open the Search Objects dialog to search the database objects within a database.
Server Click to access the various server related tools such as Add Named Restore Point, Performance Diagnostics, Queue Server Startup, Queue Server Shutdown, Replace Cluster Primary, Switchover EFM Cluster and SQL Profiler.
Query Tool Click to open the Query tool for the currently selected object.
Reload Configuration Click to update configuration files without restarting the server.
Pause replay of WAL Click to pause the replay of the WAL log.
Resume replay of WAL Click to resume the replay of the WAL log.
Import/Export… Click to open the Import/Export data… dialog to import or export data from a table.
Maintenance… Click to open the Maintenance… dialog to VACUUM, ANALYZE, REINDEX, or CLUSTER.
Backup… Click to open the Backup… dialog to backup database objects.
Backup Globals… Click to open the Backup Globals… dialog to backup cluster objects.
Backup Server… Click to open the Backup Server… dialog to backup a server.
Restore… Click to access the Restore dialog to restore database files from a backup.
Grant Wizard… Click to access the Grant Wizard tool.
Schedule Backup Click to access the Schedule Backup dialog for BART backups.

ヘルプメニュー

The Help menu

Helpメニューのオプションを使用して、オンラインヘルプドキュメントにアクセスするか、PEMインストールに関する情報を確認します。

Option Action
Online Help Click to open documentation for Postgres Enterprise Manager.
REST API Reference Click to open the REST API Reference.
EDB Website Click to open the EDB website in a browser window.
About Postgres Enterprise Manager Click to locate versioning and user information for Postgres Enterprise Manager.

チャート、グラフ、テーブルの制御とカスタマイズ

ダッシュボードの各グラフィックの右上隅にあるアイコンを使用して、現在のユーザセッション用にPEMクライアントに表示されるチャート、グラフ、および表を制御およびカスタマイズします。

The PEM Client chart control icons

次の表に、アイコンに関する情報を示します。

Icons Information
icon6 チャート、グラフ、またはテーブルに関する情報を表示します。
icon1 チャート、グラフ、または表のコンテンツを更新します。
icon3 現在のユーザのチャート、グラフ、またはテーブル設定をカスタマイズします。
icon4 チャートまたはグラフのイメージをダウンロードします。
icon5 チャート、グラフ、またはテーブルで使用されている凡例を表示します。
icon2 チャートまたはグラフをフルスクリーンに展開します。

PEMダッシュボードに表示されるグラフィックのカスタマイズの詳細については、PEMクライアントのオンラインヘルプを参照してください。

オンラインヘルプとドキュメント

PEMには、ツールの使用を支援するビルトインヘルプが含まれています。 PEMのオンラインヘルプにアクセスするには、HelpメニューのHelpオプションからOnline Helpを選択します。

The PEM online help

HelpメニューからEDB ウェブサイトにすばやくアクセスすることもできます。

Registering a Server

PEMでサーバーを管理またはモニタする前に、サーバーをPEMに登録し、エージェントをバインドする必要があります。サーバーはリモートエージェント(異なるホストに存在するエージェント)にバインドできますが、エージェントが同じホストに存在しない場合、インスタンスに関するすべての統計情報にアクセスできません。

サーバーの手動登録

PEMでサーバーを管理またはモニタするには、次のことを行う必要があります。

Advanced ServerまたはPostgreSQLサーバーをPEMサーバーに登録します。 - サーバーをPEMエージェントにバインドします。

Create - Serverダイアログを使用して、サーバーの登録情報を提供し、PEMエージェントをバインドし、PEMクライアントツリーコントロールにサーバーを表示できます。 Create - Serverダイアログを開くには、Objectメニュー(またはサーバーグループのコンテキストメニュー)のCreateオプションをナビゲートし、Server…を選択します。

Accessing the Create – Server dialog

Note * 接続しようとする前に、登録するPostgresサーバーのpg_hba.confファイルがPEMクライアントのホストからの接続を許可していることを保証する必要があります。

The General tab of the Create – Server dialog

Generalタブのフィールドを使用して、サーバーの一般的なプロパティを説明します。

  • 利用Nameフィールドは、サーバ用のユーザフレンドリ>を指定します。指定された名前は、PEM Browserツリーコントロールでサーバーを識別します。
  • グループを使用して、ツリーコントロールでサーバーとエージェントを整理できます。グループを使用すると、より簡単にラージのサーバーを管理しヘルプすることができます。例、稼動、テストグループ、またはLANの特定のグループを持っている場合があります。 Groupドロップダウンリストボックスを使用して、新しいサーバーが表示されるサーバーグループを選択します。
  • Teamフィールドを使用して、 Postgresロール名前を指定します。このロールのメンバーであるサーバーを最初に作成したか、PEMサーバーでスーパーユーザ権限を持つPEMユーザーのみが、PEMにログオンしたときにこのサーバーを表示します。このフィールドを空白のままにすると、すべてのPEMユーザーにサーバーが表示されます。
  • Backgroundカラーセレクターを使用して、サーバーに保存されているデータベースオブジェクトの背後にあるPEMツリーコントロールに表示される色を選択します。
  • Foregroundカラーセレクターを使用して、サーバーに保存されているオブジェクトのPEMツリーコントロールのラベルのフォントの色を選択します。
  • [Connect now?]の横にあるチェックボックスをオンにして、[保存]ボタンをクリックしたときにサーバー接続を試行するようにPEMに指示します。 PEMクライアントが、後の接続試行まで指定された接続パラメーターを検証しないようにする場合は、Connect now?をオフのままにします。
  • Commentsフィールドにサーバーに関するメモを入力します。
The Connection tab of the Create – Server dialog

Connection tabのフィールドを使用して、サーバーの接続の詳細を指定します。

  • Host name/addressフィールドにサーバホストのIPアドレス、または完全修飾ドメイン名前を指定します。 Unixベースのシステムでは、アドレスフィールドを空白のままにして、ローカルマシンでデフォルトのPostgreSQL Unixドメインソケットを使用するか、 PostgreSQLソケットを含む代替パスに設定できます。パスを入力する場合、パスは「/」で始まる必要があります。
  • Portフィールドにホストのポート番号を指定します。
  • Maintenance databaseフィールドを使用して、PEMが接続する初期データベースの名前を指定します。このデータベースには、インストールされたpgAgentスキーマとadminpackオブジェクトが含まれます(両方ともオプショナル)。 PostgreSQL 8.1以降では、メンテナンスDBは通常postgresと呼ばれます。以前のバージョンではtemplate1がよく使用されますが、テンプレートデータベースが乱雑にならないようにpostgresデータベースを作成することをお勧めします。
  • 監視対象サーバーにKerberos認証を使用するには、Kerberos AuthenticationをYesに設定します。デフォルトでは、監視対象サーバーはPEMサーバーと同じ認証メソッドを使用します。監視対象サーバーがKerberos認証を使用しない場合は、config_local.pyファイルでALLOW_DATABASE_CONNECTION_WITHOUT_KERBEROSをTRUEに設定する必要があります。
  • Usernameフィールドにサーバーで認証するときに使用される名前を指定します。
  • Passwordフィールドに、指定したユーザに関連付けられたパスワード。
  • Save password?の横のボックスをオンにして、後で再利用できるようにPEMバックエンドデータベースに暗号化フォーマットでパスワードを保存するようにPEMに指示します。各パスワードはユーザごと、サーバーごとに保存され、他のチームメンバーと共有されることはありません。 PEMは保存されたパスワードを使用して、次回データベースサーバに接続します。保存したパスワードを削除するには、まずデータベースサーバを切断し、次にObject/ContextメニューのClear Saved Passwordメニューアイテムを使用します。
  • Roleフィールドを使用して、サーバーへの接続後にクライアントが使用する特権を割り当てられたロールの名前を指定します。これにより、1つのロールとして接続し、接続が確立されたときに別のロール(このフィールドで指定したもの)の許可を引き受けることができます。接続するロールは、指定されたロールのメンバでなければなりません。
The SSL tab of the Create – Server dialog

SSLタブのフィールドを使用して、SSLを構成します。

  • SSL modeフィールドのドロップダウンリストボックスを使用して、サーバーが使用するSSL接続のタイプを選択します。 SSL暗号化の使用の詳細については、次のPostgreSQL文書を参照してください。

プラットフォーム固有のファイルマネージャダイアログを使用して、SSL暗号化をサポートするファイルをサーバーにアップロードできます。ファイルマネージャにアクセスするには、次の各フィールドの右側にあるアイコンをクリックします。

  • Client certificateフィールドを使用して、クライアントSSL証明書を含むファイルを指定します。 PEMがWebモードでインストールされている場合は、このファイルがデスクトップモードでインストールされている場合、デフォルトの~/.postgresql/postgresql.crtファイルを交換し、<STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.crtます。 SSL接続が確立されない場合、このパラメータは無視されます。
  • Client certificateキーフィールドを使用して、クライアント証明書に使用される秘密キーを含むファイルを指定します。 PEMがデスクトップモードでインストールされている場合、このファイルはデフォルトの~/.postgresql/postgresql.keyを置き換え、PEMがWebモードでインストールされている場合は<STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.keyを置き換えます。 SSL接続が確立されない場合、このパラメータは無視されます。
  • Root certificateフィールドを使用して、SSL認証権限を含むファイルを指定します。このファイルは、デフォルトの~/.postgresql/root.crtファイルを置き換えファイル。 SSL接続が確立されない場合、このパラメータは無視されます。
  • Certificate revocation listフィールドを使用して、SSL証明書失効リストを含むファイルを指定します。このリストで見つかったデフォルトのリストを、置き換えられます。 SSL接続が確立されない場合、このパラメータは無視されます。
  • SSL compression?がTrueに設定されている場合、SSL接続を介して送信されるデータは圧縮されます。デフォルト値はFalseです(圧縮は無効です)。 SSL接続が確立されない場合、このパラメータは無視されます。

警告:証明書、プライベート鍵、および失効リストは、PEMサーバプロセスが実行されるユーザアカウントが所有するサーバー上のユーザーごとのファイル格納領域に格納されます。これは、サーバーの管理者がこれらのファイルにアクセスできることを意味します。この機能を使用する前に、適切な注意を払う必要があります。

The SSH Tunnel tab of the Create – Server dialog

SSH Tunnelタブのフィールドを使用して、SSHトンネリングを構成します。トンネルを使用して、データベースサーバを(仲介プロキシホストを介して)クライアントが直接接続できないネットワーク上にあるサーバーに接続できます。

  • Use SSH tunnelingをYesに設定して、指定したサーバーへの接続時にPEMがSSHトンネルを使用するように指定します。
  • Tunnel hostフィールドに、SSHホストの名前またはIPアドレス(クライアント接続が転送される)を指定します。
  • Tunnel portフィールドで、SSHホストのポート(クライアント接続が転送される)を指定します。
  • Usernameフィールドに、SSHホストのログイン特権を持つユーザの名前を指定します。
  • Authenticationフィールドで、SSHホストに接続するときに使用される認証のタイプを指定します。
  • Passwordを選択して、PEMがSSHホストへの認証にパスワードを使用することを指定します。これがデフォルト。
  • Identity fileを選択して、接続時にPEMがプライベートキーファイルを使用することを指定します。
  • SSHホストが認証にプライベートキーファイルを期待している場合、Identity fileフィールドを使用してキーファイルの場所を指定します。
  • SSHホストがパスワードを期待している場合は、パスワードを指定するPasswordフィールドを使用、またはIDファイルが使用されている場合は、パスフレーズ。
The Advanced tab of the Create – Server dialog

Advancedタブのフィールドを使用して、サーバーの管理に使用される詳細を指定します。

  • Host Address1フィールドにサーバホストのIPアドレスを指定します。

  • DB restrictionフィールドを使用して、ツリーコントロールに表示されるデータベースを制限するためにテーブルに対して使用されるSQL制約を指定します。例、次のように入力できます、だけとデータベースを表示するには、PEMブラウザを指示します。あなたもに対する制約を入力して、データベースのプロパティ]ダイアログからデータベースに示されているスキーマを制限できることに注意してください。

  • Password fileフィールドを使用して、パスワードファイル(.pgpass)の場所を指定します。 .pgpassファイルを使用すると、ユーザは接続時にパスワードせずにログイン。 PEMサーバーに存在する必要があります。詳細については、次のPostgresの文書を参照してください。

  • Service IDフィールドを使用して、データベースサービスプロセスを制御するパラメーターを指定します。 Enterprise Managerディレクトリに格納されているサーバーの場合、サービスIDを入力します。 Windowsマシンでは、これはWindowsサービスの識別子です。 Linuxマシンでは、サーバをスタートするために使用されるinitスクリプトの名前は、サーバーがsystemctlでスタートする/etc/init.dとsystemdにスクリプトの名前です。例、Advanced Serverの11サービスの名前はedb-as-11です。ローカルサーバーの場合、設定はオペレーティングシステムに依存します。

    • -PEMクライアントがWindowsマシンで実行されている場合、十分なアクセス権があれば、ポストマスターサービスを制御できます。サービスの名前を入力します。リモートサーバの場合は、マシン名前の前に追加する必要があります(例:PSE1\pgsql-8.0)。 PEMは、ローカルマシンで実行されているサービスを自動的に検出します。 -PEMクライアントがLinuxマシンで実行されている場合、十分なアクセス権があれば、ローカルマシンで実行されているプロセスを制御できます。 pg_ctlプログラムにアクセスするためのフルパスと必要なオプションを指定します。サービス制御機能を実行すると、PEMはこれにstatus / スタート/ stopキーワードを追加します。例:

    • sudo /usr/pgsql-x/bin/pg_ctl -D /var/lib/pgsql/x/dataここで、xはPostgreSQLデータベースサーバのバージョンです。

  • サーバーがFailover Managerクラスターのメンバである場合、PEMを使用してクラスターの状態をモニタ、必要に応じてプライマリノードを交換できます。 PEMでフェールオーバーマネージャーをモニタできるようにするには、EFM cluster nameフィールドを使用してクラスター名前を指定します。クラスター名前は、フェールオーバーマネージャークラスタープロパティファイルの名前のプレフィックスです。クラスター・プロパティー・ファイルがefm.properties名前付けされた場合、クラスタ名前がefmです。

  • PEMを使用してフェールオーバーマネージャークラスターのステータスをモニタいる場合は、EFM installation pathフィールドを使用して、フェールオーバーマネージャーバイナリファイルの場所を指定します。デフォルトでは、Failover Managerバイナリファイルは/usr/edb/efm-x.x/binにインストールされます。x.xはFailover Managerのバージョンを指定します。

The PEM Agent tab of the Create – Server dialog

PEM Agentタブのフィールドを使用して、PEMエージェントの接続の詳細を指定します。

  • Remote monitoring?スライダーをYesに移動して、PEMエージェントが監視対象サーバーと同じホストにないことを示します。リモートモニタリングが有効になっている場合、監視対象サーバーのエージェントレベルの統計はカスタムチャートおよびダッシュボードで利用できず、リモートサーバは一部のPEMユーティリティ(監査マネージャー、容量マネージャー、ログマネージャー、 Postgres Expertなど)からアクセスできませんチューニングウィザード)。

  • Bound agentlabelの右側にあるドロップダウンリストボックスを使用して、PEMエージェントを選択します。 1つのエージェントでマルチプルのPostgresサーバーをモニタできます。

  • Hostフィールドに、データベースサーバに接続するときにエージェントが使用するIPアドレスまたはソケットパスを入力します。デフォルトでは、エージェントはGeneralタブに表示されるホストアドレスを使用します。 Unixサーバーでは、/tmpなどのソケットパスを指定できます。

  • サーバーへの接続時にエージェントが使用するPort番号を入力します。デフォルトでは、エージェントはPropertiesタブで定義されたポートを使用します。

  • SSLフィールドのドロップダウンリストボックスを使用して、SSL操作モードを指定します。 require、prefer、allow、disable、verify-caまたはverify-fullを指定します。

Mode Description
require サーバーとエージェント間のトランザクションにSSL暗号化を要求するには。
prefer SSL暗号化が使用可能な場合に、サーバーとエージェントの間でSSL暗号化を使用します。
allow サーバーが必要とする場合、接続がSSLを使用できるようにします。
disable エージェントとサーバー間のSSL暗号化を無効にします。
verify-ca SSL暗号化を要求し、認証権限によって登録された証明書を使用してサーバーに認証を要求するため。
verify-full SSL暗号化を要求し、サーバーがtrusted認証権限によって登録された証明書を使用して認証することを要求するには。

SSL暗号化の使用の詳細については、PostgreSQL documentationを参照してください。

  • Databaseフィールドを使用して、エージェントが最初に接続するPostgresデータベースの名前を指定します。 BDRノードを登録する場合は、このフィールドでBDR対応のデータベース名前を指定します。

  • User nameフィールドで、サーバーに接続するときにエージェントが使用するロールの名前を指定します。指定されたロールがデータベーススーパーユーザでない場合、一部の機能が期待どおりに機能しないことに注意してください。指定されたロールがデータベーススーパーユーザでない場合に機能しない機能のリストについては、Agent privilegesを参照してください。 Kerberos認証メソッドを使用している場合は、このフィールドにbdr_monitorまたはbdr_superuserロールを持つユーザを指定します。

Postgresバージョン10以降を使用している場合、pg_monitorロールを使用して、必要な特権を非スーパーユーザーに付与できます。 pg_monitorロールの詳細については、Default Rolesを参照してください。

  • User nameフィールドで、サーバーに接続するときにエージェントが使用するユーザの名前を指定します。指定されたユーザーがデータベーススーパーユーザユーザではない場合、一部の機能は期待どおりに動作しないことに注意してください。 Postgresバージョン10以上を使用している場合、pg_monitorロールを使用して、スーパーユーザー以外に必要な権限を付与できます。 pg_monitor ロールについては、Default Rolesを参照してください。

  • エージェントがサーバーに接続するときに使用するパスワードをPasswordフィールドに指定し、Confirm passwordフィールドにもう一度入力して確認します。パスワードを指定しない場合は、エージェントの認証を手動で構成する必要があります。例、.pgpassファイルを使用できます。このファイルは、エージェントがインストールされているシステム上に存在し、アクセス可能である必要があります。

  • Allow takeover?スライダーをYesに設定して、サーバーが別のエージェントに引き継がれるように指定します。この機能により、例、サーバーが高可用性フェイルオーバープロセスのパートとして別のホストに移動された場合、エージェントはデータベースサーバのモニタリングができます。

The Create Server dialog (BART - General tab)

BARTタブの下のGeneralタブのフィールドを使用して、PEMサーバーにマップするBARTサーバーの一般的なプロパティを説明します。

  • BART serverフィールドを使用して、BARTサーバー名前を選択します。 PEMコンソールで設定されたすべてのBARTサーバーは、このドロップダウンリストされます。
  • Server nameフィールドを使用して、BARTサーバーを使用してバックアップするデータベースサーバの名前を指定します。この名前は、BART構成ファイルに保存されます。
  • Backup nameフィールドを使用して、データベースサーバのバックアップに割り当てるユーザー定義名のテンプレートを指定します。バックアップ名前テンプレートを指定しない場合、バックアップは、BARTが割り当てた整数のバックアップ識別子によってのみ、BARTサブコマンドで被参照できます。
  • Host addressフィールドを使用して、バックアップに構成するデータベースサーバのIPアドレスを指定します。
  • Portフィールドを使用して、バックアップするデータベースに使用するポートを指定します。
  • Userフィールドを使用して、PEMコンソールからBARTを使用してバックアップするデータベースのユーザを指定します。このデータベースサーバの増分バックアップを有効にする場合、ユーザーはスーパーユーザユーザ必要があります。
  • Passwordフィールドを使用して、バックアップするデータベースのユーザのパスワードを指定します。
  • Cluster Ownerフィールドを使用して、データベースクラスタを所有するLinuxオペレーティングシステムユーザアカウントを指定します。これは通常、 オラクルデータベース互換モードでインストールされたAdvanced Serverデータベースクラスターの場合はenterprisedb、 PostgreSQLデータベースクラスターおよびPostgreSQLデータベース互換モードでインストールされたAdvanced Serverデータベースクラスターの場合はpostgresです。
  • Archive commandフィールドを使用して、bart.cfgファイルで使用するアーカイブコマンド文字列のフォーマットを指定します。 Archiveコマンドに入力すると、データベースサーバーのPostgresql.confファイルが上書きされます。サーバーが追加されると、データベースサーバが再起動されるか、データベース構成が再読み込みされます。
  • Allow incremental backup?スイッチを使用して、このデータベースサーバで増分バックアップを有効にするかどうかを指定します。
  • Setup passwordless SSH?スイッチを使用して、データベースサーバーとBARTサーバー間のパスワードレスログインを許可するSSH証明書を作成するかどうかを指定します。パスワードレスSSH認証をセットアップする前に、PEMエージェントをバインドしてください。パスワードなしのSSHは、PEMエージェントによってリモートで監視されているデータベースサーバでは機能しません。
The Create - Server dialog (BART - Misc tab)

BARTタブの下のMiscタブのフィールドを使用して、BARTサーバーのその他のプロパティを説明します。

  • Override default configuration?スイッチを使用して、特定のデータベースサーバ構成でBARTサーバー構成をオーバーライドするかどうかを指定します。
  • Xlogメソッドを使用して、pg_basebackupの実行中にトランザクションログを収集する方法を指定します。
  • Retention policyフィールドを使用して、バックアップの保存ポリシーを指定します。これにより、アクティブなバックアップが廃止としてマークされ、したがって削除の候補となるタイミングが決定されます。保持ポリシーは、バックアップの数または期間(日、週、または月)で指定できます。
  • WAL compressionスイッチを使用して、アーカイブされたXlog / WALファイルをGzipフォーマットで圧縮するかどうかを指定します。 WAL圧縮を有効にするには、gzip圧縮プログラムがBARTユーザアカウントのPATHに存在する必要があります。増分バックアップを取得する必要があるデータベースサーバーでは、wal_compression設定を有効にしないでください。
  • Copy WALs during restoreフィールドを使用して、RESTOREオペレーションを呼び出すときにアーカイブされたWALファイルを収集する方法を指定します。データベースサーバのアーカイブリカバリの前に、アーカイブされたWALファイルをBARTバックアップカタログから&lt; restore_path> / archived_walsディレクトリにコピーするには、有効に設定します。無効に設定すると、データベースサーバのアーカイブリカバリ中に、アーカイブされたWALファイルがBARTバックアップカタログから直接取得されます。
  • Thread countフィールドを使用して、ブロックをコピーするスレッドの数を指定します。 pg_basebackupユーティリティしてバックアップする場合は、thread countを1に設定する必要があります。
  • Batch sizeフィールドを使用して、変更されたブロックのコピーに使用されるメモリのブロック数を指定します。これは増分バックアップにのみ適用されます。
  • Scan intervalフィールドを使用して、WALスキャナが新しいWALファイルをスキャンするまでの秒数を指定します。
  • 利用MBM scan timeoutフィールドは増分バックアップのみに適用でき、タイミングするまでMBMファイルを待機する秒数を指定します。

サーバーのプロパティをビューするには、PEMクライアントツリーコントロールでサーバー名前を右クリックし、コンテキストメニューからProperties…オプションを選択します。サーバーのプロパティを変更するには、Propertiesダイアログを開く前にサーバーから切断します。

自動サーバー検出

モニタするサーバーがモニタリングエージェントと同じホストにある場合は、Auto Discoveryダイアログを使用して登録とバインドのプロセスを簡素化できます。

特定のエージェントの自動検出を有効にするには、Server Auto Discoveryプローブを有効にする必要があります。 Manage Probesタブにアクセスするには、PEMクライアントツリーコントロールでPEMエージェントの名前を強調表示し、ManagementメニューからManage Probes...を選択します。 Manage Probesタブが開いたら、Enabled?列のスライダーコントロールがYesに設定されていることを確認します。

Auto Discoveryダイアログを開くには、PEMクライアントツリーコントロールでPEMエージェントの名前を強調表示し、ManagementメニューからAuto Discovery...を選択します。

The PEM Auto Discovery dialog

Auto Discoveryダイアログが開くと、Discovered Database Serversボックスに、現在PEMエージェントによって監視されていないサーバーのリストが表示されます。サーバー名前の隣のボックスをオンにして、Server Connection Detailsボックスにサーバーに関する情報を表示し、Agent Connection Detailsボックスにエージェントの接続プロパティを表示します。

Check Allボタンを使用して、表示されているすべてのサーバーの横にあるボックスを選択するか、Uncheck Allを使用してサーバー名の左側にあるすべてのボックスの選択を解除します。

Server Connection Detailsボックスのフィールドは、PEMがモニタするサーバーに関する情報を提供します。

  • Nameフィールドで監視対象サーバーの名前を受け入れるか変更します。指定した名前は、PEMクライアントのツリーコントロールに表示されます。
  • [Server group]ドロップダウンリストボックスを使用して、PEMクライアントツリーコントロールでサーバーが表示されるサーバーグループを選択します。
  • Host name/addressフィールドを使用して、監視対象サーバーのIPアドレスを指定します。
  • Portフィールドには、サーバーによって監視されているポートが表示されます。このフィールドは変更できません。
  • Service IDフィールドにサービスの名前を入力します。一部のPEM機能を有効にするには、サービス名前必要があることにノートしてください。
  • デフォルトでは、Maintenance databaseフィールドは、選択したサーバーがPostgresメンテナンスデータベースを使用することを示します。インストールのMaintenance databaseフィールドのコンテンツをカスタマイズします。

Agent Connection Detailsボックスのフィールドは、サーバーへの接続時にPEMエージェントが使用するプロパティを指定します。

  • Hostフィールドには、PEMエージェントのバインドに使用されるIPアドレスが表示されます。
  • User nameフィールドには、選択したサーバーに接続するときにPEMエージェントが使用する名前が表示されます。
  • Passwordフィールドには、指定したユーザ名前に関連付けられたパスワードが表示されます。
  • SSL modeフィールドのドロップダウンリストボックスを使用して、SSL接続設定を指定します。

モニタリングにバインドしているサーバーの接続プロパティの指定が終了したら、OKボタンをクリックしてサーバーを登録します。 Cancelをクリックして、変更を保存せずに終了します。

The registered server

OKボタンをクリックすると、新しく登録されたサーバーがPEMツリーコントロールに表示され、PEMサーバーによって監視されます。

pemworkerユーティリティを使用してサーバーを登録する

pemworkerユーティリティを使用して、PEMサーバーによるモニタリングにサーバーを登録したり、データベースサーバの登録を解除したりできます。登録中、pemworkerユーティリティは、登録コマンドを呼び出したシステムにあるエージェントに新しいサーバーをバインドします。サーバーを登録するには:

Linuxホストでは、次のコマンドを使用します。

pemworker --register-server

Windowsホストでは、次のコマンドを使用します。

pemworker.exe REGISTER-SERVICE

pemworkerユーティリティを呼び出すときに、コマンド文字列にコマンドラインオプションを追加します。各オプションの後には、対応する値が続く必要があります。

Option Description
--pem-user PEM管理ユーザの名前を指定します。必須です。
--server-addr サーバホストのIPアドレス、または完全修飾ドメイン名前を指定します。 Unixベースのシステムでは、アドレスフィールドはローカルマシンでデフォルトのPostgreSQL Unixドメインソケットを使用するために空白のままにするか、 PostgreSQLソケットを含む代替パスに設定できます。パスを入力する場合、パスは/で始まる必要があります。必須です。
--server-port ホストのポート番号を指定します。必須です。
--server-database サーバーが接続するデータベースの名前を指定します。必須です。
--server-user サーバーのモニタリング時にエージェントが使用するユーザの名前を指定します。必須です。
--server-service-name 登録されるサーバーでの操作を制御するデータベースサービスの名前を指定します(STOP、START、RESTARTなど)。オプション。
--remote-monitoring –remote-monitoring句とno(デフォルト)の値を含めて、サーバーがPEMエージェントと同じマシンにインストールされていることを示します。リモートモニタリングが有効(はい)の場合、監視対象サーバーのエージェントレベルの統計はカスタムチャートおよびダッシュボードで使用できず、一部のPEMユーティリティ(監査マネージャー、キャパシティマネージャー、ログマネージャーなど)からリモートサーバにアクセスできません。 Postgres Expert and Tuning Wizard)。必須です。
--efm-cluster-name サーバーを監視するフェールオーバーマネージャークラスターの名前を指定します(該当する場合)。オプション。
--efm-install-path フェールオーバーマネージャーのインストレーションディレクトリへの完全なパスを指定しパス(該当する場合)。オプション。
--asb-host-name エージェントが接続しているホストの名前を指定します。
--asb-host-port データベースに接続するときにエージェントが使用するポート番号を指定します。
--asb-host-db エージェントが接続するデータベースの名前を指定します。
--asb-host-user データベースでの認証時にエージェントが提供するデータベースユーザ名前を指定しデータベース。
--asb-ssl-mode 接続に使用されるSSL認証のタイプを指定します。サポートされる値には、prefer、require、disable、verify-CA、verify-fullが含まれます。
--group サーバーが表示されるグループの名前を指定します。
--team サーバーへのアクセスを許可されるグループロールの名前を指定します。
--owner 監視対象サーバーを所有するロールの名前を指定します。

環境変数PEM_SERVER_PASSWORDを設定してPEMサーバーのパスワードを提供し、pemworkerがPEM管理ユーザとして接続できるようにします。

環境変数PEM_MONITORED_SERVER_PASSWORDを設定して、pemagentによって登録および監視されるデータベースサーバのパスワードを指定します。

パスワードに失敗すると、パスワード認証エラーが発生します。 PEMサーバーは、サーバーが適切に登録されたことを確認します。

pemworkerユーティリティを使用してサーバーの登録を解除する

pemworkerユーティリティを使用して、データベースサーバの登録を解除できます。サーバーの登録を解除するには、pemworkerユーティリティを呼び出します。

Linuxホストでは、次のコマンドを使用します。

pemworker --unregister-server

Windowsホストでは、次のコマンドを使用します。

pemworker.exe UNREGISTER-SERVICE

pemworkerユーティリティを呼び出すときに、コマンド文字列にコマンドラインオプションを追加します。各オプションの後には、対応する値が続く必要があります。

Option Description
--pem-user PEM管理ユーザの名前を指定します。必須です。
--server-addr サーバホストのIPアドレス、または完全修飾ドメイン名前を指定します。 Unixベースのシステムでは、アドレスフィールドはローカルマシンでデフォルトのPostgreSQL Unixドメインソケットを使用するために空白のままにするか、 PostgreSQLソケットを含む代替パスに設定できます。パスを入力する場合、パスは/で始まる必要があります。必須です。
--server-port ホストのポート番号を指定します。必須です。

環境変数PEM_SERVER_PASSWORDを使用してPEMサーバーのパスワードを提供し、pemworkerがPEM管理ユーザとして接続できるようにします。

パスワードに失敗すると、パスワード認証エラーが発生します。 PEMサーバーは、サーバーが登録解除されたことを確認します。

接続とバインディングの検証

登録すると、新しいサーバーはPEM Browserツリーコントロールに追加され、Global Overviewに表示されます。

The Global Overview dashboard

新しくバインドされたサーバーに最初に接続するとき、Global Overviewダッシュボードは、サーバーリストに「不明」のステータスで新しいサーバーを表示する場合があります。サーバーを認識する前に、バインドされたエージェントは多数のプローブを実行してサーバーを検査実行必要があります。ネットワークの可用性によっては、完了するまでに数分かかる場合があります。

数分以内に、Global Overviewダッシュボードの棒グラフに、エージェントが正常に接続され、新しいサーバーがPostgres Server Statusリストに含まれることが示されます。

5分後、Global Overviewダッシュボードはまだ新しいサーバーをリストしていない場合は、エラーのチェック、モニタリングエージェントのログファイルを確認してください。ツリーコントロールでエージェントの名前を右クリックし、コンテキストメニューのDashboardsサブメニューからProbe Log Analysisオプションを選択します。

Defining and Monitoring Postgres instances on AWS

PEMを使用してAWSホスト上のPostgresインスタンスをモニタできるシナリオは2つあります。以下をモニタできます。

  • AWS EC2で実行されているPostgresインスタンス
  • AWS RDSで実行されているPostgresインスタンス

AWS EC2で実行されているPostgresインスタンスのモニタリング

AWS EC2でPostgresインスタンスを作成した後、PEMサーバーを使用してインスタンスを登録およびモニタます。現在、次のシナリオがサポートされています。

Postgresインスタンスと同じAWS EC2で実行されているPEMエージェントと、ローカルマシンで実行されているPEMサーバー。 - 同じローカルマシンで実行されているPostgresインスタンスとPEMエージェント、およびAWS EC2で実行されているPEMサーバー。 - 同じAWS EC2で実行されているPostgresインスタンスとPEMエージェント、および異なるAWS EC2で実行されているPEMサーバー

Note * 最初の2つのシナリオでは、AWS EC2インスタンスがpemデータベースにアクセスできるように、AWS EC2でVPNを設定する必要があります。必要に応じて、ネットワーク管理者に連絡してVPNをセットアップしてください。

AWS EC2またはローカルマシンで実行されているPEMエージェントをPEMサーバーに登録する必要があります。 PEMサーバーにPEMエージェントを登録するときは、AWS EC2インスタンスのホスト名を使用する必要があることにノートてください。 PEMエージェントの登録の詳細については、PEM Self Registrationを参照してください。

Create - Serverダイアログを使用して、PEMサーバー上のAWS EC2で実行されているPostgresインスタンスを登録できます。 Create - Serverダイアログを使用したサーバーの登録の詳細については、Registering a Serverを参照してください。 Create - ServerダイアログのPEM Agentタブを使用して、登録済みのPEMエージェントをPostgresインスタンスにバインドします。

PEMエージェントがPEMサーバーに登録され、AWS EC2で実行されているPostgresインスタンスがPEMサーバーに登録されている場合、PEMでインスタンスをモニタできます。

AWS RDSで実行されているPostgresインスタンスのモニタリング

AWS RDSデータベースの作成中に、Engine optionsのプロンプトが表示されたら、PostgreSQLを選択します。 AWSでPostgres(RDS)インスタンスを作成した後、Create - Serverダイアログを使用して、Postgres(RDS)インスタンスをPEMサーバーに追加します。このダイアログを使用して、新しいサーバー接続を記述し、サーバーをPEMエージェントにバインドし、サーバーをPEMブラウザーツリーコントロールに表示できます。

Create - Serverダイアログの詳細と各タブの構成の詳細については、Registering a Serverを参照してください。

PEMサーバーを使用してAWSインスタンスのPostgres(RDS)インスタンスをモニタするには、Create - ServerダイアログのPEM AgentタブのRemote MonitoringフィールドをYesに設定する必要があります。

Create Server dialog - PEM Agent tab

PEMエージェントはPostgres(RDS)AWSインスタンスをリモートでモニタリングため、以下に説明するように機能が制限されます。

Feature Name Works with remote PEM Agent Comments
Audit Manager No NA
NA
Capacity Manager Limited データベースサーバとオペレーティングシステムのメトリック間に相関関係はありません。
Log Manager No NA
NA
Manage Alerts Limited データベースサーバでアラートスクリプトを実行すると、実際のデータベースサーバマシンではなく、バインドされたPEMエージェントが実行されているマシンで実行されます。
Manage Charts Yes NA
NA
Manage Dashboards Limited 一部のダッシュボードでは、完全なデータを表示できない場合があります。それが利用できないように、例、データベースサーバのオペレーティングシステムの情報が表示されません。
Manage Probes Limited PEMプローブの一部は情報を結果ず、機能の一部が影響を受ける可能性があります。プローブ機能の詳細については、PEM Agent Guideを参照してください。
Postgres Expert Limited Postgres Expertは、オペレーティングシステム情報が利用できないため、部分的な情報を提供します。
Postgres Log Analysis Expert No Postgres Log Analysis Expertは、ログマネージャによってインポートされたログに依存するため、分析を実行できません。これは、必要に応じて機能しません。
Scheduled Tasks Limited スケジュールされたタスクは、データベースサーバに対してのみ機能します。スクリプトはリモートエージェントで実行されます。
Tuning Wizard No NA
NA
System Reports Yes NA
NA
Core Usage Reports Limited コア使用状況レポートには完全な情報は表示されません。例、プラットフォーム、コアの数、および総RAMは表示されません。

Managing Certificates

PEMサーバーバッキングデータベースのデータディレクトリに保存されているファイルには、PEMサーバーが安全な接続を利用するのに役立つ情報が含まれています。

  • ca_certificate.crt
  • ca_key.key
  • server.crt
  • server.key
  • root.crl
  • root.crt

PEMサーバーと共にインストールされるPEMエージェントは、ca_certificate.crtファイルの有効期限を監視します。証明書の有効期限が間もなくエキスパイアと、PEMは次のことを行います。

  • 既存の証明書ファイルのバックアップを作成します。
  • 新しい証明書ファイルを作成し、新しいCA証明書ファイルをPEMサーバーのルート.crtファイルに追加します。
  • アクティブなエージェントの証明書ファイルを更新するジョブを作成します。
  • PEMサーバーを再起動します。

あなたは、エージェントをアンインストールすると、そのエージェントに関連付けられた証明書は、証明書がPEMサーバーに接続するために使用することはできないことを確実にする保証に(root.crlファイル内に維持)証明書失効リストに追加されます。

以下のセクションには、証明書ファイルの手動置換に関する詳細情報が含まれています。

SSL証明書の置き換え

次の手順では、既存のPEMインストールのSSL証明書の置換について詳しく説明します。サーバーを同時に新しいバージョンにアップグレードする場合は、SSL証明書を置き換える前に、すべてのPEMインストーラー(最初にサーバーインストーラ、次にエージェントインストーラー)を呼び出します。次に:

1.実行中のすべてのPEMエージェントを、最初にサーバホストで、次に監視対象ノードで停止します。

  • LinuxホストでPEMエージェントを停止するには、ターミナルウィンドウを開き、スーパーユーザ権限を引き受けて、次のコマンドを入力します。

  • systemdを使用するLinuxの場合、たとえば:Centos 7または8

systemctl stop pemagent

Windowsホストでは、Servicesアプレットを使用してPEMエージェントを停止できます。 PEMエージェントサービスの名前付けはPostgres Enterprise Manager Agentです。 Servicesダイアログでサービス名前を強調表示し、Stop the serviceをクリックします。

2.既存のSSLキーと証明書のバックアップを取ります。 SSLキーと証明書は、PEMインストールのdataディレクトリに保存されます。例、Linuxシステム上のデフォルトの場所は次のとおりです。

  • /var/lib/pgsql/x/dataここで、xはPostgreSQLデータベースバージョンです。

  • 次のファイルのコピーを作成し、各ファイルに拡張子を追加しmake、名前を一意にします。

  • -ca_certificate.crt-ca_key.key-root.crt-root.crl-server.key-server.crt

例、次のコマンド:

#  cp ca_certificate.crt ca_certificate_old.crt
  • エントリーにワードoldを追加して、ca_certificateファイルのバックアップを作成します。
  1. openssl_rsa_generate_key()ファンクションを使用して、ca_key.keyファイルを生成します。
/usr/pgsql-x.x/bin/psql -U postgres -d pem --no-psqlrc -t -A -c "SELECT public.openssl_rsa_generate_key(1024)" > /var/lib/pgsql/x/data/ca_key.key
  • ca_key.keyファイルを作成した後、ca_certificate.crtファイルを生成し、ca_key.keyファイルの特権を変更するときに使用する変数CA_KEYの内容をcatしファイル。
CA_KEY=$(cat /var/lib/pgsql/x/data/ca_key.key)

chmod 600 /var/lib/pgsql/x/data/ca_key.key

4.キーを使用して、ca_certificate.crtファイルを生成します。簡単にするために、 SQLクエリーを一意の名前で一時ファイルします。

echo "SELECT openssl_csr_to_crt(openssl_rsa_key_to_csr('${CA_KEY}',
'PEM','US', 'MA', 'Bedford', 'Postgres Enterprise Manager',
'support@enterprisedb.com'), NULL,
'/var/lib/pgsql/x/data/ca_key.key')" > /tmp/_random.$$
  • 次に、変数を使用してクエリーを実行し、コンテンツをca_certificate.crtファイルに配置します。
/usr/pgsql-x/bin/psql -U postgres -d pem --no-psqlrc -t -A -f /tmp/_random.$$ > /var/lib/pgsql/x/data/ca_certificate.crt
  • ca_certificate.crtファイルの権限を変更し、 SQLコマンドを含む一時ファイルを削除します。
chmod 600 /var/lib/pgsql/x/data/ca_certificate.crt

rm -f /tmp/_random.$$
  1. ca_certificate.crtファイルをroot.crtファイルとして再利用しファイル。
cp /var/lib/pgsql/x/data/ca_certificate.crt /var/lib/pgsql/x/data/root.crt
  • root.crtファイルのアクセス許可を変更します。
chmod 600 /var/lib/pgsql/x/data/root.crt
  1. openssl_rsa_generate_crl()ファンクションを使用して、証明書失効リスト(root.crl)を作成します。
/usr/pgsql-x/bin/psql -U postgres -d pem --no-psqlrc -t -A -c
 "SELECT openssl_rsa_generate_crl('/var/lib/pgsql/x/data/ca_certificate.crt', '/var/lib/pgsql/x/data/ca_key.key')" > /var/lib/pgsql/x/data/root.crl
  • root.crlファイルのアクセス許可を変更します。
chmod 600 /var/lib/pgsql/x/data/root.crl
  1. openssl_rsa_generate_key()ファンクションを使用して、server.keyファイルを生成します。
/usr/pgsql-x/bin/psql -U postgres -d pem --no-psqlrc -t -A -c "SELECT public.openssl_rsa_generate_key(1024)" >> /var/lib/pgsql/x/data/server.key
  • server.keyファイルを作成した後、server.crtファイルを生成し、server.keyファイルの特権を変更するときに使用する変数SSL_KEYの内容をcatしファイル。
SSL_KEY=$(cat /var/lib/pgsql/x/data/server.key)

chmod 600 /var/lib/pgsql/x/data/server.key
  1. SSL_KEYを使用して、サーバー証明書を生成します。証明書をserver.crtファイルに保存します。簡単にするために、最初に一意の名前を持つ一時ファイルにSQLクエリーを配置します。
echo "SELECT openssl_csr_to_crt(openssl_rsa_key_to_csr('${SSL_KEY}',
'PEM','US', 'MA', 'Bedford', 'Postgres Enterprise Manager',
'support@enterprisedb.com'),
'/var/lib/pgsql/x/data/ca_certificate.crt',
'/var/lib/pgsql/x/data/ca_key.key')" > /tmp/_random.$$
   * /usr/pgsql-x/bin/psql -U postgres -d pem --no-psqlrc -t -A -f /tmp/_random.$$ >> /var/lib/pgsql/x/data/server.crt
  1. server.crtファイルの特権を変更し、一時ファイルを削除します。
chmod 600 /var/lib/pgsql/x/data/server.crt

rm -f /tmp/_random.$$
  1. Postgresサーバーを再起動します。
  • Linuxでinit.dを使用する場合;例、Centos6ホスト:
/etc/init.d/postgresql-x restart
  • Linuxでsystemdを使用する場合;例、Centos7ホスト:
systemctl restart postgresql-x

エージェントSSL証明書の更新

PEMサーバーと対話するエージェントごとに、以下を行う必要があります。

  • rsaキーと証明書を生成します。
  • 鍵と証明書をエージェントにコピーしキー。
  • エージェントをリスタートします。

各エージェントには、pemデータベースのpem.agentテーブルに格納されている一意の識別子があります。キーと証明書ファイルを、エージェントの識別子に対応するキーまたは証明書に置き換える必要があります。後続のコマンドは、以前に生成されたファイルを上書きします。あなたは次のキーファイルのペアを生成する前に、それぞれのPEMエージェントホスト上の場所に、ステップ2と3で生成された(agent.keyとagent.crtファイルを移動しなければならないことをしてくださいノート。

PEMエージェントキーファイルペアを生成するには:

  1. psqlを使用して、エージェントの数とそれに対応する識別子を見つけます。
/usr/pgsql-x/bin/psql -U postgres -d pem --no-psqlrc -t -A -c "SELECT ID FROM pem.agent"
  • Linuxでは、/etc/postgres-reg.iniファイルのPEMagentセクションで、キーと証明書のエージェント識別子と場所を見つけることもできます。

Windowsでは、情報はレジストリに保存されます:

  • -64ビットWindowsインストールでは、次を確認します。
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\EnterpriseDB\PEM\agent
  • -32ビットWindowsインストールでは、次を確認します。
HKEY_LOCAL_MACHINE\SOFTWARE\EnterpriseDB\PEM\agent

2.キーファイルを必要とするエージェントを特定した後、各エージェントに対してagent.keyを生成します。 キーを生成実行には、次のコマンドを実行して、出力をファイルにキャプチャします:

/usr/pgsql-x/bin/psql -U postgres -d pem --no-psqlrc -t -A -c "SELECT openssl_rsa_generate_key(1024)" > agent.key
  • agent.keyファイルの特権を変更します。
chmod 600 agent.key

3.各エージェントの証明書を生成します。証明書を生成実行には、次のコマンドを実行して、証明書ファイルに出力をキャプチャします。

/usr/pgsql-x/bin/psql -U postgres -d pem --no-psqlrc -t -A -c
"SELECT openssl_csr_to_crt(openssl_rsa_key_to_csr('$(cat agent.key)',
'agent<$ID>', 'US', 'MA', 'Bedford', 'Postgres Enterprise Manager',
'support@enterprisedb.com'),
'/var/lib/pgsql/x/data/ca_certificate.crt',
'/var/lib/pgsql/x/data/ca_key.key')" > agent.crt
  • ここで、* $ ID *はエージェントのエージェント番号です( psqlコマンドラインを介して取得されます)。
  1. agent.crtファイルの特権を変更します。
chmod 600 agent.crt
  1. PEMエージェントサービスを再起動する前に、各エージェントのキーと証明書ファイルを新しく生成されたファイルで置き換えます。

    • init.dを使用するLinuxでは、次のコマンドを使用してサービスをリスタートします。
/etc/init.d/pemagent start
  • systemdを使用するLinuxでは、次のコマンドを使用してサービスをリスタートします。
systemctl start pemagent

Windowsホストでは、サービスアプレットを使用してPEMエージェントをスタートできます。 PEMエージェントサービスの名前付けはPostgres Enterprise Manager Agentです。 Servicesダイアログでサービス名前を強調表示し、Start the serviceをクリックします。

Managing Configuration Settings

複数の設定ファイルは、スタートアップにPostgres Enterprise Managerによって読み取られます。ファイルは次のとおりです。

  • config.py:これはメインの構成ファイルであり、変更しないでください。これは、構成設定のリファレンスとして使用できます。これは、次のファイルのいずれかでオーバーライドできます。
  • config_distro.py:このファイルはconfig.pyの後に読み込まれ、パッケージャーがPostgres Enterprise Managerのディストリビューションに必要な設定を変更するためのものです。これには通常、特定の経路とファイルの場所が含まれます。このファイルはオプショナルであり、必要に応じて、config.pyと同じディレクトリにパッケージャーが作成できます。
  • config_local.py:このファイルはconfig_distro.py後に読み込まれ、彼らはローカルの好みに合うように調整したいと思うかもしれまたはstandards.Thisファイルはオプショナルであり、かつ同じで、ユーザーが作成したことができることを任意のデフォルトまたはパッケージの特定の設定を変更するには、エンドユーザーを対象とし必要に応じて、config.pyとしてディレクトリ。

デフォルトのconfig.pyファイルのコピーは、参照用にPEMオンラインヘルプに含まれていリファレンス。

Managing a PEM Server