应用环境: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的更多相关文章

  1. 通过ansible自动化部署zabbix应用

    zabbix在实际的应用中,可能需要监控的主机非常多,而每个主机的操作系统类型.版本也都不尽相同,在这种环境下,通过手动安装zabbix的agent端已经不现实了,此时就需要借助自动化工具完成zabb ...

  2. Ansible批量部署工具

    Ansible:自动化运维工具 你需要在一台机器上yum install 一个包,这时候有一个需求,比如现在有5台机同时需要装apache这个包,那么100台呢,ssh上去就太慢了,这时候就借助到了a ...

  3. 运维监控-基于yum的方式部署 Zabbix Agent 4.0 版本

    运维监控-基于yum的方式部署 Zabbix Agent 4.0 版本 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 上一篇博客我们分享了如何基于yum的方式部署zabbix 4. ...

  4. CentOS操作系统部署zabbix agent服务

    CentOS操作系统部署zabbix agent服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看zabbix的官方手册 1>.点击下载 2>.查看Ubunt ...

  5. Ubuntu操作系统部署zabbix agent服务

    Ubuntu操作系统部署zabbix agent服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.下载zabbix软件包 博主推荐阅读: https://www.cnblog ...

  6. Ansible 快速部署 Zabbix 4

    阅读本文章需要具有Ansible.Zabbix基础.本次教程基于如下环境: CentOS 7.x Zabbix 4.0 Ansible 2.5 服务器初始化 关闭防火墙.selinux,添加epel常 ...

  7. ansible 批量部署准备工作

    Ansible:自动化运维工具,基于Python开发 功能{ 批量系统配置 批量程序部署 批量运行命令等等 } 准备工作: 一.操作主机安装epel源 和 ansible工具 yum -y insta ...

  8. Ansible 利用playbook批量部署mariadb

    环境说一下 192.168.30.21     ansible 192.168.30.25     client1 192.168.30.26     client2 这里我的ansible环境已经部 ...

  9. Ansible 利用playbook批量部署Nginx

    我这里直接部署的,环境已经搭建好,如果不知道的小伙伴可以看上一遍ansible搭建,都写好了,这里是根据前面环境部署的 192.168.30.21     ansible 192.168.30.25  ...

随机推荐

  1. 取消 Vue 中格式编译警告

    使用VS Code在学习 Vue 的过程中,博主是在2.0之后开始学习的,在写项目的时候发现控制台经常会报一大堆的警告,都是关于格式的,有时候少空格,有时候多空格,不胜其烦,出现这个问题是因为在初始化 ...

  2. node 模块化思想中index.js的重要性

    目录结构如上图 module1和modlue2.main在同一级 module1下文件: index.js var test2=require('./test2'); var sayHi=functi ...

  3. 用Canvas实现一些简单的图片滤镜

    1.灰度滤镜 对于灰度滤镜的实现一般有三种算法 1) 最大值法:即新的颜色值R=G=B=Max(R,G,B),通过这种方法处理后的图片看起来亮度值偏高. 2) 平均值法:即新的颜色值R=G=B=(R+ ...

  4. python爬虫scrapy之如何同时执行多个scrapy爬行任务

    背景: 刚开始学习scrapy爬虫框架的时候,就在想如果我在服务器上执行一个爬虫任务的话,还说的过去.但是我不能每个爬虫任务就新建一个项目吧.例如我建立了一个知乎的爬行任务,但是我在这个爬行任务中,写 ...

  5. groovy安装 ideal

    参考:https://blog.csdn.net/newbie_907486852/article/details/80879745 (1) 首先下载groovy: https://gradle.or ...

  6. Delphi窗体之间互相调用的简单问题

    问题是这样的,我的程序主窗口Form1上面有一个数据连接(ADOCONNECTION1)和ADOQUERY,然后还有一些数据感知组件用于浏览用的,我打算点击From1中的一个“修改数据”按钮,就弹出F ...

  7. Deconvolution用法

  8. SQL 给视图赋权限

    授予表权限 创建视图 授予视图权限 测试权限 复杂程度: 初级 数据要求: 使用自备的数据 您可以使用 SQL 在企业级地理数据库中创建表和要素类的视图. 本主题中的示例显示如何使用 Microsof ...

  9. hibernate多对多映射文件的配置

    user.hbm.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate ...

  10. servlet篇 之servlet实现

    一:如何写一个servlet 实现/继承 如下 接口/类 Servlet   接口 有五个抽象方法 GenericServlet  抽象类     有一个抽象方法 HttpServlet   抽象类 ...