写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之 ...
随机推荐
- GCC 多文件编辑
#include <stdio.h> int plus(int a, int b); int minus(int a, int b); int multiply(int a, int b) ...
- (转)Spring常见注解总结
传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分开.xml文 ...
- LVS持久化与超时时间问题分析
前言 在上一篇文章<搭建DNS+LVS(keepAlived)+OpenResty服务器(Docker环境)>中,我搭建了dns+lvs+openresty+web集群:先来回顾一下架构图 ...
- input输入框file类型第二次不触发onchange事件的解决办法,简单有效
在网上看了很多办法,现在将网上大部分说法总结如下: 网上说法: 原因:选择一次后onchange事件没有绑定到input标签上: 解决办法:拷贝一份input标签的副本,每次选择后对原input ...
- 创建自己的共用js库
直至昨晚为止,学习了一个多月的MVC与jQuery,从所做的练习中,发觉jQuery的代码也有跟C#语言一样可以重构,多页面有相同使用的方法函数,均可以放置于一个单独立的js文件或是自定义的js库中. ...
- Visual Studio 命令提示符
Visual Studio 命令提示和 SDK 命令提示会自动设置环境变量,使您能够轻松使用 .NET Framework 工具. 在 .NET Framework 4 版 和更高版本中,应使用 Vi ...
- mysql匿名登录 导致创建不了数据库
常见问题 Access denied for user ''@'localhost' to database 'web02' //web02是我自己创建的数据库 原因分析:mysql数据库的user表 ...
- java自动生成代码
看到这个标题,如果你以为真的可以完全自动生成,那你就太Naive啦 我这里想介绍的是,利用模板生成我们需要的代码 一.模板 首先来说说模板,常见的java模板有:FreeMarker.Velocity ...
- 如何解决WEB应用中文乱码问题
最容易出现乱码的场景是浏览器向服务器发送请求的过程,解决的策略就是强制为请求和响应设置编码格式. 一.POST 方式请求乱码 1. 在每个 Controller 中单独处理 request.setCh ...
- 排序算法(10)--Distribution Sorting--分布排序[2]--Radix Sort--基数排序
1.基本思想 基数排序是通过“分配”和“收集”过程来实现排序 2.实现原理 基数排序(以整形为例),将整形10进制按每位拆分,然后从低位到高位依次比较各个位.主要分为两个过程: (1)分配,先从个位开 ...