【运维知识进阶篇】Zabbix5.0稳定版详解10(Zabbix自动注册+Ansible自动部署,实现一条命令监控任意主机)

简介: 【运维知识进阶篇】Zabbix5.0稳定版详解10(Zabbix自动注册+Ansible自动部署,实现一条命令监控任意主机)

当我们的Zabbix自动注册+Ansible自动部署在一起时,会碰出什么样的火花,答案就是可以实现执行ansible的一条命令,监控任意一台或多台主机。

一、配置好自动注册规则

二、编写Ansible playbook

1、编写playbook

1. [root@Ansible zabbix]# cat zabbix.yaml 
2. - hosts: web03
3.   vars:
4.  - SERVER_IP: 172.16.1.71
5.   tasks:
6.  - name: Install Zabbix-Agent
7.       yum:
8.         name: https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-agent-5.0.34-1.el7.x86_64.rpm
9.         state: present
10.  - name: Install centos-release-scl and Agent
11.       yum:
12.         name: centos-release-scl
13.         state: present
14.  - name: Install Agent
15.       yum:
16.         name: zabbix-agent
17.         state: present
18.  - name: Config Zabbix-Agent
19.       template:
20.         src: zabbix_agentd.conf.j2
21.         dest: /etc/zabbix/zabbix_agentd.conf
22.       notify: Restart Zabbix Agent
23.  - name: Scp Zabbix Agent Configure
24. copy:
25.         src: ./zabbix_agentd.d
26.         dest: /etc/zabbix/
27.  - name: Start Zabbix Agent
28.       systemd:
29.         name: zabbix-agent
30.         state: started
31.         enabled: yes
32. 
33.   handlers:
34.  - name: Restart Zabbix Agent
35.       systemd:
36.         name: zabbix-agent
37.         state: restarted

2、编写主机清单

1. [root@Ansible zabbix]# cat hosts 
2. [web_group]
3. web03 ansible_ssh_host=172.16.1.9

3、编写zabbix客户端配置文件,方便进行推送

1. [root@Ansible zabbix]# grep -v '^$\|^#' zabbix_agentd.conf.j2
2. PidFile=/var/run/zabbix/zabbix_agentd.pid
3. LogFile=/var/log/zabbix/zabbix_agentd.log
4. LogFileSize=0
5. Server={{ SERVER_IP }}
6. ServerActive={{ SERVER_IP }}
7. Hostname={{ ansible_hostname }}
8. Include=/etc/zabbix/zabbix_agentd.d/*.conf

4、如果需要自定义监控项也可以放到zabbix_agentd.d目录,跟配置文件一起推送过去,最终目录结构如下

1. [root@Ansible zabbix]# ll
2. total 24
3. -rw-r--r-- 1 root root    46 Jul  2 17:37 hosts
4. -rw-r--r-- 1 root root 16012 Jul  8 11:51 zabbix_agentd.conf.j2
5. drwxr-xr-x 2 root root     6 Jul  2 17:13 zabbix_agentd.d
6. -rw-r--r-- 1 root root   947 Jul  8 11:45 zabbix.yaml

三、运行Ansible,查看监控效果

如果主机多的话就用脚本做免密钥

1. [root@Ansible ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.0.0.9
2. 
3. [root@Ansible zabbix]# ansible-playbook -i hosts zabbix.yaml

执行后发现动作日志以及执行了自动注册的动作

也触发了邮箱

 

主机列表成功添加了主机

也会自动关联我们设定的模板,数据也可以采集到,大功告成!


我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!

目录
相关文章
|
11月前
|
人工智能 运维 Kubernetes
别再手动敲命令了!运维自动化才是打工人的“自救之道”
别再手动敲命令了!运维自动化才是打工人的“自救之道”
361 8
|
弹性计算 人工智能 运维
摆脱繁琐命令-让运维更加流畅-阿里云ECS操作系统控制台运维篇
阿里云操作系统控制台提供了便捷的服务器监控与管理功能,简化了运维工作。通过将多台服务器纳入统一监控平台,用户可以快速查看CPU、内存、磁盘和网络等关键资源的使用情况,避免了逐一远程连接查询的繁琐操作。此外,该工具支持自动化数据汇总,极大地方便了日报、周报和月报的编写。测试过程中,系统展示了良好的稳定性和响应速度,尤其在网络抖动和大文件健康状态测试中表现出色。整体体验流畅,显著提升了运维效率。 操作系统控制台地址:[点击访问](https://alinux.console.aliyun.com/)
473 26
摆脱繁琐命令-让运维更加流畅-阿里云ECS操作系统控制台运维篇
|
运维
阿里云服务器批量执行命令(系统运维管理oos)
阿里云【系统运维管理oos】批量执行详情
314 5
|
运维 监控 网络协议
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
1228 3
|
缓存 运维 监控
【运维必备知识】Linux系统平均负载与top、uptime命令详解
系统平均负载是衡量Linux服务器性能的关键指标之一。通过使用 `top`和 `uptime`命令,可以实时监控系统的负载情况,帮助运维人员及时发现并解决潜在问题。理解这些工具的输出和意义是确保系统稳定运行的基础。希望本文对Linux系统平均负载及相关命令的详细解析能帮助您更好地进行系统运维和性能优化。
1439 3
|
图形学 开发者 存储
超越基础教程:深度拆解Unity地形编辑器的每一个隐藏角落,让你的游戏世界既浩瀚无垠又细节满满——从新手到高手的全面技巧升级秘籍
【8月更文挑战第31天】Unity地形编辑器是游戏开发中的重要工具,可快速创建复杂多变的游戏环境。本文通过比较不同地形编辑技术,详细介绍如何利用其功能构建广阔且精细的游戏世界,并提供具体示例代码,展示从基础地形绘制到植被与纹理添加的全过程。通过学习这些技巧,开发者能显著提升游戏画面质量和玩家体验。
1492 3
|
移动开发 运维 网络协议
运维必备 | Linux netstat命令详解
运维必备 | Linux netstat命令详解
752 8
|
SQL 运维 监控
DM日常运维高频命令总结
DM日常运维高频命令总结
520 3
|
SQL 运维 Oracle
入门级Oracle 11g日常运维命令总结
入门级Oracle 11g日常运维命令总结
1104 1

推荐镜像

更多