Prometheus+Grafanaによるnginxの監視方法を分析する

Prometheus+Grafanaによるnginxの監視方法を分析する

ここに画像の説明を挿入

Prometheus では、ngxin にプローブを挿入し、プローブを通じて ngxin 情報を取得し、インターフェースを通じて出力する必要があります。以下では、ngxin を監視する方法について説明します。

1. ダウンロード

便宜上、ダウンロード アドレスをここに示します。テンプレートに満足できない場合は、公式 Web サイトにアクセスして自分でダウンロードすることもできます。

nginx:

リンク: https://pan.baidu.com/s/1QxcWrxAEARlEhxSb2ZETjQ

抽出コード: 6fp5

nginx-モジュール-vts-マスター:

リンク: https://pan.baidu.com/s/1gCyAithAlRkORuZwhpcPmA

抽出コード: h9aa

nginx-vts-エクスポーター
リンク: https://pan.baidu.com/s/1gVB_I6ifDbeNIBX5x9pGAA

抽出コード: upkw

nginx-vts-stats_rev2 (Grafana 表示テンプレート)
リンク: https://pan.baidu.com/s/1VI9V395OemPkf6W-sNL9HQ

抽出コード: da56

2. nginxとnginx-vts-exporterをインストールする

1. nginx-vts-exporterを解凍する

ここで nginx を再インストールし、nginx-vts-exporter を解凍して usr/local に配置します。

nginx-module-vts-master.zip を解凍します。

nginx のバージョンには要件があり、要件を満たさない場合はエラーが報告されることに注意してください。以下は対応する nginx のバージョンです。

ここに画像の説明を挿入

2. nginx を解凍します。

tar -zxvf nginx-1.14.2.tar.gz

3. インストール

nginx-vts-exporter を nginx パスに入れてインストールします。

usr/local/nginx-1.14.2 をコピーします
./configure --prefix=/usr/local/nginx --add-module=usr/local/nginx-module-vts-master/
注: prefix=/usr/local/nginx は、インストール場所が /usr/local/nginx フォルダーであることを意味します。

4. confファイルを変更する

http {
    vhost_traffic_status_zone;
    vhost_traffic_status_filter_by_host がオン;

...

サーバー{

    ...

    場所 / ステータス {
        vhost_traffic_status_display;
        vhost_traffic_status_display_format html;
    }
}

5. スタートアップ

/usr/local/nginx/sbin をコピーします
./nginx 

ここに画像の説明を挿入

http://ip/status にアクセスすると、nginx と nginx-vts-exporter が正常にインストールされたことを示す次の情報が表示されます。

3. nginx-vts-exporter-0.9.1.linux-amd64.tarをインストールする

ここでのインストール パッケージは usr/local に配置され、解凍されます。

tar -zxvf nginx-vts-exporter-0.9.1.linux-amd64.tar

起動する。

/usr/local/nginx-vts-exporter-0.9.1.linux-amd64 をコピーします。
nohup ./nginx-vts-exporter -nginx.scrape_uri http://ip/status/format/json &

http://ip:9913/metrics と入力します。以下の情報が表示されれば完了です。

ここに画像の説明を挿入

4. Prometheusを構成する

/usr/local/prometheus-2.17.1.linux-amd64/prometheus.yml を変更します。

# 私のグローバル設定
グローバル:
  scrape_interval: 15s # スクレイプ間隔を 15 秒ごとに設定します。デフォルトは 1 分ごとです。
  evaluation_interval: 15s # 15 秒ごとにルールを評価します。デフォルトは 1 分ごとです。
  # scrape_timeout はグローバルデフォルト (10 秒) に設定されています。
 
# アラートマネージャの設定
警告:
  アラートマネージャー:
  - 静的設定:
    - ターゲット:
      # - アラートマネージャー:9093
 
# ルールを一度読み込み、グローバル 'evaluation_interval' に従って定期的に評価します。
ルールファイル:
  # - "first_rules.yml"
  # - "second_rules.yml"
 
# スクレイピングするエンドポイントを 1 つだけ含むスクレイピング設定:
# ここでは Prometheus そのもの。
scrape_configs:
  # ジョブ名は、この設定から取得されたすべての時系列にラベル `job=<job_name>` として追加されます。
  - ジョブ名: 'プロメテウス'
    静的設定:
    - ターゲット: ['localhost:9090']
  - ジョブ名: 'nginx'
    静的設定:
      - ターゲット: ['ip:9913']    

以下の構成は成功しました。

ここに画像の説明を挿入

5. Grafanaを設定する

Grafana 視覚化ページのアドレスを入力します: ip:3000。

1. データソースを構成する(Prometheus アドレス: ip:9090)

ここに画像の説明を挿入
ここに画像の説明を挿入

上の画像に Prometheus アドレスを入力し、ポートとして 9090 を入力することを忘れないでください。保存をクリックします。失敗した場合は、プロンプトが表示されます。

2. ビジュアルインターフェーステンプレート

ここに画像の説明を挿入

上記で設定したデータ ソースを選択します。prometheus オプションは、上記で設定したデータ ソースです。

ここに画像の説明を挿入

3. 検証

次の表示は成功を示します。

ここに画像の説明を挿入

これで、prometheus+grafana nginx 監視方法の分析に関するこの記事は終了です。より関連性の高い prometheus+grafana nginx 監視コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • PrometheusとGrafanaを使用したMySQLサーバーのパフォーマンス監視の詳細な説明
  • Grafanaのインストールと使用に関する詳細なチュートリアル
  • Grafana を使用して Docker コンテナの監視チャートを表示し、電子メールアラートルールを設定する (図)
  • Prometheus+Grafana を使用した Springboot アプリケーションの監視に関するチュートリアルの詳細な説明
  • Grafana+Prometheus を使用して MySQL サービスのパフォーマンスを監視する
  • docker ベースで Prometheus+Grafana を構築する手順の詳細説明
  • Influx+Grafana のカスタム Python データ収集の概要といくつかの落とし穴
  • SpringBoot+Prometheus+Grafanaでアプリケーション監視とアラームを実装するための詳細な手順
  • Linux で Grafana をインストールし、InfluxDB モニタリングを追加する方法
  • PrometheusはGrafanaディスプレイを使用してMySQLを監視します
  • Ubuntu で Grafana を使用して Docker を監視する方法
  • Docker を使用した JMeter+Grafana+Influxdb 監視プラットフォームの構築に関する詳細なチュートリアル
  • Docker 環境で JMeter+Grafana+influxdb ビジュアル パフォーマンス監視プラットフォームを構築するチュートリアル
  • dockerを使用してGrafana+Prometheus構成をデプロイする
  • ELKとGrafanaが共同でnginxログを分析するための視覚的なモニタリングを開発
  • Grafana のパスワードを忘れても大丈夫です。Grafana の管理者パスワードをリセットする 2 つの方法

<<:  CSS3+ベジェ曲線でスケーラブルな入力検索ボックス効果を実現

>>:  div の高さをブラウザの高さに合わせて調整する方法

推薦する

CentOS 6-7 PHPのyumインストール方法(推奨)

1. 現在インストールされているPHPパッケージを確認するyum list installed |...

MySQLとOracleの誤解の詳細な説明

目次本質的な違いデータベースセキュリティ権限スキーマの移行パターンオブジェクトの類似性スキーマオブジ...

Linux プロセス管理ツール スーパーバイザーのインストールと設定のチュートリアル

環境: CentOS 7公式ドキュメント: http://supervisord.org/インストー...

MySQLのインデックス選択と最適化の詳細な説明

目次インデックスモデルB+ツリーインデックスの選択インデックスの最適化インデックスの選択性カバーイン...

Swiper+echartsは複数のダッシュボードの左右スクロール効果を実現します

この記事では、ダッシュボードの左右スクロール効果を実現するためのスワイパー+echartsの具体的な...

Virtualbox に Centos7 仮想マシンをインストールする詳細なグラフィック チュートリアル

1. Centos7をダウンロードするダウンロードアドレス: https://mirrors.tun...

Svelte の Defer Transition を Vue で実装する方法

最近、Rich Harris の <Rethinking Reactivity> ビデオ...

Reactでwindow.print()を使用した際にページが応答しなくなる問題の解決記録について

目次1. 問題の背景: 2. 問題の原因: 3. 問題解決:要約: 1. 問題の背景: window...

Vue カスタム箇条書きボックス効果 (確認ボックス、プロンプトボックス)

この記事の例では、参考のためにVueカスタムポップアップ効果の具体的なコードを共有しています。具体的...

MySQLの手順を完全に削除する

目次1. まずMySQLサーバーを停止する2. MySQLサーバーをアンインストールする3. MyS...

MySQL 最適化: キャッシュ最適化 (続き)

MySQL 内部には至るところにキャッシュがあります。MySQL のソースコードを読むと、キャッシ...

Vue3 でタイマーコンポーネントをカプセル化する方法

背景一部のショッピング モールの Web ページで商品の詳細を開くと、購入数量を選択するためのカウン...

Jenkins の Docker のデプロイとインストール手順

まず、Docker がインストールされたサーバーが必要です。 (私はすでにこれをサーバーにインストー...

ウェブページ HTML 特殊記号 HTML 特殊文字比較表

特殊記号名前付きエンティティ10進数エンコード特殊記号名前付きエンティティ10進数エンコードアルファ...

12個のJavascriptテーブルコントロール(DataGrid)が整理されています

DataGrid コントロールの DataSource プロパティがデザイン時に設定されている場合、...