阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Ansible批量部署Zabbix Agent

184次阅读
没有评论

共计 2544 个字符,预计需要花费 7 分钟才能阅读完成。

Ansible 的目录树结构如下:

# tree zabbix/

zabbix/
├── defaults
├── files
│  └── zabbix.tar.gz
├── handlers
├── meta
├── tasks
│  └── main.yml
├── templates
│  └── zabbix_agentd.conf.j2
└── vars
    └── main.yaml

zabbix.tar.gz:tar 包是编译安装完 zabbix 后打的 tar 包

zabbix_agentd.conf.j2: 编译安装完 zabbix,copy 的 zabbix_agentd.conf 文件,略微添加点东西, 后面会展示。

zabbix_agentd:文件也是编译安装完 zabbix,copy 的启动脚本文件,修改了里面的 zabbix_home 变量。

zabbix playbook 文件如下:

cat zabbix.yml 
– hosts: all
  roles:
    – zabbix

tasks 文件内容如下:

# cat main.yml 
– name: scp zabbix 到 client
  copy: src=zabbix.tar.gz dest={{zabbix_home}}
– name: scp zabbix_aegntd 到 client
  copy: src=/tmp/zabbix_agentd dest=/etc/init.d/ mode=777
– name: tar zxf zabbix.tar.gz 解压
  shell: cd {{zabbix_home}} && tar -zxf zabbix.tar.gz
– name: Copy zabbix_agent.conf Config file
  template: >
        src=zabbix_agentd.conf.j2
        dest=/usr/local/zabbix/etc/zabbix_agentd.conf
        mode=0644 owner=root group=root
– name: restart zabbix
  service: name=zabbix_agentd state=restarted

vars 的内容如下:

# cat main.yaml 
zabbix_home: /usr/local

zabbix_agentd.conf.j2 模板的文件内容如下:

#grep -v ‘^#’ zabbix_agentd.conf.j2  | grep -v ‘^$’
LogFile=/tmp/zabbix_agentd.log
EnableRemoteCommands=1
Server=10.74.246.70
ListenPort=10050
ServerActive=10.74.246.70
Hostname={{ansible_default_ipv4.address}}
AllowRoot=1
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
UnsafeUserParameters=1
UserParameter=tomcat_port,/usr/local/zabbix/share/zabbix/alertscripts/tomcat_port.sh $1
UserParameter=tcp[*],/usr/local/zabbix/share/zabbix/alertscripts/tcp_connection.sh $1
UserParameter=nginx_port,/usr/local/zabbix/share/zabbix/alertscripts/nginx_port.sh $1
UserParameter=erro_log[*],/usr/local/zabbix/share/zabbix/alertscripts/error_log.sh $1

然后就可以定义 hosts 文件,批量操作安装 zabbix_agent。

对于某些特定的主机,需要批量推送特定的 zabbix_agentd.conf 文件,可以修改完 zabbix_agentd.conf.j2 模板,然后使用 ansible 推送:

#ansible-playbook zabbix.yml –start-at-task=’Copy zabbix_agent.conf Config file’

当然也可以指定推送那些机器,后面 - l 指定就行

#ansible-playbook zabbix.yml –start-at-task=’Copy zabbix_agent.conf Config file’ -l 192.168.121.128

一些 Zabbix 相关教程集合

Ubuntu 14.04 下 Zabbix2.4.5 源码编译安装  http://www.linuxidc.com/Linux/2015-05/117657.htm

安装部署分布式监控系统 Zabbix 2.06 http://www.linuxidc.com/Linux/2013-07/86942.htm

《安装部署分布式监控系统 Zabbix 2.06》http://www.linuxidc.com/Linux/2013-07/86942.htm

CentOS 6.3 下 Zabbix 安装部署 http://www.linuxidc.com/Linux/2013-05/83786.htm

Zabbix 分布式监控系统实践 http://www.linuxidc.com/Linux/2013-06/85758.htm

Zabbix Agent 源码编译安装 http://www.linuxidc.com/Linux/2016-04/130437.htm

CentOS 6.3 下 Zabbix 监控 MySQL 数据库参数 http://www.linuxidc.com/Linux/2013-05/84800.htm

64 位 CentOS 6.2 下安装 Zabbix 2.0.6   http://www.linuxidc.com/Linux/2014-11/109541.htm

ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-02/140874.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2544字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中