K8S集群部署kube-Prometheus监控etcd

背景介绍

  1. 除了 Kubernetes 集群中的一些资源对象、节点以及组件需要监控,有的时候我们可能还需要根据实际的业务需求去添加自定义的监控项,添加一个自定义监控的步骤也是非常简单的,主要有以下三个步骤:

第一步建立一个 ServiceMonitor 对象,用于 Prometheus 添加监控项;
第二步为 ServiceMonitor对象关联 metrics 数据接口的一个 Service 对象;
第三步确保 Service 对象可以正确获取到 Metrics 数据;

部署之前确保k8s集群中已经安装kube-prometheus

添加自定义etcd监控资源

etcd监控数据暴露接口方式:
1)通过2379端口暴露,需要https认证
2)通过2381端口暴露,直接http方式,不需要证书

  1. 手动查看etcd暴露的metrics接口数据
    有数据说明正常
## 2379端口暴露数据
curl --cert /etc/kubernetes/pki/etcd/server.crt --key /etc/kubernetes/pki/etcd/server.key https://127.0.0.1:2379/metrics -k |more
## 2381端口暴露数据
curl  http://127.0.0.1:2381/metrics |more
#选择其中一种即可
  1. 创建etcd service
cat  prometheus-etcdService.yaml
apiVersion: v1
kind: Endpoints
metadata:labels:k8s-app: etcd1name: etcd             # endpoints name必须和下面service name保持一致namespace: kube-system
subsets:
- addresses:- ip: 10.100.221.80   # etcd集群节点ip地址- ip: 10.100.221.83- ip: 10.100.221.84ports:- name: etcd  port: 2379  protocol: TCP
---
apiVersion: v1
kind: Service
metadata:labels:k8s-app: etcd1name: etcdnamespace: kube-system
spec:ports:- name: etcdport: 2379protocol: TCPtargetPort: 2379sessionAffinity: Nonetype: ClusterIP

验证service创建是否成功

使用etcd service ip能够访问到etcd数据,说明没问题

curl --cert /etc/kubernetes/pki/etcd/server.crt --key /etc/kubernetes/pki/etcd/server.key https://10.105.220.135:2379/metrics -k |more

  1. 创建etcd servicemonitor
#创建之前先将servicemonitor需要的证书挂载到容器内# 创建证书
kubectl create secret generic etcd-certs \--from-file=/etc/kubernetes/pki/etcd/server.crt \--from-file=/etc/kubernetes/pki/etcd/server.key \--from-file=/etc/kubernetes/pki/etcd/ca.crt \-n monitoring
#修改 prometheus-prometheus.yaml 在末尾添加:
……
spec:
……secrets:- etcd-certs重启prometheus
kubectl replace -f prometheus/prometheus-prometheus.yaml

重启可以进入容器查看证书是否挂载成功

创建etcd servicemonitor

cat etcd-serviceMonitor.yaml
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:labels:k8s-app: etcd1name: etcdnamespace: monitoring
spec:endpoints:- interval: 30sport: etcdscheme: httpstlsConfig:caFile: /etc/prometheus/secrets/etcd-certs/ca.crtcertFile: /etc/prometheus/secrets/etcd-certs/server.crtkeyFile: /etc/prometheus/secrets/etcd-certs/server.keyselector:matchLabels:k8s-app: etcd1namespaceSelector:matchNames:- kube-system

部署serviceMonitor
kubectl apply -f etcd-serviceMonitor.yaml
验证部署结果

prometheus上查看到etcd Targets表示成功

4. 导入etcd grafana模板推荐两个模板 3070或者9733(中文版)

完成

prometheus-operater监控etcd相关推荐

  1. 实战 Prometheus 搭建监控系统

    欢迎关注方志朋的博客,回复"666"获面试宝典 Prometheus 是一款基于时序数据库的开源监控告警系统,说起 Prometheus 则不得不提 SoundCloud,这是一个 ...

  2. 搭建prometheus+grafana监控系统

    prometheus简介 Prometheus是最初在SoundCloud上构建的开源系统监视和警报工具包 .自2012年成立以来,许多公司和组织都采用了Prometheus,该项目拥有非常活跃的开发 ...

  3. Prometheus 搭建监控系统

    Prometheus 是一款基于时序数据库的开源监控告警系统,说起 Prometheus 则不得不提 SoundCloud,这是一个在线音乐分享的平台,类似于做视频分享的 YouTube,由于他们在微 ...

  4. 监控新星 | 实战Prometheus搭建监控系统

    点击上方蓝色字体,选择"设为星标" 回复"资源"获取更多资源 Prometheus是一款基于时序数据库的开源监控告警系统,说起Prometheus则不得不提So ...

  5. Prometheus应用监控

    1.主流机器与应用Prometheus,skywalking监控体系分享介绍 应用监控介绍 目前市面上开源应用的APM系统主要有CAT.Zipkin.Pinpoint.SkyWalking. 目前市面 ...

  6. 基于 Prometheus 的监控系统实践

    监控作为底层基础设施的一环,是保障生产环境服务稳定性不可或缺的一部分,线上问题从发现到定位再到解决,通过监控和告警手段可以有效地覆盖了「发现」和「定位」,甚至可以通过故障自愈等手段实现解决,服务开发和 ...

  7. Grafana+Prometheus系统监控之webhook

    概述 Webhook是一个API概念,并且变得越来越流行.我们能用事件描述的事物越多,webhook的作用范围也就越大.Webhook作为一个轻量的事件处理应用,正变得越来越有用. 准确的说webho ...

  8. 使用Prometheus+Grafana 监控MySQL/MONGODB

    使用Prometheus+Grafana 监控MySQL/MONGODB 之前就久仰 Prometheus 大名,因为有用zabbix 进行监控,就没去安装它.现在正好用上监控MONGO+MYSQL. ...

  9. Prometheus 系统监控方案

    最近一直在折腾时序类型的数据库,经过一段时间项目应用,觉得十分不错.而Prometheus又是刚刚推出不久的开源方案,中文资料较少,所以打算写一系列应用的实践过程分享一下. Prometheus 是什 ...

最新文章

  1. C#中base关键字的几种用法
  2. 【技术累积】【点】【编程】【13】XX式编程
  3. java guava 使用_Java8-Guava实战示例
  4. boost::program_options模块实现支持自定义选项语法的测试程序
  5. VTK:隐式函数之ImplicitSphere
  6. Struts2做下载
  7. java 单例 生命周期_单例模式--- 声明周期托管方式
  8. ubuntu安装操作HttpSQS高速队列
  9. Intellij IDE 必知配置
  10. 伺服怎么接单相220伏_三相380伏电机能接单相220伏运行吗?
  11. 微软 CTO 韦青:5G 与亚里士多德
  12. Kotlin 我的第一个kotlin程序【Android Studio】
  13. FA:标准萤火虫算法及Python实现
  14. python selenium自动化填写问卷星
  15. 进击的巨人和枪王黑泽两部漫画的观后感
  16. 学计算机投影仪定义,一种计算机信息技术教学用投影仪的制作方法
  17. 2022年餐饮行业的10大必看趋势
  18. u盘中毒如何删除system volume information文件
  19. linux wifi名称设置中文乱码,无线wifi名称怎么改成中文乱码的方法
  20. 笔记本电脑键盘被锁如何解锁

热门文章

  1. 陌陌、米聊、微博、微信看IT人士对交际的重视
  2. 练习:柱状图中最大矩形
  3. Microphone回音问题分析
  4. 你知道在深圳一个月花多少钱吗?
  5. proxy代理服务器的使用
  6. 澳洲大药房天猫618战绩:爆款面霜销量够一个妹子用13个世纪
  7. Input dataset is not organized (height = 1) Input dataset is not organized (height = 1)......
  8. linux划分分区 2t,Linux使用GPT划分大于2T的分区
  9. MySQL(复合查询)
  10. 冉冉升起的DeFi聚合器