写Ansible playbook添加zabbix被监控的对象
本主题达到的效果是能通过编写Ansible Playbook,创建zabbix主机组,把被监控的对象加入到zabbix监控系统中,同时链接到对象的模板。
1.准备工作
在zabbix服务器上面,我们需要安装ansible,同时呢,还需要安装一些其它组件,如下:
#  yum install epel-release
#  yum install ansible python-pip
#  pip install zabbix-api
#  pip install --upgrade pip
2. 添加zabbix 主机组的playbook
添加主机前,我们需要创建主机组。
# ansible-playbook add-hostgroup.yml #执行playbook会自动添加主机组
playbook内容如下:
| ---- name: config zabbix  hosts: localhost  tasks:  - name: create and update zabbix groups    local_action:      module: zabbix_group      server_url: http://wszabbix.wondershare.cn #zabbix服务器的访问地址      login_user: wszabbix      login_password: *******      state: present      host_groups:        - IAAS-App-AD-Srv        - IAAS-App-Mail-Srv        - IAAS-App-Skype-Srv        - IAAS-App-SQL-Srv        - IAAS-App-Horizon-Srv        - IAAS-App-Veeam-Srv | 
3. 添加zabbix主机的playbook
我们需要先写一个变量文件,存放主机信息,采用字典的书写方式,变量文件:win_host_info.yml ,内容如下:
| hostinfo:                                      #变量名字  update.wondershare.cn:                       #变量的key,这个可以自己定义,也可以不用被监控的主机的FQDN    fqdn: update.wondershare.cn                #我定义的是主机的FQDN(变量key的value值,我们需要在playbook中引用,最好定义有意义的名字)    app: IAAS-App-AD-Srv                       #我的用途是主机组,表示主机存放在哪个主机组    ip: 192.168.11.157                         #我的用途是主机的IP地址  szdc04.wondershare.cn:    fqdn: szdc04.wondershare.cn    app: IAAS-App-AD-Srv    ip: 192.168.10.81 | 
定义好了主机变量文件,我们就可以在playbook中引用了。
#ansible-playbook add-win-hosts.yml #以下以配置playbook的内容
| ---- name: config zabbix  hosts: localhost  vars_files:    - win_host_info.yml  tasks:  - name: add and update Windows hosts to zabbix    local_action:      module: zabbix_host      server_url: http://wszabbix.wondershare.cn      login_user: wszabbix      login_password: ******      host_name: "{{ item.value.fqdn }}"      visible_name: "{{ item.value.fqdn }}"      host_groups:        - "{{ item.value.app }}"      link_templates:                                              #链接的模板        - Template ICMP Ping        - Template OS Windows        - Template TCP Status      status: enabled      state: present      inventory_mode: disabled      interfaces:        - type: 1          main: 1          useip: 1          ip: "{{ item.value.ip }}"          dns: ""          port: 10050    with_dict: "{{ hostinfo }}"                                  #迭代的类型选择with_dict | 
写Ansible playbook添加zabbix被监控的对象的更多相关文章
- suse 12 sp1 系统添加zabbix agent监控
		因为之前走入一个误区,认为linux系统的zabbix安装包都是一样的,其实不同的linux的系统对应的版本是不一样的. suse系统版本(不同版本之间也是有区别的):SUSE Linux 12 S ... 
- 添加zabbix自动发现(监控多tomcat实例)
		说明 何为自动发现?首先我们监控多tomcat实例,如果一个个实例地添加或许可以完成当前需求.但是日后随着实例的增多,再手动一个个去添加就十分不方便了.这时候需要自动发现这个功能,来帮助我们自动添加监 ... 
- ansible playbook实践(四)-如何调试写好的playbook文件
		有时,我们写了一个长长,功能很强悍的yaml文件,但是,我们有可能会担心,写的yaml文件是否正确,是否有漏洞危机,毕竟是要修改线上的机器,那么,有可能我们可以从以下几个检查维度来进行,确保在大规模应 ... 
- zabbix添加简单的监控
		本文讲述给zabbix添加zabbix自带模板和自定义添加模板:安装zabbix请参考本文 1.1. 给主机添加zabbix自带监控模板 第一步: 第二步: 如果添加模板,但是模板并没有监控项,下面的 ... 
- Zabbix添加web页面监控告警
		一,选择添加了web监控的主机 二,创建一个告警触发器 三,定义监控项 设置完毕假如网站down就会触发告警 怎么设置web监控以及触发告警action参考 Zabbix使用SMTP发送邮件报警并且制 ... 
- zabbix mongodb 监控添加
		在zabbix 上添加mongodb的监控 由于使用的是zabbix 3.0 所有在模板里面又自己的模板名字叫:Template MongoDB 所以 客户端的配置如下 到配置文件目录 /usr/lo ... 
- zabbix自动化监控基础
		zabbix安装配置文档 2 一 zabbix-server 安装配置(基础配置) 2 二 zabbix agent安装配置 5 2.1 主动模式和被动模式 6 2.2 安装配置zabbix_agen ... 
- 通过ansible自动化部署zabbix应用
		zabbix在实际的应用中,可能需要监控的主机非常多,而每个主机的操作系统类型.版本也都不尽相同,在这种环境下,通过手动安装zabbix的agent端已经不现实了,此时就需要借助自动化工具完成zabb ... 
- 通过PlayBook部署Zabbix
		编写Linux初始化剧本 初始化剧本环节,主要用户实现关闭Selinux关闭防火墙,一起配置一下阿里云的YUM源地址,和安装EPEL源,为后期的zabbix安装做好铺垫工作. 1.在安装Zabbix之 ... 
随机推荐
- <Think Python>中统计文献单词的处理代码
			def process_line(line, hist): """Adds the words in the line to the histogram. Modi ... 
- (转)Spring事务管理(详解+实例)
			文章转自:http://blog.csdn.net/trigl/article/details/50968079 写这篇博客之前我首先读了<Spring in action>,之后在网上看 ... 
- C#Redis 事务操作
			一.理论 还是抄前辈的理论知识. 和众多其它数据库一样,Redis作为NoSQL数据库也同样提供了事务机制.在Redis中,MULTI/EXEC/DISCARD/WATCH这四个命令是我们实现事务的基 ... 
- [转]Bootstrap table 分页 In asp.net MVC
			本文转自:https://www.cnblogs.com/lenovo_tiger_love/p/7474403.html 中文翻译文档: http://blog.csdn.net/rickiyeat ... 
- [日常] Go语言圣经-匿名函数习题
			Go语言圣经-匿名函数1.拥有函数名的函数只能在包级语法块中被声明,通过函数字面量(function literal),我们可绕过这一限制,在任何表达式中表示一个函数值2.通过这种方式定义的函数可以访 ... 
- python 系列文章汇总(持续更新...)
			引言 不知不觉已经写了好几篇 python 相关的随笔了,从刚开始的门外汉到现在已经对 python 有一些入门了,时间也已经过去了一个多月. 写博客真是好处多多,不仅能提供整理自己学习的知识点,梳理 ... 
- Java - LinkedList源码分析
			java提高篇(二二)---LinkedList 一.概述 LinkedList与ArrayList一样实现List接口,只是ArrayList是List接口的大小可变数组的实现,LinkedList ... 
- Asp.Net里关于Session过期跳转页面的一些小技巧
			这里算是自己的个人随笔吧,仅供参考使用,后续有更好的方法再做补充 之前在Aspx页面里面,在Session过期的时候我经常会使用 Server.Transfer("b.aspx") ... 
- 封装7z软件实现批量文件或目录压缩
			哈哈,作为一个特别懒的运维人来说 兄弟我写了一个批量压缩文件或目录的小工具,用来批量压缩文件目录 弄一下,然后就不用管他了,后天看结果就好了 操作步骤: 1.选择想做压缩处理的根目录 2.选择你要的功 ... 
- macbook 外接显示器黑屏,不显示
			我的mac本有点老了,11年底的那款 整了个显示器,刚开始连上没问题,后来开机状态拔了雷电线,再插 或者关机后莫名的原因再启动,显示器黑屏 网上好多方法都不行,自己总结了一个方法 拔掉连接线,关闭m ... 
