ansible-galaxy在线playbook分享平台:http://glaxy.ansible.com
ansible系统架构:
ansible主要由:核心引擎(ansible),核心模块,自定义模块,插件,playbook组成。
外置的插件补充模块功能,完成记录日志、邮件等功能;
默认连接被管节点方式为ssh,local,及大规模连接使用的ZeroMQ
ansible执行过程:
读取ansible系统配置,找到主机清单所在的文件/文件夹/脚本——读取全量主机清单,Host-pattern过滤清单主机——从ansible模块中获取并确定执行的模块
——在connection确定连接方式,获取所需资源,运行模块功能——输出结果(并过滤各种插件)
ansible是基于Python语言实现的,由Paramiko和pyYAML两个关键模块构建的。
Paramiko使用Python写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。用于连接多个远程服务器进行配置。
YAML是一种直观的能够被电脑识别的的数据序列化格式,容易被人类阅读,并且容易和脚本语言交互。YAML类似于XML,但是语法比XML简单得多,对于转化成数组或可以hash的数据时是很简单有效的