05.Zabbix自动化监控
徐亮伟, 江湖人称标杆徐。多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。擅长Web集群架构与自动化运维,曾负责国内某大型电商运维工作。
个人博客"徐亮伟架构师之路"累计受益数万人。老男孩Linux云计算运维QQ交流群: 384467551 226199307
老男孩教育官网 http://www.oldboyedu.com
1.Zabbix自动发现(被动)
网络发现由两个阶段组成:发现discovery
和动作actions
1.单击配置->自动发现->启动默认的Local network
2.配置规则
3.单击配置->动作->事件源->自动发现->启用动作
4.修改动作规则
5.修改操作细节
默认标题
自动发现主机IP:{DISCOVERY.DEVICE.IPADDRESS}消息内容
客户端名称: {DISCOVERY.SERVICE.NAME}
客户端端口: {DISCOVERY.SERVICE.PORT}
客户端状态: {DISCOVERY.SERVICE.STATUS}操作动作
添加主机,添加主机组,链接模板,发送邮件,等等
6.主机已扫描加入节点 web03是/etc/hosts中定义的
新增一台全新的主机
[root@web02 ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.12-1.el7.x86_64.rpm
[root@web02 ~]# grep "^Server" /etc/zabbix/zabbix_agentd.conf
Server=10.0.0.61
[root@web02 ~]# systemctl restart zabbix-agent
2.Zabbix自动注册(主动)
Zabbix agent
可以自动注册到服务器进行监控。这种方式无需在服务器上手动配置它们。自动注册官方手册
1.配置Zabbix-Agent
指定Zabbix-Server
[root@web03 ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=172.16.1.71
ServerActive=172.16.1.71
Hostname=web03
[root@web03 ~]# systemctl restart zabbix-agent
注意: 如果不指定Hostname,则服务器将使用agent的系统主机名命名主机
2.单击配置->动作,选择自动注册为事件源,然后单击创建操作
3.配置动作规则
4.配置操作规则
5.等待自动注册
6.等待邮件通知
7.可以通过主机名称来区分不同的主机,例如web,db,这样可以根据不同的主机配置不同的模板。
第一个动作如下
名称:web服务主机自动注册
主机名称似 web
操作:链接到模板:Template Nginx Status
第二个动作如下
名称:db服务主机自动注册
主机名称似 db
操作:链接到模板:Template DB MySQL
如无法通过主机名称进行区分各个主机,建议使用"主机元数据"进行区分各个主机,详情参考官方文档
3.Zabbix主被模式区别
1.主动模式与被动模式针对的是
1.被动模式 (Zabbix-server轮询检测zabbix-agent)
2.主动模式 (Zabbix-agent主动上报给Zabbix-server)
2.主动模式与被被动模式选择如何选择
1.当Queue里有大量延迟的监控项
2.当监控主机超过300+, 建议使用主动模式。
1.Zabbix被动模式: Zabbix
默认是被动模式被动模式,100个监控, 需要100个回合(注意zabbix图中的时间)
2.Zabbix
主动模式,100个监控,只需要1个回合,需要调整zabbix-agent.conf
配置文件
3.如何调整Zabbix主动模式/etc/zabbix/zabbix_agentd.conf
1.Zabbix-agent
修改配置文件
[root@web03 ~]# vim /etc/zabbix/zabbix_agentd.conf
ServerActive=172.16.1.71
Hostname= #建议填写
2.Zabbix
需要更新模板为Active
1.全克隆被动模式的模板->改名->主动模式的模板
2.修改克隆好的模板,进行监控项的修改,修改为主动模式
3.主机引用,先取消被动使用的模板(取消链接并清理),然后链接新模板