このページでは、AlloyDB Omni インスタンスのモニタリングに使用できるツールについて説明します。
モニタリング ツール
次の表に、AlloyDB Omni インスタンスのモニタリングに使用できるツールを示します。
終了日 | 使用 | 説明 |
---|---|---|
パフォーマンスと可用性をモニタリングする | Datadog | AlloyDB Omni インスタンスのパフォーマンス、可用性、健全性をモニタリングします。 |
インスタンスからオブザーバビリティ データをエクスポートする | Postgres Exporter | オブザーバビリティ クエリの結果をエクスポートします。Postgres エクスポータをインストールする |
読み取り可能な形式でオブザーバビリティ データを取得する | Prometheus | オブザーバビリティ データを読み取り可能な形式で返すモニタリング システム。Prometheus をインストールする |
ダッシュボードにデータを表示する | Grafana | 指標を表示するダッシュボードを作成します。Grafana をインストールする |
パフォーマンス データを取得して分析する | パフォーマンス スナップショット レポート | パフォーマンス データを取得して、パフォーマンスの問題の原因を特定します。 |
Postgres エクスポータをインストールする
Postgres Exporter は、モニタリング システムである Prometheus が読み取れる形式でオブザーバビリティ クエリをエクスポートするツールです。このエクスポータには多くの標準クエリが組み込まれており、ニーズに応じてクエリとルールを追加できます。SSL やユーザー認証などの追加のセキュリティ オプションも構成できます。この例では、基本的な構成オプションのみを使用します。
Postgres Exporter をインストールする手順は次のとおりです。
Postgres エクスポータのディレクトリを作成します。
sudo mkdir /opt/postgres_exporter
sudo chown USER_ACCOUNT:USER_ACCOUNT /opt/postgres_exporter
cd /opt/postgres_exporter
Postgres Exporter をダウンロードします。
wget https://github.com/prometheus-community/postgres_exporter/releases/download/v0.15.0/postgres_exporter-0.15.0.linux-amd64.tar.gz
Postgres エクスポータを解凍します。
tar -xzvf postgres_exporter-0.15.0.linux-amd64.tar.gz
Postgres エクスポータを作成したディレクトリにコピーします。
cd postgres_exporter-0.15.0.linux-amd64
sudo cp postgres_exporter /usr/local/bin
Postgres エクスポータに適した
.env
ファイルを作成します。cd /opt/postgres_exporter
sudo vi postgres_exporter.env
1 つ以上のデータベースをモニタリングするには、データソースを
/opt/postgres_exporter/postgres_exporter.env
に追加します。単一のデータベースをモニタリングするには、次の行を追加します。
DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/DATABASE_NAME?sslmode=disable"
すべてのデータベースをモニタリングするには、次の行を追加します。
DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/?sslmode=disable"
次の変数を置き換えます。
USERNAME
: データベースにログインするユーザー名。PASSWORD
: ユーザー アカウントのパスワード。POSTGRES_IP_ADDRESS
: AlloyDB Omni インスタンスの IP アドレス。PORT
: データベースがホストされているポート。DATABASE_NAME
: データベースの名前。
Postgres Exporter が再起動後も存続するように、次の情報を
/etc/systemd/system/postgres_exporter.service
に追加します。[Unit] Description=Prometheus exporter for Postgresql Wants=network-online.target After=network-online.target [Service] User=postgres Group=postgres WorkingDirectory=/opt/postgres_exporter EnvironmentFile=/opt/postgres_exporter/postgres_exporter.env ExecStart=/usr/local/bin/postgres_exporter --web.listen-address=:POSTGRES_EXPORTER_PORT --web.telemetry-path=/metrics Restart=always [Install] WantedBy=multi-user.target
次の変数を置き換えます。
POSTGRES_EXPORTER_PORT
: Postgres Exporter がホストされているポート。ポート9187
を使用することをおすすめします。
Postgres エクスポータを再読み込みします。
sudo systemctl daemon-reload
Postgres エクスポータを起動します。
sudo systemctl start postgres_exporter
sudo systemctl enable postgres_exporter
sudo systemctl status postgres_exporter
Postgres Exporter は、次の URL で利用できるようになります。
http://POSTGRES_EXPORTER_HOST_IP_ADDRESS:POSTGRES_EXPORTER_PORT/metrics
次の変数を置き換えます。
POSTGRES_EXPORTER_HOST_IP_ADDRESS
: マシンの IP アドレス。POSTGRES_EXPORTER_PORT
: 手順 7 で使用したポート。
Prometheus をインストールする
Prometheus は、Postgres Exporter にクエリを実行し、読み取り可能な形式でオブザーバビリティ データを返すことができるモニタリング システムです。
Prometheus をインストールする手順は次のとおりです。
prometheus
ユーザーを作成します。sudo groupadd --system prometheus
sudo useradd -s /sbin/nologin --system -g prometheus prometheus
Prometheus のディレクトリを作成します。
sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
Prometheus をダウンロードします。
wget https://github.com/prometheus/prometheus/releases/download/v2.52.0/prometheus-2.52.0.linux-amd64.tar.gz
Prometheus を抽出します。
sudo tar xvf prometheus*.tar.gz
cd prometheus*/
sudo mv prometheus /usr/local/bin
sudo mv promtool /usr/local/bin
Prometheus の所有権を
prometheus
ユーザーに設定します。sudo chown prometheus:prometheus /usr/local/bin/prometheus
sudo chown prometheus:prometheus /usr/local/bin/promtool
設定ファイルを適切な場所に移動します。
sudo mv consoles /etc/prometheus
sudo mv console_libraries /etc/prometheus
sudo mv prometheus.yml /etc/prometheus
Prometheus ディレクトリの所有権を
prometheus
ユーザーに設定します。sudo chown prometheus:prometheus /etc/prometheus
sudo chown prometheus:prometheus /etc/prometheus/*
sudo chown -R prometheus:prometheus /etc/prometheus/consoles
sudo chown -R prometheus:prometheus /etc/prometheus/console_libraries
sudo chown -R prometheus:prometheus /var/lib/prometheus
Prometheus が Postgres Exporter をクエリできるように、次の情報を
/etc/prometheus/prometheus.yml
に追加します。global: scrape_interval: 15s scrape_configs: - job_name: postgres static_configs: - targets: ['POSTGRES_EXPORTER_MACHINE_IP_ADDRESS:9187']
Prometheus が再起動後も存続するように、
/etc/systemd/system/prometheus.service
に次の情報を追加します。[Unit] Description=Prometheus Wants=network-online.target After=network-online.target [Service] User=prometheus Group=prometheus Type=simple ExecStart=/usr/local/bin/prometheus \ --config.file /etc/prometheus/prometheus.yml \ --storage.tsdb.path /var/lib/prometheus/ \ --web.console.templates=/etc/prometheus/consoles \ --web.console.libraries=/etc/prometheus/console_libraries [Install] WantedBy=multi-user.target
Prometheus を再読み込みします。
sudo systemctl daemon-reload
Prometheus を起動します。
sudo systemctl start prometheus
sudo systemctl enable prometheus
sudo systemctl status prometheus
これで、次の URL で Prometheus を使用できるようになります。
http://PROMETHEUS_HOST_IP_ADDRESS:9090
次の変数を置き換えます。
PROMETHEUS_HOST_IP_ADDRESS
: マシンの IP アドレス。
Grafana をインストールする
Grafana は、ダッシュボードを介して Prometheus 指標をエンドユーザーに公開するダッシュボード ツールです。Postgres エクスポータには複数の標準ダッシュボードが用意されており、このオブザーバビリティの例では、利用可能なダッシュボードを利用しています。Grafana は通常の apt
リポジトリと yum
リポジトリで入手できます。このプロダクトのインストールには、これらのリポジトリを使用します。
Grafana をインストールする手順は次のとおりです。
Grafana をインストールします。
Ubuntu システムと Debian システムの場合は、次のコマンドを実行します。
sudo apt-get update
sudo apt-get install grafana
RHEL、CentOS、Rocky Linux システムの場合は、次のタスクを完了します。
GPG 鍵をインポートします。
wget -q -O gpg.key https://rpm.grafana.com/gpg.key
sudo rpm --import gpg.key
次の内容の
/etc/yum.repos.d/grafana.repo
ファイルを作成します。[grafana] name=grafana baseurl=https://rpm.grafana.com repo_gpgcheck=1 enabled=1 gpgcheck=1 gpgkey=https://rpm.grafana.com/gpg.key sslverify=1 sslcacert=/etc/pki/tls/certs/ca-bundle.crt
Grafana をインストールします。
sudo dnf install grafana
Grafana を再読み込みします。
sudo systemctl daemon-reload
Grafana を起動します。
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
sudo systemctl status grafana-server
これで、次の URL で Grafana を使用できるようになります。
http://GRAFANA_HOST_IP_ADDRESS:9090
次の変数を置き換えます。
GRAFANA_HOST_IP_ADDRESS
: マシンの IP アドレス。
ダッシュボードを読み込む
Grafana の構成と運用に関する一般的な手順については、Grafana を設定するをご覧ください。公開されているダッシュボードは多数ありますが、次の PostgreSQL 統計ダッシュボードをおすすめします。
ダッシュボードを読み込む手順は次のとおりです。
Grafana を設定します。
Grafana の [インストール] セクションの URL アドレスを使用して、Grafana コンソールを開きます。デフォルトのユーザー名とパスワードは
admin
です。デフォルトのパスワードを変更します。
Prometheus データソースが追加されていない場合は、[ホーム] > [データソース] に移動します。
[新しいデータソースを追加] をクリックします。
[Prometheus] を選択します。
[Prometheus サーバーの URL] フィールドに、Prometheus の [インストール] セクションの URL アドレスを入力します。
次の構成設定を変更します。
- Prometheus type: [Prometheus] を選択します。
- Prometheus のバージョン: [> 2.5.x] を選択します。
[保存してテスト] をクリックします。
新しいダッシュボードを作成します。
[ホーム] > [ダッシュボード] に移動します。
[New] をクリックします。
[新しいダッシュボード] を選択します。
[ダッシュボードをインポート] をクリックします。
次の URL(https://grafana.com/grafana/dashboards/13494-postgresql-statistics/)を入力します。
[読み込み] をクリックします。
ダッシュボードの名前を
PRODUCT_NAME PostgreSQL statistics
に変更します。PRODUCT_NAME
は、プロダクトの名前に置き換えます。[Prometheus] フィールドからデータソースを選択します。
[インポート] をクリックします。
パフォーマンス スナップショット レポート
パフォーマンス スナップショット レポートは、パフォーマンス データをキャプチャして分析し、パフォーマンスの問題の原因を特定するのに役立つ AlloyDB Omni の組み込みツールです。このツールは、インスタンスに関するリアルタイム指標を提供する システム分析情報、クエリ分析情報、指標エクスプローラなどの AlloyDB Omni の他のオブザーバビリティ機能と連携します。
詳細については、パフォーマンス スナップショットを比較してデータベースのパフォーマンスを最適化するをご覧ください。