您的位置 首页 k8s

kubedoor-k8s监控

 

GitHub - CassInfra/KubeDoor: 基于K8S准入控制机制的微服务资源管控平台,多K8S统一监控、告警、展示最佳实践

### 【下载helm包】

### 【master端安装】
# 编辑values-master.yaml文件,请仔细阅读注释,根据描述修改配置内容。
# try
helm upgrade -i kubedoor . --namespace kubedoor --create-namespace --values values-master.yaml --dry-run --debug


 

第一步,【下载helm包】

wget https://StarsL.cn/kubedoor/kubedoor-1.3.6.tgz 

tar -zxvf kubedoor-1.3.6.tgz 

cd kubedoor

第2步: 【master端安装】

先配置 values-mast.yaml:

 

(1)查看 存储类:

kubectl get storageclass

managed-nfs-storage

 

(2) 配置 企业微信告警 的key:

白眉大叔微信 通知; 6e82e102-641b-41d9-a179-e6795ff0c8d6

 

其他的不用管:

# kubedoor 1.0.0 开始分为agent端和master端,支持多K8S集群。
# 这是master端的配置

kubedoor:
  master:
    enable: true

storageClass: managed-nfs-storage  # 查看您K8S的StorageClass,指定有效的存储类,会自动创建PV/PVC。

# 用于存储每日的K8S微服务高峰期资源数据/微服务管控数据,KubeDoor的配置。
clickhouse:
  enable: true # enable为true时,表示自动新安装clickhouse单机版到kubedoor命名空间内。
  storage: 100Gi # 存储空间大小

  #【enable为true时,已下信息,仅可修改密码】
  #【enable为false时,请填写您已有的ClickHouse信息】
  CK_HOST: "clickhouse.kubedoor" # ClickHouse数据库的IP
  CK_PORT: "9000" # ClickHouse数据库的TCP端口
  CK_HTTP_PORT: "8123" # ClickHouse数据库的HTTP端口
  CK_USER: "default" # ClickHouse数据库的账号
  CK_PASSWORD: "di88fg2k" # ClickHouse数据库指定用户的密码

###########################################################

# K8S监控告警逻辑:K8S<---vmagent--->vm_single<---vmalert--->alertmanager--->kubedoor_alarm--->IM
tsdb:
  # 采集K8S的指标数据存入时序数据库,请输入时序数据库的类型:KubeDoor, Victoria-Metrics-Single, Victoria-Metrics-Cluster。
  # type为KubeDoor时,表示自动新安装VictoriaMetrics单机版到kubedoor命名空间内,其它为使用您已有的时序数据库。
  type: "KubeDoor"

  # 以下两个字段用于多K8S监控数据,通过远程写方式,写入到同一个时序数据库的场景,即为Prometheus/vmagent设置中的external_labels的key/value。
  # 使用远程存储时,这个key/value会作为标签增加到每一个指标中,这样通过这个标签就可以区分出指标属于哪个K8S了。
   
  # 如果是使用您已有的Victoria-Metrics,请在您的Prometheus配置中找到external_labels的key填入,如果您没有配置过请在您的Prometheus配置中新增一个。
  external_labels_key: "origin_prometheus" # 注意key只能字母数字下划线。
  # external_labels_value: "" # master端不需要填写该字段。

  
# 以下信息3选1填写:

  #【当type为: KubeDoor, 请填写以下vm_single的内容】
  vm_single:
    retention: 30d # 监控数据的存储时长
    user: monit # vm_single的账号
    passwd: dduF1E3sj # vm_single的密码
    storage: 100Gi # 存储空间大小

  #【当type为: Victoria-Metrics-Single, 请填写您的时序数据库地址】
  url: "http://monit:dduF1E3sj@10.7.0.100:8428" #时序数据库的地址,http开头,端口号结尾,有认证的按例子格式填写。

  #【当type为: Victoria-Metrics-Cluster, 请分别填写完整的时序数据库读/写接口地址】
  # 注意:Victoria-Metrics-Cluster默认读端口是8481,写端口是8480。
  remoteRead: "http://vmselect:8481/select/0/prometheus"
  remoteWrite: "http://vminsert:8480/insert/0/prometheus"

############################################################

# 这是对接alertmanager(kubedoor已集成)的告警通知服务:支持企微,钉钉,飞书;并且提供了告警入库的功能,提供给kuibedoor-web展示分析告警数据。
kubedoor_alarm:
  DEFAULT_AT: "all" # 如果在告警规则中找不到annotations.at的值,则会使用该值(IM工具的用户ID)作为@的通知人。
  ALERTMANAGER_EXTURL: "http://10.1.118.123:30319" # alertmanager外部可访问的链接,用于收到告警通知后,可直接点击访问alertmanager进行屏蔽告警的按钮。(部署后可在kubedoor-config中修改)

# nginx basic认证配置,用于KuboDoor-Web登录的账号密码
kubedoor_web_secret:
  nginx_auth: # htpasswd格式:"用户名:加密密码",可以在https://tool.lu/htpasswd/在线生成,加密方式选Crypt。
    - kubedoor:a3rsHbfPnb4Ps # 这是默认的账号密码,都是"kubedoor",可以配置多个账号。
    - Up4biLko1dNh:cUo3fhryKizac # 这是预置的用于agent连接master进行basic认证用的。账号:Up4biLko1dNh 密码:qCa22jDkfc9y

config:
  # 这里填写通知的信息(包括告警的默认通知,部署后可以自行在alertmanager配置中,更改通知路由规则。)
  # 钉钉机器人安全设置的自定义关键词请设置为:告警
  MSG_TYPE: "wecom" # 各类操作通知的消息类型:wecom, dingding, feishu
  MSG_TOKEN: "6e82e102-641b-41d9-a179-e6795ff0c8d6" # 通知服务对应的token

 

开始安装 maseter:

helm upgrade -i kubedoor . --namespace kubedoor --create-namespace --values values-master.yaml

第3步: agent端安装

helm upgrade -i kubedoor-agent . --namespace kubedoor --create-namespace --values values-agent.yaml --set tsdb.external_labels_value=zzytest

 

 

到此已经安装好了

接下来我们进行配置

登录 kubedoor -web 界面:

端口在服务中找:

 

 

安装后:

 

访问:

http://10.0.0.211:30701/

用户名密码:  kubedoor, kubedoor

 

请访问KubeDoor-Web,点击agent管理,找到您部署的agent:,状态应该是在线,先开启自动采集,设置好高峰期时段,再执行采集:输入需要采集的历史数据时长,点击采集,即可采集历史数据并更新高峰时段数据到管控表。

 

 

 

 

欢迎来撩 : 汇总all

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章