利用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 ...
随机推荐
- LR 两种html与url录制
一直在使用LR,对于Html_based script和Url-based script 两种录制方式之间,要如何选择,仍是一知半解.最近测试时遇到同样的业务功能,两种录制方式的脚本,单次执行时间差别 ...
- oracle创建视图时一些问题
这几天创建视图的时候,遇见的问题. 一:创建视图的时候Oracle-报错:文字与格式字符串不匹配(ORA-01861) 我创建的时候用的 是to_date 然后我改成了to_char select X ...
- [转帖]NUMA
作者:ibless 来源:CSDN 原文:https://blog.csdn.net/ibless/article/details/80114009 其实 很早之前对这一块有了解 比较多的的是 CCN ...
- [2018.05].NET Core 3 and Support for Windows Desktop Applications
.NET Core 3 and Support for Windows Desktop Applications Richard 微软官网的内容...net 3.0 升级任务 任重道远 https:/ ...
- 【学亮IT手记】Ajax跨域问题精讲--jQuery解决跨域操作
什么是跨域 跨域,它是不同的域名(服务器)之间的相互的资源之间的访问. 当协议,域名,端口号任意一个不同,它们就是不同的域. 正常情况下,因为浏览器安全的问题,不同域之间的资源是不可以访问的. 跨域的 ...
- jQuery EasyUI 选项卡面板tabs使用实例精讲
1. 对选项卡面板区域 div 设置 class=”easyui-tabs” 2. 对选项卡面板区域添加多个 div,每个 div 就是一个选项卡(每个面板一定设置 title) 3. 设置面板 fi ...
- 10分钟让你的代码更加pythonic
参考: https://blog.csdn.net/g8433373/article/details/80709116
- python数学第七天【期望的性质】
- python安装与配置
首先下载python地址: https://www.python.org/downloads/release/python-361/ 下载页面中有多个版本: web-based installer 是 ...
- LodopJS代码模版的加载和赋值
Lodop模版有两种方法,一种是传统的JS语句,可以用JS方法里的eval来执行,一种是文档式模版,是特殊格式的base64码,此篇博文介绍JS模版的加载和赋值.两种模版都可以存入一下地方进行调用,比 ...