监控prometheus

本文介绍了Prometheus监控系统的特点、组件和监控集群节点的方法。重点讲述了Prometheus如何采集数据,包括exporters、instrumentation和pushgateway三种方式。同时,文章提及了Prometheus监控MySQL数据库的方案,涉及对服务器的I/O、内存、健康状态和网络状态的监控。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

zabbix

Zabbix是由Alexei Vladishev开发的一种网络监视、管理系统,基于Server-Client 架构。可用于监视各种网络服务、服务器和网络机器等状态。
使用各种Database-end如 MySQL, PostgreSQL, SQLite, Oracle 或 IBMDB2储存资料。Server端基于C语言、Web管理端frontend则是基于PHP所制作的。
Zabbix可以使用多种方式监视。可以只使用Simple Check 不需要安装Client端,亦可基于SMTP或HTTP …各种协议定制监视。

在客户端如UNIX,Windows 中安装Zabbix Agent之后,可监视 CPU Load、网络使用状况、硬盘容量等各种状态。而就算没有安装Agent在监视对象中,Zabbix也可以经由SNMP、TCP、ICMP、利用lPMI、SSH、telnet 对目标进行监视。

Zabbbix自带的ltem足够满足普通小公司的监控需求,对于大公司也可以设定自定义的ltem自动生成报表,也有API可以和其他系统集成。
zabbix server,服务端,收集数据,写入数据
●zabbix agent,部署在被监控的机器上,是一个进程,和zabbix server进行交互,以及负责执行命令
●Host, 服务器的概念,指zabbix监控的实体, 服务器,交换机等
●Hosts, 主机组
●Applications, 应用
●Events, 事件
●Media, 发送通知的通道
●Remote command,远程命令
●Template, 模板
●Item, 对于某一个指标的监控,称之为Items, 如某台服务器的内存使用状况,就是一个item监控项
●Trigger, 触发器,定义报警的逻辑,有正常,异常,未知三个状态
●Action, 当Trigger符合设定值后,zabbix指定的动作,如发个邮件给运维,说服务器有问题了

prometheus

特点

Prometheus 相比于其他传统监控工具主要有以下几个特点:

  • 具有由 metric 名称和键值对标识的时间序列数据的多维数据模型
  • 有一个灵活的查询语言
  • 不依赖分布式存储,只和本地磁盘有关
  • 通过 HTTP 的服务拉取时间序列数据
  • 也支持推送的
### 如何部署 Prometheus 实现系统监控 #### 使用 Docker 安装 Prometheus 为了简化安装过程并保持环境隔离,推荐使用 Docker 来部署 Prometheus。确保已预先安装好 Docker 环境。 ```bash docker pull prom/prometheus ``` 此命令会拉取最新的 Prometheus 镜像文件[^4]。 #### 创建自定义网络 创建一个新的 Docker 网络以便容器之间可以互相通信: ```bash docker network create monitoring-net ``` 这一步骤对于后续服务间的交互非常重要[^2]。 #### 启动 Prometheus 容器 启动 Prometheus 容器时指定挂载配置文件路径以及加入之前建立的网络: ```bash docker run -d \ --name=prometheus \ --net=monitoring-net \ -p 9090:9090 \ -v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml \ prom/prometheus ``` 这里 `-v` 参数用于映射主机上的 `prometheus.yml` 文件到容器内部相应位置;端口 `9090` 是默认 Web UI 访问地址[^1]。 #### 编辑 Prometheus 配置文件 (`prometheus.yml`) 编辑 `/path/to/prometheus.yml` 文件来设置 scrape_configs 下的目标列表和其他选项。例如添加 cadvisor 或者其他需要被监控的服务实例: ```yaml scrape_configs: - job_name: 'prometheus' static_configs: - targets: ['localhost:9090'] - job_name: 'cadvisor' static_configs: - targets: ['<cadvisor-ip>:8080'] # 替换成实际 IP 地址 ``` 上述 YAML 片段展示了如何向 Prometheus 添加新的抓取任务以监测本地运行的 Prometheus 和远程 cAdvisor 的性能指标[^3]。 完成以上步骤之后,在浏览器访问 http://localhost:9090 即可查看 Prometheus Web 界面,并验证是否能够获取到预期的数据点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值