一、zabbix
1.1 为什么使用监控
- 可以通过友好的界面进行浏览所有的服务器状态
- 可以在web前段方便查看监控数据
- 可以回溯寻找事故发生时系统的问题和报警情况
1.2 zabbix是什么
zabbix是一个基于web界面提供分布式系统监控以及网络监控功能的企业级解决方案
1.3 zabbix功能
zabbix能监视各个网络参数,保证服务器系统的安全运营,提供灵活的通知机制来让系统管理员快速定位/解决存在的各种问题
- cacti 网络和绘图
- nagios 网络监控
- ganglia 分布式监控系统
1.4 zabbix的组成
zabbix server和zabbix agent(可选),通过C/S(客户端/服务端)模式采集数据,通过B/S(网页端/服务端)模式在web端展示和配置
- zabbix server:通过SNMP,zabbix,agent,ping端口监视等方法提供对远程服务器/网络状态的监视,数据收集
- zabbix agent(可选): 通过C/S模式采集数据,通过B/S模式web在展示和配置。agent:10050,server:10051
1.5 zabbix主要特点
- 安装配置简单
- 学习成本低
- 支持多语言,包括中文
- 免费开源
- 自动发现服务器与网络设备
- 分布式监控以及web中的管理功能
- email功能通知,例如:短信、语言、微信、钉钉
1.6 监控主要功能
- CPU负载
- 内存使用率
- 磁盘使用率
- 网络状态
- 端口监视
- 日志监视
- 插件开发自定义
1.7 zabbix运行机制
zabbix-agent:负责数据采集----->zabbix-server(数据分析/报警)------>数据库存储(数据存储)------>zabbix-web(数据展示)
1.8 zabbix监控对象
- 硬件监控
- 系统监控
- 网络监控
- java监控
- 应用服务监控
- 数据库监控
- url监控,例如http://
- vmware:监控虚拟机运行状况
1.9 监控模式
- 主动监控:agent向server端发起链接
- 被动监控:server向agent发起链接
1.10 监控的架构
监控部署在系统中,zabbix_server、zabbix——agent、zabbix_proxy、zabbix_get、zabbix_sender
- zabbix server
- zabbix agent
- zabbix proxy
- zabbix get
- zabbix sender
- zabbix_java_gateway(了解)
1.10.1 zabbix_server第一种架构
服务端和客户端是zabbix最简单的架构,监控机器和被监控机器不经过任何处理,服务器和客户机进行数据交换
适用于网络比较简单,尽量在局域网内设备比较少的监控环境交换
1.10.2 server-proxy-client架构
其中proxy和server,client之间沟通的一个桥梁本身有前段,本身并不存放数据,只是讲agent发来的数据暂时存放,然后在提交给server端,这种架构经常是master-node-client,一般用于跨机房、跨网络的中型网络监控架构,通常大于五百台
1.10.3 master-node-client架构
master-node-client是zabbix最复杂的监控架构,一般适用于跨机房、跨网络的大型网络监控架构,每个node同时会有一个server端,node下可以接proxy,也可以直接连接client端,node有自己的配置文件和数据库其次将配置信息和监控数据向master同步。master故障损坏对node其下架构的完整性没有任何影响
二、zabbix监控部署
2.1 zabbix服务端操作
2.1.1 关闭防火墙,设置别名,下载源
2.1.2 更换阿里源,清源并重新加载
2.1.3 安装zabbix
2.1.4 安装scl
2.1.5 编辑zabbix配置文件
2.1.6 安装zabbix的数据库
2.1.7 初始化数据库
2.1.7.1 重新输入后需要密码登陆,代表上一步操作没问题
2.1.8 操作数据库
2.1.9 查询sql文件位置,通过压缩的方式来查看数据
2.1.10 修改zabbix_server配置文件
2.1.11 修改php配置文件
2.1.12 启动服务
2.1.13 在网页操作zabbix
2.1.13.1 安装zabbix
2.1.13.2 一切配置无误,点击下一步
2.1.13.3 输入密码,点击下一步
2.1.13.4 点击下一步
2.1.13.5 点击下一步
2.1.13.6 点击下一步
2.1.13.7 登陆zabbix
输入用户名和密码