ansible角色简介:

目录名 说明
defaults 默认变量存放目录
handlers 处理程序(当发生改变时需要执行的操作)
meta 角色依赖关系处理
tasks 具体执行的任务操作定义
templates 模板文件存放目录
vars 变量文件目录
files 安装包文件目录

1.查看ansible控制端目录结构,tree /etc/ansible

/etc/ansible/
├── ansible.cfg
├── delete_zabbix_agent.yml
├── hosts
├── install_zabbix_agent.yml
└── roles
├── delete_zabbix_agent
│   ├── tasks
│   │   └── main.yml
│   └── vars
│   └── main.yml
└── install_zabbix_agent
├── files
│   └── zabbix-2.2..tar.gz
├── tasks
│   └── main.yml
├── templates
│   ├── zabbix_agentd
│   └── zabbix_agentd.conf
└── vars
└── main.yml
# ansible.cfg  此文件为ansible的主配置文件
# hosts 用于定义主机组
# roles 定义不同的角色
# install_zabbix_agent.yml 用于安装zabbix_agent的引导文件
# delete_zabbix_agent.yml 删除已安装的zabbix_agent的引导文件
# files 目录:用于存放将要拷贝到远程主机的安装包等
# tasks 目录:将要执行的所有任务,如果比较复杂,可以单独定义不同的任务,最后在main.yml 件中引用即可
# templates 目录:模板目录,这里存放着一些可变的文件
# vars 目录:用于存放变量

2.install_zabbix_agent.yml文件内容

- hosts: host
roles:
- install_zabbix_agent

3.delete_zabbix_agent.yml文件内容

- hosts: host
roles:
- delete_zabbix_agent

4./etc/ansible/roles/install_zabbix_agent/tasks/main.yml 文件内容

- name: install software
yum: name={{item}} state=latest
with_items:
- libcurl
- libcurl-devel
- name: create zabbix user
user: name={{zabbix_user}} state=present shell=/sbin/nologin
- name: Uncompression Zabbix.tar.gz
unarchive: src=zabbix-{{zabbix_version}}.tar.gz dest={{zabbix_dir}}
- name: copy zabbix start script
template: src=zabbix_agentd dest=/etc/rc.d/init.d/zabbix_agentd owner=root group=root mode=
- name: copy zabbix config file
template: src=zabbix_agentd.conf dest={{zabbix_dir}}/zabbix/etc/zabbix_agentd.conf owner={{zabbix_user}} group={{zabbix_user}} mode=
- name: modify zabbix dir permission
file: path={{zabbix_dir}}/zabbix owner={{zabbix_user}} group={{zabbix_user}} recurse=yes
- name: start zabbix service
shell: /etc/init.d/zabbix_agentd start

5.拷贝zabbix-2.2.1.tar.gz,到 /etc/ansible/roles/install_zabbix_agent/files/zabbix-2.2.1.tar.gz

6.拷贝zabbix_agentd启动命令文件,到/etc/ansible/roles/install_zabbix_agent/templates/zabbix_agentd目录,修改

 # Zabbix-Directory
#BASEDIR=/usr/local
BASEDIR={{zabbix_dir}}/zabbix

7.拷贝zabbix_agentd.conf配置文件,到/etc/ansible/roles/install_zabbix_agent/templates/zabbix_agentd.conf ,修改

Server={{zabbix_server_ip}}
ServerActive={{zabbix_server_ip}

8./etc/ansible/roles/install_zabbix_agent/vars/main.yml文件内容

zabbix_dir: /usr/local
zabbix_version: 2.2.
zabbix_user: zabbix
zabbix_port:
zabbix_server_ip: 10.205.16.10

9./etc/ansible/roles/delete_zabbix_agent/tasks/main.yml 文件内容

- name: Stop Zabbix_agent
shell: pgrep zabbix_agentd | xargs kill
ignore_errors: yes
- name: Delete Boot Start
shell: chkconfig --del zabbix_agentd
- name: Delete Start Script
shell: rm -rf /etc/init.d/zabbix_agentd
- name: Delete Install Dir
shell: rm -rf {{ zabbix_dir }}/zabbix
- name: Delete Software
shell: rm -rf {{ zabbix_dir }}/src/zabbix-{{ zabbix_version }}.tar.gz
- name: Delete Log File
shell: rm -rf /tmp/zabbix_agentd.log
- name: Delete Zabbix User
user: name={{ zabbix_user }} state=absent remove=yes

10./etc/ansible/roles/delete_zabbix_agent/vars/main.yml文件内容

zabbix_dir: /usr/local
zabbix_version: 2.2.
zabbix_user: zabbix

11.执行命令安装zabbix客户端

ansible-playbook /etc/ansible/install_zabbix_agent.yml

12.执行命令删除zabbix客户端

ansible-playbook /etc/ansible/delete_zabbix_agent.yml

最新文章

  1. 如何解决loadrunner回放日志中的乱码问题
  2. codeforces 490B.Queue 解题报告
  3. 基于HTML5的电信网管3D机房监控应用
  4. Struts2(十五)实现文件上传
  5. CDC
  6. Linux内核完全注释之编程语言和环境(二)
  7. 判断ie,并确定其版本号
  8. POJ 3186Treats for the Cows (区间DP)
  9. ubuntu14.04使用root用户登录桌面 分类: 学习笔记 linux ubuntu 2015-07-05 10:30 199人阅读 评论(0) 收藏
  10. 34.Spring-Aop.md
  11. thinkphp 邮件发送
  12. [Java 8 Lambda] java.util.stream 简单介绍
  13. 自己写CPU第五级(4)——逻辑、实现移动和空指令
  14. cpu组相连映射
  15. AOP杂谈
  16. 详细分析apache httpd反向代理的用法
  17. eclipse中 web项目缺少tomcatl lib的解决办法
  18. Cocos2d3.0 制作PList文件
  19. Trie模版
  20. LeetCode(24)-Balanced Binary Tree

热门文章

  1. jQuery UI dialog 隐藏默认关闭按钮
  2. cmd/bat 判断日期,并删除文件
  3. c#实体转化
  4. ssh无法连接到虚拟机linux系统
  5. Socket网络通信之NIO
  6. Java基础入门 - 三种注释及文档注释详解
  7. hdu 1561 树形DP n个选m个价值最大
  8. Hibernate课程 初探多对多映射1-1 多对多应用场景
  9. iOS 系统框架结构图
  10. Native Method