1.1、Ansible发展史
作者: Michael Dehaan( Cobbler与Func作者)
ansible的名称来自《安德的游戏》中跨越时空的即时通信工具
2012-03-09,发布0.0.1版,2015-10-17, Red Hati宣布1.5亿美元收购
官
官方文档:http://htps/docs. ansible.com
1.2、Ansible特性
- 模块化:调用特定的模块,完成特定任务
- Paramiko(python对ssh的实现), PyYAML
原文链接:https://www.dqzboy.com , Jinja2(模板语言)三个关键模块 - 支持自定义模块,可使用任何编程语言写模块
- 基于Python语言实现
- 部署简单,基于python和SSH(默认已安装),agentless,无需代理不依赖PKI(无需ssl)
- 安全,基于OpenSSH
- 幂等性:一个任务执行1遍和执行n遍效果一样,不因重复执行带来意外情况
- 支持playbook编排任务,YAML格式,编排任务,支持丰富的数据结构
- 较强大的多层解决方案role
1.3、Ansible架构
1.3.1:Absible组成

- INVENTORY:Ansible管理主机的清单
/etc/anaibl
文章来源(Source):https://www.dqzboy.com e/hosts - MODULES:Ansible执行命令的功能模块,多数为内置核心模块,也可自定义
- PLUGINS:模块功能的补充,如连接类型插件、循环插件、变量插件、过滤插件等,该功能不常用
- APl:供第三方程序调用的应用程序编程接口
1.3.2:Ansible命令执行
- USER 普通用户,即SYSTEM ADMINISTRATOR PLAYB00KS:任务剧本(任务集),编排定义Ansible任务集的配置文件,由Ansible顺序依次执行,通常是JSON格式的YWML文件
- CMDB(配置管理数据
文章来源(Source):浅时光博客 库)API调用 - PUBLIC/PRIVATE CLOUD AP调用
- USER —> Ansible Playbook –> Ansibile
1.3.3:注意事项
- 执行ansible的主机一般称为主控端,中控,master或堡全机
- 主控端Pyhon版本需要2.6或以上
- 被控端Python版本小于2.4需要安装python-simplejson
- 被控端如开启SELinux需要安装lbselinux-python
- windows不能做为主控端
必须 注册 为本站用户, 登录 后才可以发表评论!