rometheus Blackbox监控网站

news2024/9/21 20:45:26

Blackbox Exporter简介

blackbox_exporter 是 Prometheus 拿来对 http/https、tcp、icmp、dns、进行的黑盒监控工具,也就是从服务、主机等外部进行探测,来查看服务、主机等是否可用。
Blackbox Exporter 默认端口是 9115,
安装1
wget https://github.com/prometheus/blackbox_exporter/releases/download/v0.25.0/blackbox_exporter-0.25.0.linux-amd64.tar.gz
tar -zxf blackbox_exporter-0.25.0.linux-amd64.tar.gz
mv xxxx /usr/local/bin/blackbox_exporter

#只监控网站官网默认配置不需要更改
# ll
total 21124
-rw-r--r-- 1 1001 1002    11357 Apr  9 21:00 LICENSE
-rw-r--r-- 1 1001 1002       94 Apr  9 21:00 NOTICE
-rw-r--r-- 1 1001 1002      956 Apr  9 21:00 blackbox.yml
-rwxr-xr-x 1 1001 1002 21606608 Apr  9 20:59 blackbox_exporter
配置快速启动文件
cat > /usr/lib/systemd/system/blackbox_exporter.service <<EOF
[Unit]
Description=blackbox_exporter
After=network.target

[Service]
User=root
Type=simple
ExecStart=/usr/local/bin/blackbox_exporter/blackbox_exporter --config.file=/usr/local/blackbox_exporter/blackbox.yml
Restart=on-failure

[Install]
WantedBy=multi-user.target

EOF

systemctl daemon-reload
systemctl restart blackbox_exporter
systemctl enable blackbox_exporter
systemctl status blackbox_exporter
dockr快速启动
docker run -d  -p 9115:9115 -v /blackbox/blackbox.yml:/config/blackbox.yml --name blackbox quay.io/prometheus/blackbox-exporter:latest
k8s 启动
cat >  blackbox.yml  <<EOF
apiVersion: apps/v1
kind: Deployment
metadata:
  name: blackbox-exporter
spec:
  replicas: 1
  selector:
    matchLabels:
      app: blackbox-exporter
  template:
    metadata:
      labels:
        app: blackbox-exporter
    spec:
      containers:
      - name: blackbox-exporter
        image: quay.io/prometheus/blackbox-exporter:latest
        ports:
        - containerPort: 9115
        volumeMounts:
        - name: config-volume
          mountPath: /config
          readOnly: true
        command:
        - "blackbox_exporter"
        args:
        - "--config.file=/config/blackbox.yml"
      volumes:
      - name: config-volume
        configMap:
          name: blackbox-exporter-config
---
apiVersion: v1
kind: Service
metadata:
  name: blackbox-exporter-service
spec:
  selector:
    app: blackbox-exporter
  ports:
  - protocol: TCP
    port: 9115
    targetPort: 9115
  type: ClusterIP
EOF

conf

cat >config-blackbox.yml<<EOF
apiVersion: v1
data:
  blackbox.yml: |-
    modules:
      http_2xx:
        prober: http
        http:
          preferred_ip_protocol: "ip4"
      http_post_2xx:
        prober: http
        http:
          method: POST
      tcp_connect:
        prober: tcp
      pop3s_banner:
        prober: tcp
        tcp:
          query_response:
          - expect: "^+OK"
          tls: true
          tls_config:
            insecure_skip_verify: false
      grpc:
        prober: grpc
        grpc:
          tls: true
          preferred_ip_protocol: "ip4"
      grpc_plain:
        prober: grpc
        grpc:
          tls: false
          service: "service1"
      ssh_banner:
        prober: tcp
        tcp:
          query_response:
          - expect: "^SSH-2.0-"
          - send: "SSH-2.0-blackbox-ssh-check"
      irc_banner:
        prober: tcp
        tcp:
          query_response:
          - send: "NICK prober"
          - send: "USER prober prober prober :prober"
          - expect: "PING :([^ ]+)"
            send: "PONG ${1}"
          - expect: "^:[^ ]+ 001"
      icmp:
        prober: icmp
      icmp_ttl5:
        prober: icmp
        timeout: 5s
        icmp:
          ttl: 5
kind: ConfigMap
metadata:
  name: blackbox-exporter-config
EOF

http监控

HTTP就是通过GET或者POST的方式来检测应用是否正常。 这种场景多用于监控网页是否正常,如:公司官网是否不能正常打开,或者打开过慢这样的情况
cd /usr/local/prometheus
mkdir sd_file/blackbox
cat sd_file/blackbox/probe_http.yml
- targets:
  - http://192.168.92.101:8081/    # Target to probe with http.
  - https://www.bilibili.com/   # Target to probe with https.
  - http://example.com:8080

  labels:
    web: probe_http


vim prometheus.yml
# 这个是 http 探测的结果
  - job_name: 'probe_http'
    metrics_path: /probe
    params:
      module: [http_2xx]  # Look for a HTTP 200 response.
    file_sd_configs:
    - refresh_interval: 10s
      files:
      - "/usr/local/prometheus/sd_file/blackbox/*.yml"       
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: blackbox.monitoring.IP:9115  # The blackbox exporter's real hostname:port.
        
# 这个配置是 blackbox_exporter/metrics 的数据
 # collect blackbox exporter's operational metrics.                   
  - job_name: 'blackbox_exporter'  # collect blackbox exporter's operational metrics.
    static_configs:
      - targets: ['blackbox.monitoring.IP:9115']
### 以上自定义配置


# ============================== 以下是我的自己的配置,可根据需要进行修改
- job_name: "blackbox_http"
  metrics_path: /probe
  params:
    module: [http_2xx]
  static_configs:
    - targets:
      - https://prod1-im-m.xx000.info
      - https://prod1-im-manage-web.xx000.info
      - https://prod1-im-www.xx00.info
  relabel_configs:
    - source_labels: [__address__]
      target_label: __param_target
    - source_labels: [__param_target]
      target_label: instance
    - target_label: __address__
      replacement: 192.168.0.20:9115
TCP监控-探测端口
#TCP监控主要是通过类似于Telnet的方式进行检测
vim prometheus.yml

- job_name: "check-middleware-tcp"
  metrics_path: /probe
  params:
    module: [tcp_connect]  # Look for a HTTP 200 response.
  static_configs:
    - targets:
      - xx.xx.xx.xx:80
      - xx.xx.xx.xx:3306
      labels:
        group: middleware-tcp
  relabel_configs:
    - source_labels: [__address__]
      target_label: __param_target
    - source_labels: [__param_target]
      target_label: instance
    - target_label: __address__
      replacement: blackbox.monitoring:9115

在这里插入图片描述
在这里插入图片描述

最后 grafana ID推荐 18538 19342
https://grafana.com/grafana/dashboards/19342-blackbox-exporter/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2103016.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Codeforces Round (Div.3) C.Sort (前缀和的应用)

原题&#xff1a; time limit per test&#xff1a;5 seconds memory limit per test&#xff1a;256 megabytes You are given two strings a and b of length n. Then, you are (forced against your will) to answer q queries. For each query, you are given a range …

Dify 与 FastGPT 流程编排能力对比分析

Dify 与 FastGPT 流程编排能力对比分析 一、引言 在人工智能快速发展的今天&#xff0c;大语言模型&#xff08;LLM&#xff09;应用平台正在重塑各行各业的工作流程。其中&#xff0c;Dify 和 FastGPT 作为两款具有重要影响力的工具&#xff0c;凭借各自独特的流程编排能力&a…

智能化升级:AI在客服知识库中的应用

引言 在数字化时代&#xff0c;客户服务已成为企业竞争的关键一环。随着人工智能&#xff08;AI&#xff09;技术的飞速发展&#xff0c;传统客服模式正经历着前所未有的变革。AI与客服知识库的深度融合&#xff0c;不仅极大地提升了客服处理的效率与准确性&#xff0c;还为用…

unreal engine 5.4.4 runtime 使用PCG

Unreal PCG Runtime runtime环境下控制PCG PCG Graph 这里简单的在landscape上Spawn Static Mesh 和 Spawn Actor GraphSetting 自定义的参数&#xff0c;方便修改 场景 这里新建了一个蓝图Actor PCG_Ctrl, 用来runtime的时候控制PCG生成 Construct 获取场景中的PCGVolum…

Oracle版本简介手册

Oracle版本简介手册 图1—数据库发布路线图表 Oracle数据库的各个版本反映了其技术的发展历程和功能增强&#xff0c;从最早的Oracle 1&#xff08;1979年&#xff09;到最新的版本&#xff0c;每个版本都带来了新的特性和改进&#xff0c;以满足不断变化的企业需求。以下是Or…

【数学建模国赛思路预约】2024全国大学生数学建模竞赛助攻思路、代码、论文

2024年全国大学生数学建模大赛马上就要开始了&#xff0c;大家有没有准备好呢&#xff0c;今年将会和之前一样&#xff0c;将会在比赛赛中时期为大家提供比赛各题的相关解题思路、可运行代码参考以及成品论文。 一、分享计划表如下所示 1、 赛中分享内容包括&#xff08;2023国…

详解React setState调用原理和批量更新的过程

1. React setState 调用的原理 setState目录 1. React setState 调用的原理2. React setState 调用之后发生了什么&#xff1f;是同步还是异步&#xff1f;3. React中的setState批量更新的过程是什么&#xff1f; 具体的执行过程如下&#xff08;源码级解析&#xff09;&#x…

马尔科夫决策过程(MDP):详解与应用

马尔科夫决策过程&#xff08;MDP&#xff09;&#xff1a;详解与应用 引言 在人工智能、机器学习和运筹学等领域&#xff0c;马尔科夫决策过程&#xff08;Markov Decision Process&#xff0c;MDP&#xff09;是一个基础而重要的数学模型。MDP 被广泛应用于优化决策问题&am…

1.1什么是SQL注入

SQL 注入&#xff08;Injection&#xff09; 概述 SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严&#xff0c;攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句&#xff0c;在管理员不知情的情况下实现非法操作&#xff0c;以此来…

异步 “一发入魂“

异步 概述&#xff1a; 异步就是从主线程发射一个子线程来完成任务。 什么时候用异步编程 主线程作为一个线程&#xff0c;不能够同时接受多方面的请求。所以&#xff0c;当一个事件没有结束时&#xff0c;界面将无法处理其他请求。 为了避免这种情况的发生&#xff0c;我们…

zookeeper是啥?在kafka中有什么作用

一、Zookeeper是啥 问AI&#xff0c;它是这么说&#xff1a; ZooKeeper是一个开源的分布式协调服务。 ZooKeeper最初由雅虎研究院开发&#xff0c;用于解决大型分布式系统中的协调问题&#xff0c;特别是为了避免分布式单点故障。它被设计成一个简单易用的接口集&#xff0c;封…

家教管理系统设计与实现

摘 要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费事费力。因此&#xff0c;在计算机上安装家教管理系统软件来发挥其高效地信息处理的作用&#xff0c…

《Cloud Native Data Center Networking》(云原生数据中心网络设计)读书笔记 -- 09部署OSPF

本章的目的是帮助网络工程师确定网络的理想 OSPF 配置。本章将回答以下问题 应何时在数据中使用OSPF ?配置 OSPF 的关键设计原则是什么?OSPFv2 和 OSPFv3 之间有什么区别&#xff0c;应如何使用?如何在路由协议栈中配置 OSPF ?如何在服务器上配置 OSPF&#xff0c;例如为容…

【Python机器学习】词向量推理——词向量

目录 面向向量的推理 使用词向量的更多原因 如何计算Word2vec表示 skip-gram方法 什么是softmax 神经网络如何学习向量表示 用线性代数检索词向量 连续词袋方法 skip-gram和CBOW&#xff1a;什么时候用哪种方法 word2vec计算技巧 高频2-gram 高频词条降采样 负采样…

SpringMvc--后续(参数问题)

参数问题 package com.hwq.controller;import com.hwq.beans.User; import org.springframework.beans.propertyeditors.CustomDateEditor; import org.springframework.stereotype.Controller; import org.springframework.web.bind.WebDataBinder; import org.springframewo…

vllm源码解析(一):整体架构与推理代码

vlllm官方代码更新频发,每个版本都有极大变动, 很难说哪个版本好用. 第一次阅读vllm源码是0.4.0版本,对这版圈复杂度极高的调度代码印象深刻 0.4.1对调度逻辑进行重构,完全大变样, 读代码速度快赶不上迭代的速度了。 现在已经更新到0.5.4, 经过长时间观察&#xff0c;发现主要的…

认知杂谈34

今天分享 有人说的一段争议性的话 I 环境的影响 I 首先得说说&#xff0c;环境这东西对人的影响真不是盖的。你要是老待在一个死气沉沉的地方&#xff0c;那你的激情和梦想&#xff0c;可能慢慢就会被磨得平平无奇。 I 激情的消逝 I 本来你可能是满怀激情&#xff0c;想要大干一…

HMI触屏网关-VISION如何与Node-red通信

上文&#xff1a;HMI触屏网关-VISION如何与Modbus TCP从机通信-CSDN博客 1. Node-red启用HTTP监听 HTTP监听&#xff0c;用于模拟WebAPI服务端&#xff0c;接收WebAPI客户端GET请求。 启用HTTP监听服务&#xff0c;选择请求方式GET&#xff1b;URL自定义&#xff0c;本示例设…

人活着的意义是什么

大家好&#xff0c;我是凡人。 最近很多行业已经受到了 AI 带来的冲击&#xff0c;造成现在网络上一些消极情绪滋生。 这篇文章来源于我回答了一个知乎小哥的问题后&#xff0c;有了点思考&#xff0c;他的问题是这样的“可能我们普通人一辈子都无法为人类社会做出大的贡献&a…

自动化测试概念(1)

常⻅⾯试题 1.⾃动化测试能够取代⼈⼯测试吗&#xff1f; ⾃动化测试不⼀定⽐⼈⼯测试更能保障系统的可靠性&#xff0c;⾃动化测试是测试⼈员⼿⼯编写&#xff0c; 后续如果有功能的变更⾃动化也需要进⾏不定期的维护和更新。 2.⾃动化测试可以⼤幅度降低⼯作量&#xff1…