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 の高さをブラウザの高さに合わせて調整する方法

推薦する

MySQLはPartition関数を使用して水平分割戦略を実装します。

目次1件のレビュー2 水平分割の5つの戦略2.1 ハッシュ2.2 範囲2.3. キー2.4. リスト...

VMware 構成 VMnet8 ネットワーク方法の手順

目次1. はじめに2. 設定手順1. はじめに1. NAT モード (VMnet8) は、仮想マシン...

JavaScript のクロージャによって発生する問題を回避する

閉鎖による問題を回避するためのletについてオブジェクト指向の考え方を使用して、購入者情報の削除機能...

Innodb で MySQL の 2T テーブルをすばやく削除する方法の例

序文この記事は主に、MySQL の Innodb で 2T の大きなテーブルをすばやく削除する方法に...

CSS モジュールソリューション

CSS のモジュール ソリューションは、JS のモジュール ソリューションと同じくらい多く存在すると...

HTML に基づいてページを更新せずにフォーム送信を実装する

ページを更新せずにフォーム送信を実装するために Ajax を使用することは、プロジェクトでよく使用さ...

MySQLの挿入文字化け問題を解決する方法

問題の説明: MySQL に中国語の文字を挿入する場合、または MySQL では中国語の文字が正常に...

mysql バックアップ戦略の実装 (フルバックアップ + 増分バックアップ)

目次設計シナリオ技術的なポイントサーバー情報準備フルバックアップスクリプト(Mysql-FullyB...

JS で列挙をシミュレートする方法

序文現在の JavaScript には列挙の概念がありません。一部のシナリオでは、列挙を使用するとデ...

CentOS 7 パスワードを忘れた場合の解決プロセス図

必要Windows システムでも Linux システムでも、さまざまな理由でパスワードを忘れてしまう...

JS の精度外数値問題の解決

精度の問題に対する最もわかりやすい説明たとえば、1÷3=0.33333333...という数字は、3が...

nginx のインストールが完了した後に PHP を解析できない問題の解決方法

目次方法1方法2 nginxをインストールした後、PHPコードを解析できないことがわかりました。解決...

Oracle の MySQL バージョンでユーザー Scott のテーブル ステートメントを作成する例

概要: Oracle scottユーザーには4つのテーブルがあり、実験やデータ検証に便利です。現在は...

MySQLクエリの基本的なクエリ操作の学習

序文MySQL は最も人気のあるリレーショナル データベース管理システムです。WEB アプリケーショ...