使用普罗米修斯运营商监控特使

  

kubernetes集群三步安装

  

概述

  

普罗米修斯运营商应当是使用监控系统的最佳实践了,首先它一键构建整个监控系统,通过一些无侵入的手段去配置如监控数据源等
故障自动恢复,高可用的告警等. .

  

不过对于新手使用上还是有一丢丢小门槛,本文就结合如何给大使做监控这个例子来分享使普罗米修斯用算子的正确姿势

  

至于如何写告警规则,如何配置普罗米修斯查询语句不是本文探讨的重点,会在后续文章中给大家分享,本文着重探讨如何使普罗米修斯用操作符

  

普罗米修斯运营商安装

  

sealyun离线安装包内已经包含普罗米修斯运营商,安装完直接使用即可

  

配置监控数据源

  

原理:通过运营商的CRD发现监控数据源服务
使用普罗米修斯运营商监控特使”> </p>
  <h3>启动特使</h3>
  <pre> <代码> apiVersion:应用程序/v1
  :部署
  元数据:
  名称:特使
  标签:
  应用:特使
  规范:
  副本:1
  选择器:
  matchLabels:
  应用:特使
  模板:
  元数据:
  标签:
  应用:特使
  规范:
  卷:
  - hostPath: #为了配置方便把envory配置文件挂载出来了
  路径:/root/envoy
  类型:DirectoryOrCreate
  名称:特使
  容器:
  ——名称:特使
  volumeMounts:
  - mountPath:/etc/envoy
  名称:特使
  只读的:真
  图片:envoyproxy/特使:最新
  港口:
  - containerPort: 10000 #数据端口
  - containerPort: 9901 #管理端口,度量是通过此端口暴露
  
  ---
  类型:服务
  apiVersion: v1
  元数据:
  名称:特使
  标签:
  应用:特使#给服务贴上标签,经营者会去找这个服务
  规范:
  选择器:
  应用:特使
  港口:
  ——协议:TCP
  端口:80
  发送:10000
  用户名称:
  ——协议:TCP #服务暴露度量的端口
  端口:81
  发送:9901
  名称:指标#名字很重要,ServiceMonitor会找端口名</代码> </pre>
  <p>特使配置文件:<br/>监听的地址一定需要修改成0.0.0.0,否则通过服务获取不到度量<br/>/根/代表/envoy.yaml </p>
  <pre> <代码>管理:
  access_log_path:/tmp/admin_access.log
  地址:
  socket_address:
  TCP协议:
  地址:0.0.0.0 #这里一定要改成0.0.0.0,而不能是127.0.0.1
  port_value: 9901
  static_resources:
  听众:
  ——名称:listener_0
  地址:
  socket_address:
  TCP协议:
  地址:0.0.0.0
  port_value: 10000
  filter_chains:
  -过滤器:
  ——名称:envoy.http_connection_manager
  配置:
  stat_prefix: ingress_http
  route_config:
  名称:local_route
  virtual_hosts:
  ——名称:local_service
  域(“*”):
  路线:
  -匹配:
  前缀:“/?
  路线:
  host_rewrite: sealyun.com
  集群:service_google
  http_filters:
  ——名称:envoy.router
  集群:
  ——名称:service_sealyun
  connect_timeout: 0.25秒
  类型:LOGICAL_DNS
  #注释掉以下行来测试alt=
然后就可以看到度量了:
使用普罗米修斯运营商监控特使”> <br/>然后就可以在grafana上进行一些配置了,promethues相关使用不是本文讨论的对象</p>
  <h2>告警配置</h2>
  <h3>提醒经理配置</h3>
  <pre> <代码> [root@dev - 86 - 201特使]# kubectl得到秘密- n监测
  名称类型数据时代
  alertmanager-main不透明1 27 d </代码> </pre>
  <p>我们可以看到这个秘密,看下里面具体内容:</p>
  <pre> <代码> [root@dev - 86 - 201特使]# kubectl得到秘密alertmanager-main - o yaml - n监测
  apiVersion: v1
  数据:
  alertmanager。yaml: Imdsb2JhbCI6IAogICJyZXNvbHZlX3RpbWVvdXQiOiAiNW0iCiJyZWNlaXZlcnMiOiAKLSAibmFtZSI6ICJudWxsIgoicm91dGUiOiAKICAiZ3JvdXBfYnkiOiAKICAtICJqb2IiCiAgImdyb3VwX2ludGVydmFsIjogIjVtIgogICJncm91cF93YWl0IjogIjMwcyIKICAicmVjZWl2ZXIiOiAibnVsbCIKICAicmVwZWF0X2ludGVydmFsIjogIjEyaCIKICAicm91dGVzIjogCiAgLSAibWF0Y2giOiAKICAgICAgImFsZXJ0bmFtZSI6ICJEZWFkTWFuc1N3aXRjaCIKICAgICJyZWNlaXZlciI6ICJudWxsIg==:秘密</代码> </pre>
  <p> base64解码一下:</p>
  <pre> <代码>“全球”:
  :“resolve_timeout 5 m”
  “接收器”:
  ——“名称”:“零”
  “路线”:
  “group_by”:
  ——“工作”
  :“group_interval 5 m”
  30年代“group_wait”:“”
  “接收方”:“零”
  :“repeat_interval 12 h”
  “路线”:
  ——“匹配”:
  :“alertname DeadMansSwitch”
  “接收方”:“零”<h2 class=使用普罗米修斯运营商监控特使