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

- INVENTORY:Ansible管理主机的清单
/etc/anaible/hosts
- MODULES:Ansible执行命令的功能模块,多数为内置核心模块,也可自定义
- PLUGINS:模块功能的补充,如连接类型插件、循环插件、变量插件、过滤插件等,该功能不常用
- APl:供第三方程序调用的应用程序编程接口
1.3.2:Ansible命令执行
- USER 普通用户,即SYSTEM ADMINISTRATOR PLAYB00KS:任务剧本(任务集),编排定义Ansible任务
原文链接:https://www.dqzboy.com 集的配置文件,由Ansible顺序依次执行,通常是JSON格式的YWML文件 - CMDB(配置管理数据库)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不能做为主控端
必须 注册 为本站用户, 登录 后才可以发表评论!