prometheus监控k8s集群

2023-05-16

prometheus监控k8s集群

1.监控方式

node-expoter部署在k8s节点收集当前节点资源,Prometheus用来分析处理收集汇总的数据,grafana用来进行图形展示。

2.部署Prometheus和grafana

我本地已经在k8s中部署了Prometheus和grafana,可参考https://blog.csdn.net/lucky_ykcul/article/details/128965441?spm=1001.2014.3001.5502

3.部署node-expoter

1)使用daemonset方式部署,这样能确保k8s各节点都会分布node-expoter服务

vim node-expoter.yml
---
apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: node-exporter
  namespace: work
  labels:
    k8s-app: node-exporter
spec:
  selector:
    matchLabels:
      k8s-app: node-exporter
  template:
    metadata:
      labels:
        k8s-app: node-exporter
    spec:
      containers:
      - image: prom/node-exporter
        name: node-exporter
        ports:
        - containerPort: 9100
          protocol: TCP
          name: http
---
apiVersion: v1
kind: Service
metadata:
  labels:
    k8s-app: node-exporter
  name: node-exporter
  namespace: work
spec:
  ports:
  - name: http
    port: 9100
    nodePort: 31310
    protocol: TCP
  type: NodePort
  selector:
    k8s-app: node-exporter
kubectl apply -f node-expoter.yml -n work

在这里插入图片描述

2)在浏览器中查看metric数据
在这里插入图片描述
但是在Prometheus中没有看到k8s集群的metrics数据

在这里插入图片描述
3)修改Prometheus的configmap用于获取k8s节点metrics

cat pro_cm.yml
apiVersion: v1
kind: ConfigMap
metadata:
  name: prometheus-config
  namespace: work
data:
  prometheus.yml: |
    global:
      scrape_interval: 15s
      scrape_timeout: 15s
    scrape_configs:
    - job_name: 'prometheus'
      kubernetes_sd_configs:
      - role: node
      relabel_configs:
      - source_labels: [__address__]
        regex: '(.*):10250'
        replacement: '${1}:9100'
        target_label: __address__
        action: replace

Prometheus在监控时,可以通过API获取到我们的Node节点信息,但是由于我们的metrics默认监听的端口是10250而不是9100,因此如果没有进行上述端口替换的配置,我们的Prometheus的Node监控就一直处于DOWN的状态。在上述relabel的配置中,我们通过Target示例的Metadata信息,动态重新写入Label的值,并且将__address__标签从10250替换成9100,这样我们的Prometheus就可以正常监控了。

4)重新部署Prometheus服务

[root@master prometheus]# kubectl apply -f pro_cm.yml 
configmap/prometheus-config configured
[root@master prometheus]# kubectl delete deployment -n work prometheus
deployment.apps "prometheus" deleted
[root@master prometheus]# kubectl apply -f pro_deploy.yml 
deployment.apps/prometheus created

5)在浏览器中查看Prometheus的master,node节点的metric数据
在这里插入图片描述
已经可以看到master,node的metric,但状态却是DOWN
Telnet本机的9100端口是connection refused的
在这里插入图片描述
查看node-exporter的端口发现是31310
在这里插入图片描述
这里我把Prometheus的监听9100端口改成nodeport的端口

在这里插入图片描述
重新apply configmap,重启Prometheus服务

[root@master prometheus]# kubectl apply -f pro_cm.yml 
configmap/prometheus-config configured
[root@master prometheus]# kubectl get pod -n work
NAME                          READY   STATUS    RESTARTS   AGE
grafana-5b86ddbbff-sq5nx      1/1     Running   10         37d
node-exporter-l7nv2           1/1     Running   2          8d
prometheus-5f58d57f4c-pdcbg   1/1     Running   0          52m
[root@master prometheus]# kubectl delete pod -n work prometheus-5f58d57f4c-pdcbg
pod "prometheus-5f58d57f4c-pdcbg" deleted

再次查看Prometheus,master,node状态已经up了
在这里插入图片描述

4.配置grafana

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
grafana展示监控数据
在这里插入图片描述
这里输入8919,是grafana官方id
在这里插入图片描述
自定义一个名字,数据源选择之前创建的Prometheus,点击import
在这里插入图片描述
import之后跳转到master和node的监控页面,可以看到监控数据
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

prometheus监控k8s集群 的相关文章

随机推荐

  • BP算法与公式推导

    BP backpropgationalgorithm xff1a 后向传导算法 xff0c 顾名思义就是从神经网络的输出 顶层 到输入 底层 进行求解 那么求解什么呢 xff0c 求解的就是神经网络中的参数的导数 xff0c 即参数梯度方向
  • CNN公式推导

    CNN公式推导 1 前言 在看此blog之前 xff0c 请确保已经看懂我的前两篇blog 深度学习笔记1 卷积神经网络 和 BP算法与公式推导 并且已经看过文献 1 的论文 Notes on Convolutional Neural Ne
  • 简记ReNet

    ResNet 论文给出了Resnet有3中类型 xff0c ResNet50 res3 res4 res6 res3 xff0c ResNet101 res3 res4 res23 res3 和ResNet152 res3 res4 res
  • triplet loss的原理及caffe代码

    1 xff1a triplet loss的原理及梯度推到 http blog csdn net tangwei2014 article details 46788025 2 xff1a triplet loss如何增加到caffe中 xff
  • object detection资料汇总

    转自 xff1a https handong1587 github io deep learning 2015 10 09 object detection html Jump to LeaderboardPapers R CNNMulti
  • 离职小记~~~

    这个月作出的最重要的决定 离职 对于已工作的人来说 xff0c 离职就是跳槽 xff0c 特别是对于我们计算机专业 xff0c 简简单单的一封辞职信 xff0c 等个半月 xff0c 办完手续 xff0c 一切OK xff0c 而且貌似越跳
  • UC Berkeley 马毅:深度学习的第一性原理

    专栏 xff1a 研究思路 我们认为 xff0c 人工智能进入了新的拐点 在一个后深度学习时代 xff0c 不同的学者对未来智能发展道路的理解逐渐清晰 xff0c 当然也逐渐开始分化 xff0c 由此导致了开展布局完全不同的研究工作 智源社
  • 播放器插件实现系列 —— vlc

    vlc 是通过模块来扩展它的功能 xff0c 插件一般就是实现一个模块 vlc的模块有很多类型 xff1a AccessDemuxAccess DemuxDecoderInterfaceVideo filterAudio filterAud
  • 逻辑回归算法——经典的二分类算法

    一 概述 1 逻辑回归 xff08 Logistic Regression xff09 算法是分类算法 xff0c 而不是回归算法 2 决策边界 xff1a 可以是非线性的 xff08 高阶 xff09 二 sigmoid函数 1 定义 x
  • docker 部署redis 并设置密码

    安装docker docker pull redis 获取redis conf 从官网获取redis conf 修改默认配置文件 bind 127 0 0 1 注释掉这部分 xff0c 这是限制redis只能本地访问 protected m
  • 获取全文的13种方法

    注 xff1a 由于大部分院校未能购卖国内外商业医学数据库 xff0c 如 PUBMED ElseVier等 xff0c 因而检索国外全文文献很复杂 这往往成为少数学校的专利 北大医学院网站上有大量文献题录 xff0c 但仅供自已学生使用
  • PID调节(理论)

    AQ的PID相关资料 xff0c 我添加了些 机械控制工程基础 中的内容 什么是PID PID包括比例P xff0c 积分I xff0c 微分D控制器 使用PID控制器 xff0c 你需要以下6个基本元素 xff1a Error xff08
  • Mavlink协议

    Mavlink协议简介 Mavlink协议简介 一Mavlink协议二数据结构三协议支持的数据类型四性能五航点协议 读取MAV的航点列表写MAV的航点列表清除MAV的航点列表设置当前MAV航点 六参数的读写 读取参数列表读取单个参数写参数
  • 计算机图形学方向投稿国外期刊

    图形学领域的杂志 xff08 主要发表三维重构与可视化的一般理论方面的论文 xff09 对图形学领域的杂志 xff0c 国外一个专家有一个很好的评价 xff0c 我基本上按照其的意思翻译 xff0c 加上自己的一点理解 xff1a 1 顶级
  • 使用电脑摄像头计算aruco marker位姿(Python)

    一 效果图 刚做了一些尝试 xff0c 算两个aruco之间的距离 先算x方向 xff0c 用ID 61 12减去ID 61 13 xff0c tvec的三个坐标依次是Z Y X 所以 xff0c ID 61 12和ID 61 13的x距离
  • vnc登录时connection refused(10061)解决方法

    问题 xff1a 当你在windows上连接linux上vnc服务器时 xff0c 点击connect后弹出connect connect refused 10061 警告框时连接被拒绝 首先 xff0c 如果你的VNC配置没有问题并且在l
  • 2014年计算机求职总结--准备篇

    版权所有 xff0c 转载请注明出处 xff0c 谢谢 xff01 http blog csdn net walkinginthewind article details 13000431 找工作是一个长期准备的过程 xff0c 突击是没什
  • 2022智源大会议程公开 | 人工智能新基建论坛

    2022年北京智源大会召开在即 xff0c 5月31日至6月2日 xff0c 持续三天 xff0c 26场由各领域领军学者主导的专题论坛 大会将紧紧围绕这些当前学术领域迫切需要解决的问题 xff0c 以及产业落地过程中存在的诸多挑战 xff
  • 因特尔神经计算棒(NCS)+树莓派+yolo-v3实现object-detection

    因特尔神经计算棒 NCS 43 树莓派 43 yolo v3实现object detection 踩了好多坑啊 一言难尽 Step1 在树莓派上安装环境 首先安装openVINO工具包 xff08 最好不要在树莓派上装NCSDK 太坑了 x
  • prometheus监控k8s集群

    prometheus监控k8s集群 1 监控方式 node expoter部署在k8s节点收集当前节点资源 xff0c Prometheus用来分析处理收集汇总的数据 xff0c grafana用来进行图形展示 2 部署Prometheus