1プロメテウスのインストールと最適化

1つのインストール

1ダウンロード、開始

prometheusのダウンロードアドレス
https://prometheus.io/download/#prometheus
ダウンロード後、解凍して/ usr / localにコピーします

[root@server04 down]# tar -xvzf prometheus-2.2.0-rc.0.linuxamd64.tar.gz 
cp -r prometheus-2.2.0-rc.0.linux-amd64 /usr/local/

./promehteus #直接运行

2バックグラウンドで開始

daemonizeを使用してバックグラウンドモードにします。daemonizeUnixシステムのバックグラウンドデーモン管理ソフトウェア
は、daemonizeをダウンロードしてインストールする必要があります。


git clone https://github.com/bmc/daemonize.git sh configure && make && sudo make install 
用daemonize去启动prometheus服务

daemonize -c /data/prometheus/ /data/prometheus/up.sh

上記のコマンドを実行すると、/ data / prometheus /ディレクトリにデータディレクトリが生成されます。次の再起動で
は、このディレクトリを指定する必要があります-cは指定された操作パス/data/prometheus/up.shは操作パススクリプトの起動スクリプトは
次のとおりです:
/ data / prometheusディレクトリの下に解凍したプロメテウスを置く必要があります

/data/prometheus/prometheus/prometheus  --config.file="/data/prometheus/prometheus/prometheus.yml"

3構成ファイル

[root@k8s-node1 prometheus]# grep -v "^#" /data/prometheus/prometheus/prometheus.yml
global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093

rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: 'prometheus'

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
    - targets: ['localhost:9090']

1つは、グローバル変数scrape_intervalがデータを収集するために設定する時間間隔の数です。

もう1つは、ジョブとターゲットを書き込むことです。ジョブラベルを構成し、このラベルの下で監視する必要があるマシンを定義します。

4 node_exporterのインストールとバックグラウンド操作

4.1クライアントの構成
ダウンロードアドレスはhttps://prometheus.io/download/#node_exporter
ですデフォルトの操作
ポート9100で開始します

daemonize -c / data / node_exporter / /data/node_exporter/up.sh

スクリプトの内容:

cat up.sh
/prometheus/node_exporter/node_exporter --web.listen-address=":9200"

クエリデータ:
curl localhost:9100 / metrics

4.2サーバー構成

●監視サーバーは構成ファイルを変更します。次の9200はnode_exportのデフォルトのポート番号です

次に、表示するWebページに移動し、[ステータス]-[ポイントターゲット]をクリックします。

2つのPushushgatwayのインストールと操作および構成

2.1監視サーバー構成(Prometheusサーバー)

1.211はpushgatwayによるサーバーで
あり、その後prometheusサーバーを再起動します

2.2監視対象端末の操作

ダウンロードアドレスはhttps://prometheus.io/download/#pushgatewayです。解凍後の
デフォルトポートは9091です
起動が完了したら、http: //192.168.1.211:9091 /#にアクセスできます。

待機中の接続の数を収集する監視スクリプトを作成する

#!/bin/bash 
instance_name=`hostname -f | cut -d'.' -f1` #本机机器名变量用于之后的标签 
if [ $instance_name == "localhost" ];then
echo "Must FQDN hostname" 
exit 1 
fi
count_netstat_wait_connections=`netstat -an | grep -i wait | wc -l` 
echo "count_netstat_wait_connections $count_netstat_wait_connections" | curl --data-binary @- http://192.168.1.211:9091/metrics/job/pushgateway/instance/$instance_name

次にcrontabを設定します* / 1 * * * * bash /prometheus/pushgateway.sh
もちろん、独自のスクリプトをcrontabと組み合わせて定期的に実行する必要があり
ます。1分間隔で15秒未満にしたい場合は、sleepを使用してください

次に、監視ページに移動して、グラフが生成されているかどうかを確認します。

URL説明:
最後にキーと値をpushgatwayにプッシュします

curl — data-binaryは、HTTP POSTリクエストのデータをHTTPサーバーメーター(pushgateway)に送信します。これは、ユーザーがHTMLフォームを送信したときのブラウザーメーターの行とまったく同じです。HTTP POSTリクエストのデータは純粋なバイナリデータです

http://prometheus.server.com:9091/metrics/job/pushgateway1/ instance / $ instance_name
最後に、POSTを使用してキーと値をpushgatwayのURLにプッシュします

URLアドレスは、次の3つの部分に分かれています。
http://prometheus.server.com:9091/metrics/job/pushgateway1 
マスターURLから個々のケースLOCATIONある
仕事/ pushgateway1 
プッシュ:最初のフレームの部分セカンドショットラベルから個々のケースどのジョブがprometheus.ymlによって定義されていますか?
{Instance =“ server01”}
instance / $ instance_name
これは、2番目のラベルがプッシュされた後に表示されるマシン名です

おすすめ

転載: www.cnblogs.com/huningfei/p/12715234.html