k8s环境prometheus operator监控集群外资源

news2025/1/13 10:11:43

文章目录

        • k8s环境添加其他节点
        • 基于prometheus operator
    • k8s环境prometheus operator添加node-exporter
      • 方式一:通过 ServiceMonitor 方式
        • 可以写多个监控node节点
        • 运行 external-node.yaml
        • 查看资源有没有被创建
        • 热更新
    • 外部需要被监控服务器安装 node-exporter
        • docker 方式运行
        • systemd 方式运行
      • 方式二:通过 Kube-prometheus 自定义参数
          • 添加 prometheus-additional.yaml
          • 通过 prometheus-additional.yaml 文件生成 Secret
          • 编辑 prometheus-prometheus.yaml 添加额外的抓取参数
          • 应用 prometheus-prometheus.yaml

参考网站

https://prometheus.io/docs/guides/node-exporter/#tarball-installation
k8s环境添加其他节点

参考文档
文档一

[关于修改prometheus-operator 方式下的prometheus的配置文件_kubesphere修改prometheus配置-CSDN博客](https://blog.csdn.net/rockstics/article/details/129518262)

文档二

[在Prometheus Operator中使用自定义配置 | prometheus-book (gitbook.io)](https://yunlzheng.gitbook.io/prometheus-book/part-iii-prometheus-shi-zhan/operator/use-custom-configuration-in-operator)
基于prometheus operator

引入外部exporter参考文档 rabbitmq

[基于prometheus operator引入外部exporter_prometheus operator 添加exporter-CSDN博客](https://blog.csdn.net/weixin_45413603/article/details/107618020)

引入外部exporter参考文档 windows exporte

[k8s中使用prometheus operator监控外部服务器部署的windows exporter_servicemonitor监控外部服务-CSDN博客](https://blog.csdn.net/weixin_52437323/article/details/129132978?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-3-129132978-blog-107618020.235%5Ev43%5Epc_blog_bottom_relevance_base6&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-3-129132978-blog-107618020.235%5Ev43%5Epc_blog_bottom_relevance_base6&utm_relevant_index=6)

监控 K8s 集群外服务的两种方式

[Kube-prometheus 监控 K8s 集群外服务的两种方式_liubin0505star的技术博客_51CTO博客](https://blog.51cto.com/liubin0505star/5767918)

k8s环境prometheus operator添加node-exporter

方式一:通过 ServiceMonitor 方式

创建 Service 和 ServiceMonitor 文件名为 external-node.yaml
/root/test/prometheus/node-exporter/123node

---
apiVersion: v1
kind: Service
metadata:
  name: external-node-exporter
  namespace: monitoring
  labels:
    app: external-node-exporter
    app.kubernetes.io/name: node-exporter
spec:
  type: ClusterIP
  ports:
  - name: metrics
    port: 9100
    protocol: TCP
    targetPort: 9100
---
apiVersion: v1
kind: Endpoints
metadata:
    name: external-node-exporter
    namespace: monitoring
    labels:
      app: external-node-exporter
      app.kubernetes.io/name: node-exporter
subsets:
- addresses:
  - ip: 192.168.10.10  # 这里是外部的资源列表
  ports:
  - name: metrics
    port: 9100
---
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: external-node-exporter
  namespace: monitoring
  labels:
    app: external-node-exporter
    release: prometheus
spec:
  selector:
    matchLabels:            # Service选择器
      app: external-node-exporter
  namespaceSelector:        # Namespace选择器
    matchNames:
    - monitoring
  endpoints:
  - port: metrics           # 采集节点端口(svc定义)
    interval: 10s           # 采集频率根据实际需求配置,prometheus默认15s
    path: /metrics          # 默认地址/metrics
可以写多个监控node节点
- addresses:
  - ip: 192.168.10.10  # 这里是外部的资源列表
  - ip: 192.168.10.10  # 这里是外部的资源列表
  - ip: 192.168.10.10  # 这里是外部的资源列表
  - ip: 192.168.10.10  # 这里是外部的资源列表      
  ports:
  - name: metrics
    port: 9100
运行 external-node.yaml
kubectl apply -f external-node.yaml
查看资源有没有被创建
kubectl get ServiceMonitor,Service,Endpoints  -n monitoring  | grep endpoints

image.png

热更新
root@k8s-master01:~# curl -X POST http://10.244.16.233:9090/-/reload
root@k8s-master01:~# curl -X POST http://10.244.201.226:9090/-/reload

部署完之后 等待一小会 prometheus 支持配置热更 要么重启prome 要么等待他热更完毕 可以在ui的
image.png

外部需要被监控服务器安装 node-exporter

docker 方式运行
# docker run -d --name=node_exporter \ --restart=always \ -v /:/host:ro,rslave \ -p 9100:9100 \ prom/node-exporter:v1.4.0 \ --path.rootfs=/host
systemd 方式运行

node-exporter 会暴露系统监控相关的 /metrics 接口来供 Prometheus 来抓取

加入node_exporter开机自启

vim /etc/systemd/system/node_exporter.service

[Unit]
Description=Node Exporter For Prometheus
After=network.target
StartLimitIntervalSec=0

[Service]
Type=simple
ExecStart=/usr/local/bin/node_exporter/node_exporter   "--web.listen-address=:9100"
Restart=always  服务自拉起
RestartSec=1

[Install]
WantedBy=multi-user.target

查看服务

systemctl daemon-reload
systemctl start node_exporter  开启服务
systemctl stop node_exporter   关闭服务
systemctl restart node_exporter    重启服务
systemctl status node_exporter    查看服务状态
systemctl enable node_exporter    将服务设置为开机自启动
systemctl disable node_exporter    禁止服务开机自启动
systemctl is-enabled node_exporter    查看服务是否开机启动
systemctl list-unit-files|grep enabled    查看开机启动的服务列表
systemctl --failed    查看启动失败的服务列表

方式二:通过 Kube-prometheus 自定义参数

添加 prometheus-additional.yaml
- job_name: 'node-exporter-others'
  static_configs:
    - targets:
      - 192.168.10.10:9100
  metrics_path: /metrics
通过 prometheus-additional.yaml 文件生成 Secret
# kubectl create secret generic additional-scrape-configs --from-file=prometheus-additional.yaml -n monitoring
编辑 prometheus-prometheus.yaml 添加额外的抓取参数

prometheus-prometheus.yaml 在 manifests 目录下

additionalScrapeConfigs:
    name: additional-scrape-configs
    key: prometheus-additional.yaml
应用 prometheus-prometheus.yaml
# kubectl apply -f prometheus-prometheus.yaml

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1635436.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【蓝桥杯C++A组省三 | 一场勇敢的征途与致19岁的信】

随着4.13西大四楼考场的倒计时结束… 就这样蓝桥杯落幕了 省三的名次既满足又不甘心,但又确乎说得上是19岁途中的又一枚勋章 从去年得知,纠结是否要报名、到寒假开始战战兢兢地准备、陆续开始创作博客,记录好题和成长……感谢你们的关注&…

【消息队列】延迟消息

延时消息 延迟消息死信交换机延迟消息的插件 延迟消息 生产者发送消息时指定一个时间,消费者不会立刻收到消息,而在指定时间之后才收到消息 比如说演唱会的票,抢上了但是迟迟未支付,但是库存已经占用,就需要用到延迟消…

linux 搭建知识库文档系统 mm-wiki

目录 一、前言 二、常用的知识库文档工具 2.1 PingCode 2.2 语雀 2.3 Tettra 2.4 Zoho Wiki 2.5 Helpjuice 2.6 SlimWiki 2.7 Document360 2.8 MM-Wiki 2.9 其他工具补充 三、MM-Wiki 介绍 3.1 什么是MM-Wiki 3.2 MM-Wiki 特点 四、搭建MM-Wiki前置准备 4.1 前置…

【Harmony3.1/4.0】笔记七-选项卡布局

概念 当页面信息较多时,为了让用户能够聚焦于当前显示的内容,需要对页面内容进行分类,提高页面空间利用率。Tabs组件可以在一个页面内快速实现视图内容的切换,一方面提升查找信息的效率,另一方面精简用户单次获取到的…

前端css中盒子模型的各种属性

前端css中盒子模型 一、前言二、流程图三、盒子模型的各属性(一)、模型计算方式(box-sizing)(二)、边框(border)1.边框的颜色(border-color)2.边框的宽度&…

刚刚!MySQL8.4.0 LTS发布,接着再探

📢📢📢📣📣📣 作者:IT邦德 中国DBA联盟(ACDU)成员,10余年DBA工作经验, Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主,全网粉丝10万 擅长主流Oracle、My…

【开发工具】pythontutor——在线内存可视化工具

笔者在学习RISC-V时,希望找到一款可视化的内存工具,遗憾目前还未找到。发现了pythontutor这个网站,可以对C、python等多种语言进行内存可视化。结果似乎是x86架构的,符合小端存储。 贴一下网址,原准备依据开源版本进行…

python基础知识点(蓝桥杯python科目个人复习计划66)

今日复习内容:算法双周赛 第一题:疯狂星期六 题目描述: 麦肯鸡是一家名声在外的汉堡店,他们最近推出了一份名为vivo50的套餐,只需要在门口大声喊出vivo50,就可以获得这个套餐。 现在,请你打…

使用Ollama和OpenWebUI在CPU上玩转Meta Llama3-8B

2024年4月18日,meta开源了Llama 3大模型[1],虽然只有8B[2]和70B[3]两个版本,但Llama 3表现出来的强大能力还是让AI大模型界为之震撼了一番,本人亲测Llama3-70B版本的推理能力十分接近于OpenAI的GPT-4[4],何况还有一个4…

ubuntu搭建jupyter_notebook服务器

环境:ubuntu 22.04 目录 环境:ubuntu 22.04 一、创建一个anaconda用户 创建用户condaUser 为用户condaUser设置密码 开放opt文件夹的权限 登录condaUser用户 二、安装anaconda 下载anaconda 安装anaconda 三、添加环境变量 四、anaconda换源 …

Linux 麒麟系统安装

国产麒麟系统官网地址: https://www.openkylin.top/downloads/ 下载该镜像后,使用VMware部署一个虚拟机: 完成虚拟机创建。点击:“开启此虚拟机” 选择“试用试用开放麒麟而不安装(T)”,进入op…

Python 全栈体系【四阶】(三十七)

第五章 深度学习 八、目标检测 3. 目标检测模型 3.1 R-CNN 系列 3.1.1 R-CNN 3.1.1.1 定义 R-CNN(全称 Regions with CNN features) ,是 R-CNN 系列的第一代算法,其实没有过多的使用“深度学习”思想,而是将“深度学习”和传统的“计算…

springboot mongodb分片集群事务

前置 mongodb分片集群想要使用事务,需要对应分片没有仲裁节点 代码 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId><version>2.1.0.RELEASE</version></d…

java版本共存与fastjson反序列化rmi服务器的搭建

文章目录 java 8下载远程加载类工具编译工具mvn多版本共存配置mvn编译marshalsec编译rce文件利用marshalsec加载远程RCE类 java 8下载 链接&#xff1a;https://pan.baidu.com/s/1B8U9v8QAe4Vc67Q84_nqcg?pwd0000 提取码&#xff1a;0000 远程加载类工具 https://github.co…

Ubuntu+Systemd服务+实现开机自启/关机启动脚本

开机自启 1.创建一个新的 systemd 服务文件 现在随便一个地方创建txt文档 如果想要启动sh脚本&#xff0c;就把下面的代码输入到txt文档中 [Unit] DescriptionRun Python script on specific executable run Afternetwork.target[Service] Typesimple ExecStart/home/tech/…

misc学习

一.知识点 1.BMP文件 BMP文件主要有四部分组成&#xff0c;位图头、位图信息、调色板、位图数据。 bmp文件头(bmp file header)&#xff1a;提供文件的格式、大小等信息 位图信息头(bitmap information)&#xff1a;提供图像数据的尺寸、位平面数、压缩方式、颜色索引等信息…

Linux操作系统·进程管理

一、什么是进程 1.作业和进程的概念 Linux是一个多用户多任务的操作系统。多用户是指多个用户可以在同一时间使用计算机系统&#xff1b;多任务是指Linux可以同时执行几个任务&#xff0c;它可以在还未执行完一个任务时又执行另一项任务。为了完成这些任务&#xff0c;系统上…

AI写作神器种草:好用的AI写作工具推荐!AI写作生成器~

随着人工智能技术的不断发展&#xff0c;AI工具已经成为我们日常生活和工作中不可或缺的一部分。从智能助手到自动翻译&#xff0c;从数据分析到图像识别&#xff0c;AI技术的应用已经渗透到各个领域。在这篇文章中&#xff0c;我将分享一些我个人认为最好用的AI工具&#xff0…

思考!思考!jmeter线程数≠用户并发数

最近又在搞性能测试了&#xff0c;相较于之前的写脚本出数据就完事&#xff0c;这次深入的思考了一下测试出来的指标&#xff0c;到底有什么意义&#xff1f;&#xff1f;&#xff1f; 绞尽脑汁思考了好几天&#xff0c;终于有了点思路&#xff0c;写出来与大家分享&#xff0…

【论文阅读】ChipNeMo中的数据集处理

前面总体学习了《ChipNeMo: Domain-Adapted LLMs for Chip Design》&#xff0c;然后又继续仔细看了论文中的领域适配分词和领域数据微调的预训练检索模型&#xff0c;对于数据集的处理&#xff0c;也需要仔细看一下。 提炼重点&#xff1a;1&#xff09;对于数据集&#xff0…