普罗米修斯监控

news/2024/9/19 14:00:58 标签: kubernetes, prometheus

概念

prometheus是开源的系统监控和告警。在k8s分布式的容器化管理系统当中,一般都是搭配prometheus来进行监控。它是服务监控系统,也可以监控主机,它自带时序数据库,这个时序数据库提供了数据模型和采集的指标项、存储、查询接口。

prometheus组件:

promql语言:如何采集和统计。

nodeexporter:在k8s集群当中部署在node节点上,用来收集节点上的数据(主机指标:硬盘、CPU、网络,pod的使用情况)。需要部署在每个节点上。

pushgateway:把数据上传到prometheus,然后再根据promql语句来进行分类的展示。

工作流程图:

prometheus的特点:

1. 多维的数据模型,它是按照顺序记录,记录设备状态的变化,为每个数据指定一个样本(服务的指标、应用性能的监控、网络数据等等)

2. 内置时间序列数据库:TSDB

TSDB的特点:1. 存储的量级非常大

                        2. 大部分都是写入操作

                        3. 写入操作是按照时序进行添加

                        4. 高并发性能很强大

3.promql语句

4. http协议拉取数据

5. 自带服务自动发现功能

6. grafana插件可以更人性化的展示指标数据

Alertmanager:告警管理,它是一个独立的模块,需要独立的配置,告警方式有电子邮件、钉钉、企业微信。

面试题:prometheus和zabbix的区别

1. 指标采集的方式

zabbix分为服务端和客户端,agent都是部署在客户端,然后把数据发送给服务端。它是基于tcp协议通信(ip+端口)

prometheus是根据客户端进行数据收集,服务端和客户端进行交互,通过拉取的方式获取监控指标。它是基于http协议通信

2. 数据存储

zabbix使用外部数据库存储数据:mysql、postgreSQL、oracle,它们都是关系型数据库。

prometheus自带内置的时序数据库:TSDB,它只支持存储时间序列的值

3. 查询性能

zabbix查询功能较弱

prometheus的查询功能更强大,速度更快

4. 告警功能

都是内置告警功能,但是prometheus不能电话告警。

5. 监控的内容

zabbix主要是为了监控设备(服务器的状态:CPU、内存、磁盘、网络流量、自定义的监控项(非虚拟化部署的程序))。zabbix的时间更长,更成熟。适用于监控方便要求不高,只需要对服务设备监控的场景。

prometheus是专门为k8s定制的监控软件,对于容器产品兼容度更好,定制化程度更高。它适用于微服务场景。

部署方法

1. 二进制(源码包)

把node_exporter-1.5.0.linux-amd64.tar拖入到三台节点主机的opt目录下

prometheus-2.45.0.linux-amd64.tar和grafana-enterprise-7.5.11-1.x86_64拖入到master主节点主机的opt目录下

在master主节点上操作

tar -xf prometheus-2.45.0.linux-amd64.tar.gz

mv prometheus-2.45.0.linux-amd64 prometheus

cat > /usr/lib/systemd/system/prometheus.service <<'EOF'
[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io
After=network.target
 
[Service]
Type=simple
ExecStart=/opt/prometheus/prometheus \
--config.file=/opt/prometheus/prometheus.yml \
--storage.tsdb.path=/opt/prometheus/data/ \
--storage.tsdb.retention=15d \
--web.enable-lifecycle
  
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
 
[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload

systemctl restart prometheus.service

netstat -antp | grep 9090  查看prometheus的9090端口是否启动

cd prometheus/

vim prometheus.yml

三个节点主机统一操作:

cd /opt/

tar -xf node_exporter-1.5.0.linux-amd64.tar.gz

mv node_exporter-1.5.0.linux-amd64 node_exporter-1.5.0

cd node_exporter-1.5.0/

mv node_exporter /usr/local/bin/

cat > /usr/lib/systemd/system/node_exporter.service <<'EOF'
[Unit]
Description=node_exporter
Documentation=https://prometheus.io/
After=network.target
 
[Service]
Type=simple
ExecStart=/usr/local/bin/node_exporter \
--collector.ntp \
--collector.mountstats \
--collector.systemd \
--collector.tcpstat
 
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
 
[Install]
WantedBy=multi-user.target
EOF

systemctl restart node_exporter.service

netstat -antp | grep 9100 查看端口起没起

systemctl restart prometheus.service

netstat -antp | grep 9090

此时访问浏览器 192.168.233.10:9090 

 

在master主节点上操作

rpm -ivh grafana-enterprise-7.5.11-1.x86_64.rpm

systemctl restart grafana-server.service

netstat -antp | grep 3000

然后回到浏览器访问 192.168.233.10:3000

账号:admin 密码:admin

模版地址:Grafana dashboards | Grafana Labs

添加数据库

使用模版

2. 部署在k8s集群当中,用pod形式部署


http://www.niftyadmin.cn/n/5665656.html

相关文章

基于Springboot+vue的音乐网站

随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了音乐网站的开发全过程。通过分析音乐网站管理的不足&#xff0c;创建了一个计算机管理音乐网站的方案。文章介绍了音乐网站的系统分析部分&#xff0c;包括可行性分析…

【网络】传输层协议TCP

TCP协议 TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09;是一种面向连接的、可靠的、基于字节流的传输层通信协议&#xff0c;由IETF的RFC 793定义。TCP在IP&#xff08;Internet Protocol&#xff0c;互联网协议&#xff09;网络层上提供…

go的学习笔记

中文标准库文档:https://studygolang.com/pkgdoc 第一段代码 所有代码的主文件都是main.go,下面的代码直接在项目里面创建main.go运行 package main // 声明文件所在的包,每个go文件必须有归属的包import "fmt" // 引入程序需要的包,为了使用包下的函数,比如Print…

网页打开时,下载的文件svg+xml类型有什么作用?

‌SVG文件在网页设计中的主要作用包括清晰度、多功能性、较小的文件大小以及可访问性和包容性。‌ ‌清晰度‌&#xff1a;SVG文件可以无限扩展&#xff0c;这意味着您可以根据需要调整其大小而不会失去清晰度。与光栅图像相比&#xff0c;SVG文件在放大时不会出现模糊或颗粒感…

AI绘画与摄影新纪元:ChatGPT+Midjourney+文心一格 共绘梦幻世界

文章目录 一、AI艺术的新时代二、ChatGPT&#xff1a;创意的引擎与灵感的火花三、Midjourney&#xff1a;图像生成的魔法与技术的奇迹四、文心一格&#xff1a;艺术的升华与情感的共鸣五、融合创新&#xff1a;AI绘画与摄影实战的无限可能六、应用场景与实践案例AI艺术的美好未…

kafka消息发送几种方式

同步发送 or 异步发送 消息发送根据是否需要处理发送的结果分为同步发送、异步发送。 同步发送&#xff1a;等待发送结果返回&#xff0c;这种方式是可靠的&#xff0c;因为异常能及时处理&#xff0c;但同步发送需要阻塞等待一条消息发送完才处理下一条&#xff0c;吞吐量差。…

人类行为识别系统源码分享

人类行为识别检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vis…

mysql学习教程,从入门到精通,SQL 删除数据(DELETE 语句)(18)

1、SQL 删除数据&#xff08;DELETE 语句&#xff09; 在编写SQL中的DELETE语句时&#xff0c;需要非常小心&#xff0c;因为一旦执行&#xff0c;被删除的数据就无法恢复了&#xff08;除非你有备份&#xff09;。DELETE语句用于从数据库表中移除一条或多条记录。这里&#x…