Ubuntu 20.04でGrafanaとPrometheusを使用してMongoDBを監視する方法

著者は、COVID-19救済基金を寄付の対象に選びました。これは「寄付のために書く」プログラムの一環です。

こんにちは、初めまして。

データベース管理者にとって、パフォーマンスやメモリの問題を回避することは非常に重要です。PrometheusやGrafanaなどのツールを使用することで、データベースクラスタのパフォーマンスを監視することができます。Prometheusはオープンソースの監視およびアラートプラットフォームであり、時系列データでメトリクスを収集・保存します。Grafanaはインタラクティブな可視化と分析のためのオープンソースのウェブアプリケーションです。さまざまなデータソースからデータを取り込み、クエリを行い、カスタマイズ可能なグラフに表示することができます。予期しない動作があった場合には、迅速かつ簡単に通知を受けることができるアラートを設定することも可能です。これらを共に使用することで、MongoDBインスタンスからデータを収集し、監視、分析、可視化することができます。

このチュートリアルでは、MongoDBデータベースをセットアップし、PrometheusのデータソースとしてGrafanaで監視します。これを達成するために、MongoDBエクスポータをPrometheusのターゲットとして設定し、PrometheusがデータベースのメトリックをスクレイプしてGrafanaで利用できるようにします。

前提条件

このチュートリアルに従うためには、以下が必要です。

  • One Ubuntu 20.04 server with a non-root user with sudo privileges and a firewall configured with ufw, which you can do by following the Initial Server Setup Guide for Ubuntu 20.04.
  • MongoDB installed on the Ubuntu 20.04 server, which you can do by following the tutorial, How To Install MongoDB on Ubuntu 20.04.
  • Grafana installed on the Ubuntu 20.04 server, which you can do by following Steps 1 through 4 of the tutorial, How To Install and Secure Grafana on Ubuntu 20.04.

Grafanaをインストールするには、以下のものが必要です。

  • A fully registered domain name. This tutorial uses your_domain throughout. You can purchase a domain name on Namecheap, get one for free on Freenom, or use the domain registrar of your choice.
  • The following DNS records set up for your server. You can follow the How To Add Domains article for details on how to add them if you are using Silicon Cloud.An A record with your_domain pointing to your server’s public IP address.
    An A record with www.your_domain pointing to your server’s public IP address.
  • Nginx set up by following the How To Install Nginx on Ubuntu 20.04 tutorial, including a server block for your domain.
  • An Nginx server block with Let’s Encrypt configured, which you can set up by following How To Secure Nginx with Let’s Encrypt on Ubuntu 20.04.

ステップ1 – Prometheusのインストールと設定

Prometheusはオープンソースのシステム監視とアラートのツールキットであり、メトリクスを時系列のデータとして収集・保存します。つまり、メトリクス情報は記録されたタイムスタンプと共に保存されます。この手順では、Prometheusをインストールし、サービスとして実行するように設定します。

Prometheusのインストール

最初に、Prometheusをインストールする必要があります。まず、サーバーにログインして、以下の通りパッケージリストを更新してください。

  1. sudo apt update

 

次に、Prometheusの設定およびデータディレクトリを作成します。設定ディレクトリであるprometheusを作成するには、以下のコマンドを実行してください。

  1. sudo mkdir -p /etc/prometheus

 

次に、データディレクトリを作成してください。

  1. sudo mkdir -p /var/lib/prometheus

 

ディレクトリを作成した後、圧縮されたインストールファイルをダウンロードします。Prometheusのインストールファイルは、圧縮されたファイルで事前にコンパイルされたバイナリ形式で提供されます。Prometheusをダウンロードするには、ダウンロードページを訪れてください。

バージョン2.31.0をダウンロードするには、以下のコマンドを実行してください。必要に応じてバージョン番号を置き換えてください。

  1. wget https://github.com/prometheus/prometheus/releases/download/v2.31.0/prometheus-2.31.0.linux-amd64.tar.gz

 

一度ダウンロードしたら、tarボールファイルを解凍してください。 (Ichido daunrōdo shitara, tar bōru fairu o kaitō shite kudasai.)

  1. tar -xvf prometheus-2.31.0.linux-amd64.tar.gz

 

ファイルを抽出した後、Prometheusフォルダに移動してください。

  1. cd prometheus-2.31.0.linux-amd64

 

それから、PrometheusとPromtoolのバイナリファイルを/usr/local/bin/ディレクトリに移動してください。

  1. sudo mv prometheus promtool /usr/local/bin/

 

次に、Prometheusに関連するすべてのファイルを1つの場所に移動します:/etc/prometheus/。
コンソールファイルをconsolesディレクトリに、ライブラリファイルをconsole_librariesディレクトリに移動するには、次のコマンドを実行してください。

  1. sudo mv consoles/ console_libraries/ /etc/prometheus/

 

コンソールとコンソールライブラリファイルは、Prometheus GUIを起動するために使用されます。これらのファイルは設定ファイルと一緒に保持され、サービスを起動する際に使用できるようになります。

最後に、prometheus.ymlテンプレート設定ファイルを/etc/prometheus/ディレクトリに移動してください。

  1. sudo mv prometheus.yml /etc/prometheus/prometheus.yml

 

prometheus.ymlは、プロメテウスのポートやサービス開始時に使用するファイルを設定するためのテンプレート設定ファイルです。

Prometheusのインストールバージョンを確認するには、以下のコマンドを実行してください。

  1. prometheus –version

 

以下に類似した出力を受け取るでしょう。

Output

prometheus, version 2.31.0 (branch: HEAD, revision: b41e0750abf5cc18d8233161560731de05199330) build user: root@0aa1b7fc430d build date: 20220714-15:13:18 go version: go1.18.4 platform: linux/amd64

このセクションでは、Prometheusをインストールし、そのバージョンを確認しました。次に、サービスとして起動します。

サービスとしてのPrometheusの実行

プロメテウスをインストールしたので、サービスとして実行するように設定します。

これを達成するためのシステムファイルを作成する前に、プロメテウスのグループとユーザーを作成する必要があります。必要なディレクトリにアクセス権を持つ専用のオーナーユーザーが必要です。プロメテウスのグループを作成するには、以下のコマンドを実行してください。

  1. sudo groupadd –system prometheus

 

次に、プロメテウスユーザーを作成し、それを先ほど作成したプロメテウスグループに割り当てます。

  1. sudo useradd -s /sbin/nologin –system -g prometheus prometheus

 

指定のユーザーが正しい権限を持つよう、以下のようにディレクトリの所有権とパーミッションを変更してください。

  1. sudo chown -R prometheus:prometheus /etc/prometheus/ /var/lib/prometheus/
  2. sudo chmod -R 775 /etc/prometheus/ /var/lib/prometheus/

 

次に、サービスとしてPrometheusを実行するためのサービスファイルを作成します。nanoやお気に入りのテキストエディタを使用して、prometheus.serviceというsystemdのサービスファイルを作成してください。

  1. sudo nano /etc/systemd/system/prometheus.service

 

以下のコードの行を追加してください。

/etc/systemd/system/prometheus.service を日本語で言い換えると:「/etc/systemd/system/prometheus.service」
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Restart=always
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 \
    --web.listen-address=0.0.0.0:9090

[Install]
WantedBy=multi-user.target

このコードを使用することで、PrometheusをExecStartブロックにリストされたファイルを使用してサービスを実行するように設定します。サービスファイルでは、systemdに指示されてPrometheusをprometheusユーザーとして実行し、設定ファイルである/etc/prometheus/prometheus.ymlを使用し、データを/var/lib/prometheusディレクトリに保存するように指定します。また、Prometheusをポート9090で実行するようにも設定します。 (systemdサービスファイルの詳細については、このチュートリアルの範囲を超えますが、「Understanding Systemd Units and Unit Files」で詳細を学ぶことができます。)

ファイルを保存して閉じてください。ナノを使用している場合は、CTRL+X を押し、次に Y を押してください。

今、プロメテウスサービスを開始してください。

  1. sudo systemctl start prometheus

 

プロメテウスサービスを起動時に有効にしてください。

  1. sudo systemctl enable prometheus

 

以下のコマンドを使用して、サービスのステータスを確認することができます。

  1. sudo systemctl status prometheus

 

出力はサービスがアクティブ(実行中)であることを確認します。

出力する。
● prometheus.service - Prometheus
     Loaded: loaded (/etc/systemd/system/prometheus.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-08-05 18:06:05 UTC; 13s ago
   Main PID: 7177 (prometheus)
      Tasks: 6 (limit: 527)
     Memory: 21.0M
     CGroup: /system.slice/prometheus.service
             └─7177 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/prometheus/ --web.console.template>

Prometheusにアクセスするには、ブラウザを起動し、サーバーのIPアドレスの後にポート9090を追加してアクセスしてください:http://your_server_ip:9090。

Note

注意:PrometheusのWebコンソールにアクセスするには、サーバーでポート9090を許可する必要がある場合があります。現在のUFWのルールセットを確認するには、次のコマンドを実行してください:
sudo ufw status

ポート9090がすでに許可されていない場合は、次のコマンドを使用して追加することができます:
sudo ufw allow 9090

プロメテウスのWebコンソールにアクセスすることができます。

Screencapture showing the Prometheus web console

このステップでは、Prometheusをインストールし、サービスとして実行するように設定しました。次に、MongoDBエクスポータを使用して、MongoDBデータベースをPrometheusにバインドします。

ステップ2 – MongoDB Exporterの設定

プロメテウスは、メトリックを収集するためにターゲットをスクレイピングすることで機能します。このステップでは、MongoDBエクスポータをインストールし、プロメテウスのターゲットとして設定することで、プロメテウスがMongoDBインスタンスからデータを収集できるようにします。

MongoDB Exporterのインストール

このセクションでは、MongoDBエクスポーターをインストールします。まず、エクスポーターのためのディレクトリを作成し、それに移動してください。

  1. mkdir mongodb-exporter
  2. cd mongodb-exporter

 

MongoDBのエクスポーターは、Githubからダウンロードできます。エクスポーターはアーカイブ内のバイナリファイルとして提供されますが、サービスとして設定する必要があります。以下のコマンドを使用してバイナリファイルをダウンロードしてください。

  1. wget https://github.com/percona/mongodb_exporter/releases/download/v0.7.1/mongodb_exporter-0.7.1.linux-amd64.tar.gz

 

次に、ダウンロードしたアーカイブを現在のフォルダに展開してください。

  1. tar xvzf mongodb_exporter-0.7.1.linux-amd64.tar.gz

 

最終的に、mongodb_exporterバイナリをusr/local/bin/に移動してください。

  1. sudo mv mongodb_exporter /usr/local/bin/

 

このセクションでは、MongoDBのエクスポーターをインストールしました。次に、MongoDBの認証を有効にし、モニタリング用のユーザーを作成します。

MongoDBの認証を有効化する。

このセクションでは、MongoDBエクスポーターのためにMongoDBの認証を設定し、クラスターのメトリクスを監視するためのユーザーを作成します。

mongoを使用して、MongoDBインスタンスに接続を開始してください。

  1. mongo

 

クラスタモニタロールを持つエクスポーターのために管理者アカウントを作成します。管理者データベースに切り替えてください。

  1. use admin

 

管理者データベースに切り替えた後、clusterMonitorの役割を持つユーザーを作成してください。

  1. db.createUser({user: test,pwd: testing,roles: [{ role: “clusterMonitor”, db: “admin” },{ role: “read”, db: “local” }]})

 

以下の出力を受け取ります。

Successfully added user: {
        "user" : "test",
        "roles" : [
                {
                        "role" : "clusterMonitor",
                        "db" : "admin"
                },
                {
                        "role" : "read",
                        "db" : "local"
                }
        ]
}

ユーザーを作成したら、MongoDBシェルを終了してください。

  1. exit

 

その次、適切な認証情報を使用して、MongoDBのURI環境変数を設定してください。

export MONGODB_URI=mongodb://test:testing@localhost:27017

設定した認証情報(テストユーザーとテストパスワード)を使用するMongoDBインスタンスを指定するために、MONGODB_URIを設定します。27017はMongoDBインスタンスのデフォルトポートです。環境変数を設定すると、設定ファイルに保存されたプロファイルより優先されます。

MongoDBのURI環境変数が正しく設定されているかを確認するために、以下のコマンドを実行してください。

  1. env | grep mongodb

 

以下の出力を受け取ります。

MONGODB_URI=mongodb://mongodb_exporter:password@localhost:27017

このセクションでは、クラスタメトリクスをモニタリングするのに役立つclusterMonitorの役割を持つMongoDBユーザーを作成しました。次に、MongoDBエクスポータをサービスとして実行するように設定します。

MongoDBエクスポーターのためのサービスの作成

このセクションでは、MongoDBエクスポーターのためのシステムファイルを作成して、サービスとして実行します。

/lib/systemd/system に移動し、nano もしくはお気に入りのテキストエディタを使用して、エクスポーターのための新しいサービスファイルを作成してください。

  1. cd /lib/systemd/system/
  2. sudo nano mongodb_exporter.service

 

以下の設定をサービスファイルに貼り付けてください。

以下は、/lib/systemd/system/mongodb_exporter.serviceを日本語で言い換えたものです。

/lib/systemd/system/mongodb_exporter.serviceを日本語で1つのオプションで言い換えてください。

[Unit]
Description=MongoDB Exporter
User=prometheus

[Service]
Type=simple
Restart=always
ExecStart=/usr/local/bin/mongodb_exporter

[Install]
WantedBy=multi-user.target

このサービスファイルは、prometheusユーザーの下でMongoDBエクスポーターをサービスとして実行するためにsystemdに指示します。ExecStartは、usr/local/bin/からmongodb_exporterバイナリを実行します。systemdサービスファイルの詳細については、「Systemd Units and Unit Filesの理解」をご覧ください。

ファイルを保存して閉じてください。

次に、ユニットファイルを再読み込みするために、システムデーモンを再起動してください。

  1. sudo systemctl daemon-reload

 

今、サービスを開始してください。

  1. sudo systemctl start mongodb_exporter.service

 

MongoDBエクスポーターサービスの状態を確認するには、以下のコマンドを実行してください。

  1. sudo systemctl status mongodb_exporter.service

 

出力は、サービスがアクティブ(実行中)であることを確認します。 (Shutsuryoku wa, sābisu ga akutibu (jikkōchū) de aru koto o kakunin shimasu.)

出力
● mongodb_exporter.service - MongoDB Exporter
     Loaded: loaded (/lib/systemd/system/mongodb_exporter.service; disabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-08-05 18:18:38 UTC; 1 weeks 3 days ago
   Main PID: 7352 (mongodb_exporte)
      Tasks: 5 (limit: 527)
     Memory: 14.2M
     CGroup: /system.slice/mongodb_exporter.service
             └─7352 /usr/local/bin/mongodb_exporter

期待どおりにすべてが動作していることを確認するために、プロジェクトのルートディレクトリに移動し、エクスポーターが実行されているポート9216でcurlコマンドを実行してください。

  1. cd ~
  2. sudo curl http://localhost:9216/metrics

 

出力は長く、このような行が含まれます。

Output

# HELP go_gc_duration_seconds A summary of the GC invocation durations. # TYPE go_gc_duration_seconds summary go_gc_duration_seconds{quantile=”0″} 0 go_gc_duration_seconds{quantile=”0.25″} 0 go_gc_duration_seconds{quantile=”0.5″} 0 go_gc_duration_seconds{quantile=”0.75″} 0 go_gc_duration_seconds{quantile=”1″} 0 go_gc_duration_seconds_sum 0 go_gc_duration_seconds_count 0 # HELP go_goroutines Number of goroutines that currently exist. # TYPE go_goroutines gauge go_goroutines 11 # HELP go_memstats_alloc_bytes Number of bytes allocated and still in use. # TYPE go_memstats_alloc_bytes gauge go_memstats_alloc_bytes 1.253696e+06 # HELP go_memstats_alloc_bytes_total Total number of bytes allocated, even if freed. # TYPE go_memstats_alloc_bytes_total counter go_memstats_alloc_bytes_total 1.253696e+06 # HELP go_memstats_buck_hash_sys_bytes Number of bytes used by the profiling bucket hash table. # TYPE go_memstats_buck_hash_sys_bytes gauge go_memstats_buck_hash_sys_bytes 3054 # HELP go_memstats_frees_total Total number of frees. # TYPE go_memstats_frees_total counter go_memstats_frees_total 2866 # HELP go_memstats_gc_sys_byte . . . # HELP mongodb_asserts_total The asserts document reports the number of asserts on the database. While assert errors are typically uncommon, if there are non-zero values for the asserts, you should check the log file for the mongod process for more information. In many cases these errors are trivial, but are worth investigating. # TYPE mongodb_asserts_total counter mongodb_asserts_total{type=”msg”} 0 mongodb_asserts_total{type=”regular”} 0 mongodb_asserts_total{type=”rollovers”} 0 mongodb_asserts_total{type=”user”} 19 mongodb_asserts_total{type=”warning”} 0 # HELP mongodb_connections The connections sub document data regarding the current status of incoming connections and availability of the database server. Use these values to assess the current load and capacity requirements of the server # TYPE mongodb_connections gauge mongodb_connections{state=”available”} 51198 mongodb_connections{state=”current”} 2 # HELP mongodb_connections_metrics_created_total totalCreated provides a count of all incoming connections created to the server. This number includes connections that have since closed # TYPE mongodb_connections_metrics_created_total counter mongodb_connections_metrics_created_total 6 # HELP mongodb_exporter_build_info A metric with a constant ‘1’ value labeled by version, revision, branch, and goversion from which mongodb_exporter was built. # TYPE mongodb_exporter_build_info gauge mongodb_exporter_build_info{branch=”v0.7.1″,goversion=”go1.11.10″,revision=”3002738d50f689c8204f70f6cceb8150b98fa869″,version=”0.7.1″} 1 # HELP mongodb_exporter_last_scrape_duration_seconds Duration of the last scrape of metrics from MongoDB. # TYPE mongodb_exporter_last_scrape_duration_seconds gauge mongodb_exporter_last_scrape_duration_seconds 0.003641888 # HELP mongodb_exporter_last_scrape_error Whether the last scrape of metrics from MongoDB resulted in an error (1 for error, 0 for success). # TYPE mongodb_exporter_last_scrape_error gauge mongodb_exporter_last_scrape_error 0 . . . …

出力によると、MongoDBエクスポーターは、MongoDBのバージョン、メトリクスドキュメント、接続詳細などのメトリクスを収集していることが確認されました。

このセクションでは、MongoDBエクスポーターをサービスとして設定し、MongoDBからメトリクスを収集しました。次に、エクスポーターをPrometheusのターゲットとして設定します。

プロメテウスターゲットとしてのMongoDBエクスポーターの設定

このセクションでは、MongoDBエクスポーターをPrometheusのターゲットとして設定します。Prometheusの設定ファイルが格納されているディレクトリに移動してください。

  1. cd /etc/prometheus/

 

好きなテキストエディタを使用して、nanoやお好みのテキストエディタで編集用のファイルを開いてください。

  1. sudo nano prometheus.yml

 

「ハイライトされた行をファイルにコピーすることで、MongoDBエクスポーターをターゲットとして追加してください。」

/etc/prometheus/prometheus.ymlを日本語で言い換えると、以下のようになります:
「/etc/prometheus/prometheus.yml」
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"
    static_configs:
            - targets: ["localhost:9090", "localhost:9216"]

9216はMongoDBエクスポーターのデフォルトポートです。

ファイルを保存して閉じてください。

ターゲットを追加した後、Prometheusを再起動してください。

  1. sudo systemctl restart prometheus

 

新しく追加したエクスポーターがプロメテウスにスクレイピングされていることを確認するために、http://localhost:9090/targetsに移動してください。

Note

注:リモートサーバーを使用している場合、ターゲットを表示するには、http://your_server_ip:9090/targetsにアクセスしてください。また、ポートフォワーディングを使用してローカルでターゲットを表示することもできます。これを行うには、ローカルコンピューターで新しいターミナルを開き、次のコマンドを入力してください:
ssh -L 9090:localhost:9090 your_non_root_user@your_server_ip

サーバーに接続したら、ローカルマシンのウェブブラウザでhttp://localhost:9090/targetsに移動してください。

プロメテウスターゲットのリストにアクセスします。

Screencapture showing the list of Prometheus targets

9090エンドポイントはPrometheusが自分自身をスクレイピングしているものです。9216エンドポイントは、MongoDBエクスポーターであり、設定が正常に機能していることを確認します。

このステップでは、MongoDBエクスポーターをインストールし、メトリクスを収集するためのPrometheusターゲットとして設定しました。次に、GrafanaのウェブコンソールでMongoDBダッシュボードを作成して、これらのメトリクスを表示および分析します。

ステップ3 – GrafanaでMongoDBダッシュボードを作成する。

このステップでは、GrafanaでMongoDBのデータを可視化するためのダッシュボードを構築します。そのために、GrafanaでデータソースとしてPrometheusを追加し、PerconaからMongoDBダッシュボードをインポートします。PerconaはMongoDB用の複数のダッシュボードを提供しており、その詳細はPerconaの製品ドキュメントで確認することができます。このチュートリアルでは、MongoDBの概要ダッシュボードをGrafanaにインポートします。まずはじめに、GrafanaでPrometheusをデータソースとして設定します。

前提条件の一環として、Grafanaをインストールしてセキュリティを確保しました。Grafanaインスタンスには、前提条件の際に作成した資格情報を使用して、your_domain:3000にアクセスしログインしてください。

左パネルで、設定のための歯車アイコンをクリックし、その後、データソースを選択してください。

Screencapture showing adding a Data Source under the Configuration tab in Grafana

データソースの追加をクリックしてください。

Screencapture showing the button for adding a data source in Grafana

その場合、プロメテウスを選んでください。

Screencapture showing selecting Prometheus as a data source in Grafana

次の画面で、Prometheusデータソースの設定を行います。

Screencapture showing the configuration settings for the Prometheus data source in Grafana

URLフィールドには、お使いのPrometheusインスタンスのURLを入力してください。

http://your_server_ip:9090/

画面の下部にある「保存&テスト」をクリックしてください。これにより、PrometheusがGrafanaのデータソースとして追加されます。

次に、GrafanaのためのMongoDBの概要ダッシュボードをインポートします。ダッシュボードは、JSONファイルをアップロードするか、ダッシュボードIDをインポートすることでインポートできます。ダッシュボードIDは、Grafanaのダッシュボードの製品ドキュメントで見つけることができますので、ここではダッシュボードIDを使用してダッシュボードをインポートします。

左メニューから、作成のプラスアイコンをクリックし、インポートを選択してください。そこから、インポートページに移動します。

Screencapture showing the option to add Prometheus as a data source in Grafana

ここでは、ダッシュボードのJSONファイルをアップロードするか、GrafanaダッシュボードのIDを貼り付けることができます。

Screencapture showing the options for uploading a JSON file or adding a Dashboard ID

Grafana ページの MongoDB 概要ダッシュボードで見つけられる Grafana ダッシュボード ID を追加してください。

https://grafana.com/grafana/dashboards/7353

多くのダッシュボードが利用可能です。Grafanaのダッシュボードページを訪れることで、さらに多くのダッシュボードを見つけることができます。

ダッシュボードのIDを追加後、ロードをクリックしてください。

今度はオプションページが開きます。ここでダッシュボードの名前、ダッシュボードのフォルダ、データソースを選択できます。ダッシュボードとフォルダの名前はデフォルトのままにしておくこともできます。データソースはPrometheusを選択してください。オプションを入力したら、「インポート」をクリックしてください。

ダッシュボードが作成されます。

Screencapture showing the MongoDB Overview Dashboard in Grafana

あなたのダッシュボードには、コマンド操作、接続、カーソル、ドキュメント操作、およびキューに入っている操作を含む、MongoDBデータベースのリアルタイムの更新が表示されます。(詳細については、MongoDBの概要ダッシュボードのPerconaドキュメントを参照してください。)

結論

この記事では、Grafanaダッシュボードを設定して、MongoDBデータベースのPrometheusメトリクスを監視する方法について説明します。これにより、GUIダッシュボードを介してデータベースを監視できるようになります。まず、Prometheusをインストールし、MongoDBエクスポーターを設定しました。次に、GrafanaでPrometheusをデータソースとして追加し、MongoDBインスタンスからのデータを監視および可視化することができました。

MongoDBのための完全に稼働する監視パイプラインができたので、もう少し詳しく調べてみることができます。始めるためには、Grafanaで追加のダッシュボードを探索してみてください。

MongoDBについてもっと学びたい場合は、弊社のMongoDBデータ管理チュートリアルシリーズをチェックしてください。

素早く完全なデータベース環境を構築したい場合は、Silicon CloudのMongoDB Managed Databaseをご覧ください。

コメントを残す 0

Your email address will not be published. Required fields are marked *