これらのテンプレートは、ほとんどの共通の監視指標を監視することがgrafana組み合わせプロメテウスは、テンプレートの数を提供していますが、いくつかの特別な指標は、(私はインデックス名を見つけられませんでした可能性がある)を提供することができませんでした。自然カスタム監視項目を考えるの影響を受けるZabbixは、promethuesもサポート。
I.はじめに
Pushgatewayのプロメテウスは、文字通りの意味から、部材はプロメテウスデータにプッシュしない成分が自動的にインデックスを監視実装することができると共に、重要な成分であるが、成分の指標として中間データを収集する外部のプッシュ、あろう定期プロメテウスpushgatewayからデータを引き出します。
プロメテウスのpushgatewayはそれだけで、ユーザーが自分のインデックス情報とレコードをプッシュすることができ、プッシュプルにしません。そしてないユーザデータのすべての時間の間にpushgatewayプロメテウスプッシュからは、クライアント側に引き上げたが、最後のプッシュデータ。したがって、クライアント側はpushgatewayエンドプロメテウスにデータがプロメテウス日付を保証することができるように、時刻データをプルする時間が少なくデータをプッシュするように設定します。
[注]インジケーターが(デフォルト5分)消えるまで、クライアントが新しい指標pushgatewayにプッシュされていない場合は、プロメテウスがデータを取得し、クライアントのデータの最後のプッシュです。
プロメテウス自体はインデックスに保存されているが、pushgatewayの予期せぬ再起動を防ぐためにケースを送信し、異常な仕事、一時インデックス、パラメータ--persistence.interval = 5メートル、5分後5分、デフォルトの保存、地元でpushgatewayを許可されていません保存されたインデックスが削除されます。
pushgatewayを使用する理由:
1は、問題がネットワークまたはファイアウォールがないのでプロメテウスのデフォルトは、モードを引っ張る、データプロメテウスに各ノードを引っ張るように導くことができません。
2、ビジネスデータを監視し、異なるデータがプロメテウスによって収集集約及び統一する必要があります
pushgateway欠陥:
それは大きな影響ダウンしたときに、複数のノードから1、集計データは、pushgatewayする
2は、pushgatewayは古い監視データを取得し、モニターは組立ラインオフされている場合でも、監視データのすべてをプッシュし続けることができます。手動で不要なデータをクリーンアップする必要があり
、再起動、データの損失の後、3
第二に、スタート
1、ドッキングウィンドウの開始はpushgateway
dockerhubログインする必要があります
ログインを入力するドッカーのユーザー名とパスワードを
ドッキングウィンドウプルプロム/ pushgateway
ドッカ実行-d --name pushgateway -p 9091:9091 --restart =常にプロム/ pushgateway
2、9091アクセスポート(HTTP:// pushgatewayIP:9091)
Pushgatewayは、展開を成功さを証明しました
3、添加pushgatewayノードプロメテウス
オープンプロメテウスプロフィール
- job_name: 'pushgateway' static_configs: - targets: ['pushgatewayIP:9091'] honor_labels: true #作用:如果没有设置instance标签,Prometheus服务器也会附加标签,否则instance标签值会为空
重启prometheus后,登陆web UI,查看prometheus的targets
4、测试
向pushgateway发送数据
echo "test 123" | curl --data-binary @- http://pushgatewayIP:9091/metrics/job/test
上述测试的目的是,在被监控的机器上,想pushgateway发送了一条数据,内容是“test 123”,指标名称是“test”,指标值是“123”;
http://pushgatewayIP:9091/metrics/job/test,此次也声名了,在pushgateway处建立一个job为test的指标。
推送的API路径
所有的推送都是通过HTTP完成的,API路径如下:
/metrics/job/<JOBNAME>{/<LABEL_NAME>/<LABEL_VALUE>}
JOBNAME:job标签的值
/ 是转义符
登陆prometheus webUI查询指标是否生成
三、pushgateway发送数据的API格式
API格式:
http://pustgatewayIP/metrices/job/job名/标签名/标签值(一般 标签名 采用 instance)
例子:
http://pustgatewayIP/metrics/job/
/sb/instance/si
/testjob/abc/pushgateway1
/testjob/yyy/pushgateway1
分别触发上述三个API,打开pushgateway的web UI
四、发送的数据类型
1、发送counter类型
可以一次发送单个,也可以发送多个数据
cat <<EOF | curl --data-binary @- http://pushgatewayIP:9091/metrics/job/docker_runtime/instance/xa-lsr-billubuntu
# TYPE docker_runtime counter
docker_runtime{name="cadvisor"} 33
docker_runtime{name="nginx"} 331
docker_runtime{name="abc"} 332
EOF
2、发送gauage类型
可以一次发送单个,也可以发送多个数据
cat <<EOF | curl --data-binary @- http://pushgatewayIP:9091/metrics/job/docker_runtime/instance/xa-lsr-billubuntu
# TYPE docker_runtime gauge
# HELP docker_runtime time sec
docker_runtime{name="nginx"} 22
docker_runtime{name="cadvisor"} 22
docker_runtime{name="bbc"} 22
EOF
3、curl的另一种发送形式
--data-binary <data> 与-d, --data类似,如果以@开头,则后面必须跟着文件名,并且文件中的换行符,回车符会保留,也不会做
将要发送的数据写入文件“a”,作用是将文件中的数据发送到指定地方
curl --data-binary "@a" http://pushgatewayIP:9091/metrics/job/docker_runtime/instance/xa-lsr-billubuntu