利用ansible批量部署zabbix-agent
应用环境:Linux运维工作少不了一个好的监控,zabbix就是目前比较好的一款开源监控软件。
监控类型多种多样,如果不介意或者系统支持安装,那么agent方式是首选。
当主机数量较多时,可以利用相关工具(ansible,puppet或其他)进行批量部署,节省时间提高效率。
测试环境:通过在ansible-server上操作,使得client-1/2/3上自动安装、配置、并启动zabbix-agent。

部署步骤:
1. 安装ansible
~]#yum install -y epel-release //安装epel源
~]# yum install -y ansible //ansible会自动从epel源中下载安装

2. 编辑ansible的hosts文件
~]# vim /etc/ansible/hosts

3. 创建相关文件夹
~]# cd /etc/ansible/roles/

roles]# mkdir zabbix-agent{files,templates,tasks} -pv

用途说明:

4. 在三个目录下分别建立相应文件
① 在files中存放已经下载好的zabbix-agent包,这里是:zabbix-agent-3.2.6-1.el7.x86_64.rpm
② 在tasks中新建main.yaml文件(注意:必须为该名字)
tasks]# vim main.yaml //内容如下

注意:上图画框的文件就是直接从新建的文件夹files和文件夹templates里寻找,不用写上绝对路径。
③ 在templates中存放zabbix_agentd.conf.j2文件(注意:必须带.j2)
templates]# egrep -v "^#|^$" zabbix_agentd.conf.j2

用目录树看一下:

5. 配置ansible无密码SSH到client
~]# ssh-keygen //产生私钥和公钥

成功后在~/.ssh/路径下将生成ssh密钥文件:id_rsa及id_rsa.pub

~]# ssh-copy-id root@192.168.1.21 //将公钥发送至192.168.1.21主机


6. 以ansible方式ping通客户端
~]# ansible new -m ping

注意:能够以ansible的方式ping通是一切批量部署的前提!!!
7. 建立一个playbook文件
假设就建立在~目录下,名为:zabbix-agent.yaml,该文件的执行可用来调用创建好的roles。
~]#vim zabbix-agent.yaml //内容如下

8. 测试该playbook文件
~]# ansible-playbook zabbix-agent.yaml --check //加上 “ --check ” 可以检测错误
如果没报错,则可实际执行,如下所示就代表测试通过:

9. 执行该playbook文件
~]# ansible-playbook zabbix-agent.yaml //去掉 “ --check ” 就真实的执行了

10. 检查
随机从三台主机中找一台检查一下部署的任务是否都起作用,想下图:

结束。
利用ansible批量部署zabbix-agent的更多相关文章
- 通过ansible自动化部署zabbix应用
zabbix在实际的应用中,可能需要监控的主机非常多,而每个主机的操作系统类型.版本也都不尽相同,在这种环境下,通过手动安装zabbix的agent端已经不现实了,此时就需要借助自动化工具完成zabb ...
- Ansible批量部署工具
Ansible:自动化运维工具 你需要在一台机器上yum install 一个包,这时候有一个需求,比如现在有5台机同时需要装apache这个包,那么100台呢,ssh上去就太慢了,这时候就借助到了a ...
- 运维监控-基于yum的方式部署 Zabbix Agent 4.0 版本
运维监控-基于yum的方式部署 Zabbix Agent 4.0 版本 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 上一篇博客我们分享了如何基于yum的方式部署zabbix 4. ...
- CentOS操作系统部署zabbix agent服务
CentOS操作系统部署zabbix agent服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看zabbix的官方手册 1>.点击下载 2>.查看Ubunt ...
- Ubuntu操作系统部署zabbix agent服务
Ubuntu操作系统部署zabbix agent服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.下载zabbix软件包 博主推荐阅读: https://www.cnblog ...
- Ansible 快速部署 Zabbix 4
阅读本文章需要具有Ansible.Zabbix基础.本次教程基于如下环境: CentOS 7.x Zabbix 4.0 Ansible 2.5 服务器初始化 关闭防火墙.selinux,添加epel常 ...
- ansible 批量部署准备工作
Ansible:自动化运维工具,基于Python开发 功能{ 批量系统配置 批量程序部署 批量运行命令等等 } 准备工作: 一.操作主机安装epel源 和 ansible工具 yum -y insta ...
- Ansible 利用playbook批量部署mariadb
环境说一下 192.168.30.21 ansible 192.168.30.25 client1 192.168.30.26 client2 这里我的ansible环境已经部 ...
- Ansible 利用playbook批量部署Nginx
我这里直接部署的,环境已经搭建好,如果不知道的小伙伴可以看上一遍ansible搭建,都写好了,这里是根据前面环境部署的 192.168.30.21 ansible 192.168.30.25 ...
随机推荐
- SQL性能优化-order by语句的优化
原文:http://bbs.landingbj.com/t-0-243203-1.html 在某些情况中,MySQL可以使用一个索引来满足ORDER BY子句,而不需要额外的排序.where条件和or ...
- JS刷新当前页面的几种方法总结
reload 方法,该方法强迫浏览器刷新当前页面. 语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页 ...
- spring核心思想:IOC(控制反转)和DI(依赖注入)
Spring有三大核心思想,分别是控制反转(IOC,Inversion Of Controller),依赖注入(DI,Dependency Injection)和面向切面编程(AOP,Aspect O ...
- 1 CHM 中文都是乱码
CHM格式是Windows系统里常见的帮助文档格式,但有时一些CHM格式的文档会局部显示乱码,特别是一些外文文档在中文版Windows里.这是因为,CHM格式文档在Windows下默认是使用IE浏览器 ...
- Day 6-1计算机网络基础&TCP/IP
按照功能不同,人们将互联网协议分为osi七层或tcp/ip五层或tcp/ip四层(我们只需要掌握tcp/ip五层协议即可) 每层运行常见物理设备: TCP/IP协议: Transmission Con ...
- JavaScript中forEach与each
forEach是ES5中操作数组的一种方法,主要功能是遍历数组,例如: var arr = [1,2,3,4]; arr.forEach(alert); 等价于: var arr = [1, 2, 3 ...
- input & collapse & tags
input & collapse & tags https://ant.design/components/tag-cn/ https://www.iviewui.com/compon ...
- QTP 自动化测试--点滴 获取datatable数值/dafault文件位置
0 设置default.xls文件位置 右键项目-settings-resources-datatable-选择 数据表的位置如图 心得:同一个项目-分成多个测试项目-这些测试项目可以共用同一张数据表 ...
- Unable to resolve target 'android-15'
SDK 15没有加载造成的,在SDK Manager.exe下安装以下文件 Android SDK Tools (25.2.5) Android SDK Platform-tools (28.0.1) ...
- gevent监测单线程下的io进行切换
from gevent import monkey;monkey.patch_all() import gevent import time def eat(name): print('%s eat ...