前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >腾讯云Lighthouse安装Blackbox监控网站状态

腾讯云Lighthouse安装Blackbox监控网站状态

原创
作者头像
若海
修改2023-10-31 00:24:35
1.9K0
修改2023-10-31 00:24:35
举报
文章被收录于专栏:云原生拾遗云原生拾遗

本教程将引导读者在Kubernetes集群上安装和配置Blackbox exporter,打造一个多维度的网站运行状态仪表盘(视图效果见文末)。

Blackbox exporter是一个用于监控网络服务的开源工具,它可以用于检查 HTTP、HTTPS、DNS、TCP 和 ICMP 等服务的可用性,并生成 Prometheus 格式的指标供后续分析和警报使用。

准备工作

在开始之前,请确保您已经在Kubernetes 集群上安装 Grafana 和 Prometheus推荐使用腾讯云轻量服务器·K3s镜像,开箱即用,省去手动部署集群的繁琐过程。

当然,如果你已部署好Blackbox exporter,可以划到文章底部,跳过安装步骤,导入我准备的大屏配置文件。

安装 Blackbox exporter

将下面的配置文件保存为blackbox.yml,上传到集群主节点,执行部署命令kubectl apply -f blackbox.yml。如果有安装管理面板,也可以直接导入下面的配置信息。

代码语言:yaml
复制
kind: Deployment
apiVersion: apps/v1
metadata:
  name: &name blackbox-gz
  labels:
    app: *name
spec:
  selector:
    matchLabels:
      app: *name
  template:
    metadata:
      labels:
        app: *name
    spec:
      containers:
        - name: blackbox
          image: prom/blackbox-exporter
          ports:
            - containerPort: 9115
---
kind: Service
apiVersion: v1
metadata:
  name: &name blackbox-gz
  labels:
    app: *name
spec:
  selector:
    app: *name
  ports:
    - name: blackbox
      port: 9115
      targetPort: 9115

配置 Prometheus 任务

参考下面的配置文件,修改上文中提到的/srv/grafpro/etc/prometheus.yml(文件编码须为utf-8;若部署时修改了负载名称blackbox-exporter,下文的配置文件也要做相应的修改),然后重启grafpro工作负载。

为方便初学者部署,这里使用了静态配置,每次修改站点信息都需要重启工作负载;读者朋友也可以使用file_sd_configs配置将站点信息保存到单独的文件,实现站点配置热加载(即服务自动发现)。

代码语言:yaml
复制
global:
  scrape_timeout: 15s
  scrape_interval: 1m
  evaluation_interval: 1m

scrape_configs:
  # prometheus
  - job_name: prometheus
    static_configs:
      - targets:
          - 127.0.0.1:9090
  # blackbox_all
  - job_name: blackbox_all
    static_configs:
      - targets:
          - blackbox-gz:9115
        labels:
          region: '广州,腾讯云'
  # http_status_gz
  - job_name: http_status_gz
    metrics_path: /probe
    params:
      module:
        - http_2xx
    static_configs:
      - targets:
          - https://www.example.com
        labels:
          project: 测试1
          desc: 测试网站描述1
      - targets:
          - https://www.example.org
        labels:
          project: 测试2
          desc: 测试网站描述2
    relabel_configs:
      - target_label: region
        replacement: '广州,腾讯云'
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: blackbox-gz:9115

导入 Grafana 仪表盘

下载此附件网站监控大屏.json,然后在Grafana的仪表盘页面导入即可使用。这是一个基于Blackbox exporter数据集的仪表盘配置文件,主要特性如下:

  • 支持查看多节点、多站点数据
  • 支持查看站点证书有效期数据
  • 支持查看站点连通性、HTTP阶段性能数据

效果展示

图片仅供演示,监控仪表盘配置随时可能更新,请以最终效果为准。

站点概览
站点概览
网站详情
网站详情

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 准备工作
  • 安装 Blackbox exporter
  • 配置 Prometheus 任务
  • 导入 Grafana 仪表盘
    • 效果展示
    相关产品与服务
    容器服务
    腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档