Myluzh Blog

Alertmanager 企业微信告警配置 自定义告警模板

2024-11-19 myluzh Kubernetes

0x01 alertmanager.yml配置 参数介绍: wechat_api_url:api地址,默认就是https://qyapi.weixin.qq.com/cgi-bin/ wechat_api_secret:创建应用后,在应用管理里面,获取到的应用的Secret wechat_api_corp_id:企业ID,在【我的企业】【企业信息】【企业ID】。 agent_id:创建应用后,在应用管理里面,获取到的应用的AgentId to_party:用于定义要接收告警通知的部门 ID global: resolve_timeout: 5m # wechat wechat_api_url: 'https://qyapi.weixin.qq.com/cgi-bin/' wechat_api_secret: '3uxxxxxxxxxxxxxxxxxxxxxxxxWv4' wechat_api_corp_id: 'wwxxxxxxxxb1' inhibit_rules: - source_match: severity: critical ta...

阅读全文>>

标签: Prometheus Alertmanager 企业微信 告警 wechat wechatapi

评论(0) (17)

Alertmanager 邮件告警配置

2024-11-18 myluzh Kubernetes

0x01 修改alertmanager.yaml配置文件 我的alertmanager是kube-prometheus部署,alertmanager.yaml是通过secrets挂载到alertmanager的。 # 创建一个带有邮件告警信息的配置 root@iZbp1bddlmdujngbc11omnZ:~/prom# vi alertmanager.yaml global: resolve_timeout: 5m smtp_smarthost: 'smtp.exmail.qq.com:465' smtp_hello: 'itho.cn' smtp_from: 'support@itho.cn' smtp_auth_username: 'support@itho.cn' smtp_auth_password: 'xxxxxxxxx' smtp_require_tls: true inhibit_rules: - equal: - namespace - alertname sourc...

阅读全文>>

标签: 邮件告警 Prometheus Alertmanager

评论(0) (22)

Prometheus blackbox-exporter自定义User-Agent

2024-10-29 myluzh Kubernetes

0x01 前言 在使用blackbox-exporter进行黑盒监控地址的时候,请求的URL被WAF拦截下来了,原因是blackbox-exporter请求时候UA太像扫描器了,"User-Agent: Go-http-client/1.1",导致被waf拦截了请直接返回403,实际状态码应该是200。 可以修改blackbox-exporter的请求UA,然后在waf上放行UA白名单。 0x02 修改blackbox-exporter请求的UA 1. 找到配置文件 blackbox-exporter 的配置文件通常名为 config.yml,可以在安装目录下找到。该文件定义了不同的探测模块及其相关参数。 2. 编辑配置文件 使用文本编辑器打开 config.yml 文件。您需要找到或添加 modules 部分,然后在其中定义 http_2xx 模块的配置。 3. 修改 http_2xx 模块的配置 在 http_2xx 模块中,您可以添加或修改 http 请求的 headers 字段,以设置自定义的 User-Agent。以下是修改后的示例配置: "modules": "http_2xx": "http"...

阅读全文>>

标签: waf Prometheus blackbox-exporter user-agent ua

评论(0) (152)

Prometheus Blackbox(黑盒监控)

2024-10-28 myluzh Kubernetes

0x00 前言 白盒监控:主要通过应用程序内部的指标(如 Prometheus 的 /metrics 接口)监测系统性能,提供深入的技术洞察。 黑盒监控:主要通过 HTTP 请求、TCP 测试等外部监控手段获取数据,关注系统外部行为和功能,往往不需要访问应用程序的内部结构。 --- 通过kube-prometheus方式部署,默认就有blackbox-exporter,如果没有的话手动部署下。 0x01 手动部署 blackbox_exporter github地址:https://github.com/prometheus/blackbox_exporter 下面的 blackbox.yml 也可以直接下载下来导入 # curl -o blackbox.yml https://raw.githubusercontent.com/prometheus/blackbox_exporter/master/blackbox.yml # kubectl get configmap blackbox-exporter-config --namespace=monitoring apiVersion: apps/v1 kind: De...

阅读全文>>

标签: Prometheus blackbox additional 监控 黑盒监控 白盒监控 指标监控

评论(0) (177)

K8S kube-prometheus监控etcd

2024-10-24 myluzh Kubernetes

0x01 关于 etcd 双向认证及数据获取 etcd 通常通过 SSL 双向认证来确保通信的安全性。因此,使用 curl 请求 etcd 的 metrics 数据时,需要提供客户端证书和私钥,否则会出现认证错误。 直接通过 curl -k https://172.30.233.87:2379/metrics 来获取 etcd 的 metrics 数据时,可能会遇到以下错误: curl: (35) error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate 这是因为 etcd 启用了 SSL 双向认证,服务端要求客户端提供有效的证书和私钥进行身份验证。 解决方案: 在 curl 请求中携带正确的客户端证书、私钥以及(可选)CA 根证书。具体步骤如下: curl --cert /etc/kubernetes/ssl/kube-etcd-172-30-233-87.pem \ --key /etc/kubernetes/ssl/kube-etcd-172-30-233-87-key.pem \ --cacer...

阅读全文>>

标签: ssl service Prometheus etcd 2379 monitoring 有metrics接口

评论(0) (77)

关于Prometheus的ServiceMonitor监控服务的两种情况(有无metrics接口)

2024-10-23 myluzh Kubernetes

在云原生环境中,Prometheus 常用于监控应用状态。应用程序是否自带 /metrics 接口决定了监控方式的不同。 情况一:应用自带 /metrics 接口 对于一些云原生应用(如 Kubernetes、etcd 等),通常自带 /metrics 接口,可以直接暴露监控数据。Prometheus 通过配置 ServiceMonitor,直接调用应用的 /metrics 接口来收集监控数据,配置过程简单,直接与应用对接即可。 情况二:应用没有 /metrics 接口 对于传统应用或不支持 Prometheus 的应用,需要借助 Exporter。Exporter 作为中间层,从应用中收集监控数据,转换为 Prometheus 能识别的格式,并通过自身的 /metrics 接口暴露数据。例如,node-exporter 用于监控系统资源,mysql-exporter 用于监控 MySQL 数据库。Prometheus 通过监控 Exporter 的 /metrics 接口,间接实现对这些应用的监控。

阅读全文>>

标签: Prometheus ServiceMonitor metrics

评论(0) (64)