一、zabbix介绍及安装部署
1. 简介
zabbix([`zæbiks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
2. 官方资料地址
官网: https://www.zabbix.com/cn/manuals
资源库: https://repo.zabbix.com/
3. 相关教程
安装配置: https://zhuanlan.zhihu.com/p/681393698
Zabbix和Prometheus区别
在多个方面存在显著区别,主要包括技术背景、监控方式、数据存储、查询语言、报警机制、社区与生态等方面。
技术背景
开发语言:Zabbix
基于C语言
开发,而Prometheus
使用Go语言
开发。
发布时间:Zabbix
的官方发行版本可以追溯到2012年,而Prometheus
则晚于Zabbix约四年发布。
开发者:Zabbix
由Alexei Vladishev
开源,而Prometheus
最初由SoundCloud开发,后来被Cloud Native Computing Foundation(CNCF)纳入管理。
监控方式
Zabbix:支持多种数据收集方式,包括zabbix agent
、SNMP
、ping
、端口监控
等,数据收集周期性进行。
Prometheus:采用实时数据采集方式,通过主动拉取(pull)的方式从被监控的目标获取指标数据,适合短期和实时查询。
数据存储
Zabbix:可以使用内置的数据存储机制或与外部数据库集成,支持多种数据库后端。
Prometheus:内置高效的时序数据库,适合长期存储大量时间序列数据,数据以一定时间范围的块进行压缩存储。
查询语言
Zabbix:查询语言相对简单,主要用于基本的监控数据查询。
Prometheus:提供强大的查询语言PromQL
,支持复杂的聚合和计算功能,适合复杂的监控需求。
报警机制
Zabbix:具有完善的报警机制,支持多种报警方式,包括邮件、短信、手机App推送等,并可以设定不同的报警级别。
Prometheus:报警方式相对简单,主要支持邮件和Webhook方式,通过HTTP将告警发送到告警模块Alertmanager。
社区与生态
Zabbix:主要针对传统IT基础设施的监控,社区相对较小,但有丰富的插件和集成选项1。
Prometheus:天然支持Kubernetes
和Docker
等云原生技术,社区活跃度高,有大量的第三方工具和服务支持。
适用场景
Zabbix:更适合传统IT基础设施
的监控,尤其适合物理机/虚拟机
的监控。
Prometheus:更适合云环境和容器监控,特别是Kubernetes
和Docker
等容器集群的监控.