Ops实践 | 云原生Prometheus监控之企业网站指标采集预警及可视化大盘展示

f0b0ec22fb8f5dde3a8d8a4fc5c7afbe.jpeg

b418381e4d9ff023a7766f0dd0540437.gif

微信改版了,现在看到我们全凭缘分,为了不错过【全栈工程师修炼指南】重要内容及福利,大家记得按照上方步骤设置「接收文章推送」哦~

关注回复【学习交流群】加入【SecDevOps】学习交流群!

原文链接:

Ops实践 | 云原生Prometheus监控之企业网站指标采集预警及可视化大盘展示此文章讲解在企业国产化系统搭建的云原生环境下,如何使用Prometheus监控之blackbox_exporter导出器,来采集企业内部或外部的业务系统站点以及网站证书过期时间,然后编写预警规则,并使用Altermanager进行告警通知。icon-default.png?t=N7T8https://mp.weixin.qq.com/s/Ws7S5ranjoYOJfM7KZcCwQ


前言简述:

从本章开始,作者将主要针对企业中主机系统(Linux、Windows)、K8S集群节点与Pod、网站服务(http、dns)、数据库、网络安全设备进行指标采集与监控预警进行实践记录,我将从基础环境安装,到目标对象的监控,以及目标监控指标的可视化展示和目标预警规则的设置几方面入手。

让看友可以更随着我快速的进行实践操作,为数字企业转型舔砖加瓦,全面迎接云原生环境下的企业内部监控预警和展示,至此也希望大家多多支持此《#云原生落地实用指南》专栏,作者将会持续更新云原生下Prometheus的监控和等保下企业内部日志收集实践,我相信你看了此系列专栏必定会有所收获。

此篇文章,将开始主要讲解云原生环境下,如何使用Prometheus监控之blackbox_exporter导出器,来采集企业内部或者外部的业务系统站点以及网站证书过期时间,然后编写预警规则,并使用Altermanager进行告警通知,废话不多说,实践出真知。,废话不多说,实践出真知。

实践效果:

图1.blackbox 导出器采集监控目标

47219a6dff14f10f6923557e5b221180.png图2..blackbox 导出器采集指标可视化展示 0b0ce80171c0366755db31b92203ada7.png
图3.blackbox 导出器采集指标告警规则

7a9f8d333106b12aba094462571e6491.png

图4.使用Altermanager针对采集指标进行告警

2b4633176f6152b81bd0ef3887763116.png

文章目录

d8972efeac280f281749fedbfcf11ee5.png


blackbox_exporter - 黑盒导出器

描述: blackbox 导出器允许通过HTTP/HTTPS(网站可用性)、DNS(域名解析)、TCP(端口存活)、ICMP(主机存活检测)和gRPC对端点进行黑盒探测。

项目地址: https://github.com/prometheus/blackbox_exporter

温馨提示:blackbox_exporter 通常有两种安装方式,方式一是通过系统的systemd进行管理使用(文章末尾附上安装脚本),方式二是通过容器进行安装使用。

由于此处我们主要是在云原生的K8S环境中,所以此处作者选用后者进行演示,注意此处是在上一篇文章《Ops实践 | 从零开始,搭建云原生环境下企业监控预警可视化平台》基础之上进行的,所以请还没有配置相关环境的童鞋再参考一下。

目标对象监控

操作步骤:

  • Step 1.安装前置准备工作。

# 创建相关配置目录
mkdir -vp /storage/app/monitoring/blackbox_exporter
mkdir -vp /storage/app/monitoring/prometheus/exporter

# 拉取
docker pull quay.io/prometheus/blackbox-exporter:latest
docker tag quay.io/prometheus/blackbox-exporter:latest harbor.cloud/weiyigeek/blackbox-exporter:20231108

# 上传
docker push harbor.cloud/weiyigeek/blackbox-exporter:20231108
  • Step 2.创建 blackbox_exporter 相关模块配置文件, 可以使用icmp、tcp、grpc、dns、http/https(get|post)以及http_oauth_client_credentials 等相关操作。

tee /storage/app/monitoring/blackbox_exporter/blackbox.yaml <<'EOF'
modules:
  icmp:
    prober: icmp
    timeout: 5s
    icmp:
      preferred_ip_protocol: "ip4"
  tcp:
    prober: tcp
    timeout: 5s
  tcp_tls:
    prober: tcp
    timeout: 5s
    tcp:
      tls: true
  grpc:
    prober: grpc
    grpc:
      tls: true
      preferred_ip_protocol: "ip4"
  dns:
    prober: dns
    timeout: 5s
    dns:
      query_name: "www.weiyigeek.top"
      query_type: "A"
      valid_rcodes:
        - NOERROR
  http_get:
    prober: http
    timeout: 5s
    http:
      valid_http_versions: ["HTTP/1.1", "HTTP/2.0"]
      valid_status_codes: [200]
      method: GET
      headers:
        User-Agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0"
      tls_config:
        insecure_skip_verify: false
      preferred_ip_protocol: "ip4"   # Defaults to "ip6"
  http_post:
    prober: http
    timeout: 5s
    http:
      valid_http_versions: ["HTTP/1.1", "HTTP/2.0"]
      valid_status_codes: [200]
      method: POST
      headers:
        User-Agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0"
        Content-Type: application/json
      body: '{}'
      fail_if_not_ssl: false
      tls_config:
        insecure_skip_verify: false
      preferred_ip_protocol: "ip4"   # defaults to "ip6"
      ip_protocol_fallback: false    # no fallback to "ip6"
  http_basic_auth:
    prober: http
    timeout: 5s
    http:
      method: POST
      headers:
        Host: "login.weiyigeek.top"
      basic_auth:
        username: "username"
        password: "mysecret"
  http_oauth_client_credentials:
    prober: http
    timeout: 5s
    http:
      valid_http_versions: ["HTTP/1.1", "HTTP/2"]
      follow_redirects: true
      preferred_ip_protocol: "ip4"
      valid_status_codes:
        - 200
        - 201
      oauth2:
        client_id: "client_id"
        client_secret: "client_secret"
        token_url: "https://api.weiyigeek.top/token"
        endpoint_params:
          grant_type: "client_credentials"
EOF
  • Step 3.创建部署blackbox的deployment资源清单文件

完整原文:Ops实践 | 云原生Prometheus监控之企业网站指标采集预警及可视化大盘展示

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全栈工程师修炼指南

原创不易,赞赏鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值