(1)其他开源项目
- Ansible Galaxy:用于查找、共享使用Ansible Role的在线社区
- Ansible Container:实现了构建、部署、管理容器应用的全过程
- Ansible Tower:商业项目,可视化仪表盘
(2)对管理主机的要求
- 支持Python2和Python3
(3)对目标主机的要求
- 使通常使用SSH通信,使用SFTP作为文件传输,通过修改ansible.cfg可以实现SCP文件传输
- 支持Python2或者Python3版本
(4)与其他软件对比
Ansible | Chef | Puppet | SaltStack | |
---|---|---|---|---|
开发语言 | Python | Ruby、Erlang | C++、Clojure | Python2 |
配置文件 | YAML、JSON | Ruby | Propfiletary | YAML |
数据库支持 | 不需要 | PostgreSQL | PuppetDB | 不需要 |
传输方式 | SSH | RabbitMQ | Mcollective | ZeroMQ |
发布方式 | PUSH | PULL | PULL | PUSH |
管理节点 | 无限制 | LINUX | LINUX | 无限制 |
是否需要代理 | 是 | 否 | 否 | 否 |
公有云版本 | AM | AM、AZ、PR | 否 | 否 |
公有云管理支持 | AM、AZ、OS、GCP | Fog Driver | AM、AZ、VM、GCP | Salt Cloud |
架构 | Server | C/S | C/S | C/S |
逐步部署支持 | 支持 | 支持 | 不支持 | 不支持 |
开源版UI | Semaphore | Chef Manager | Foreman | Slatpad、SlatShaker |
企业版UI | Ansible Tower | OpsCode Manager | Puppet Enterprise | SaltStack Enterprise |
企业版本 | 是 | 是 | 是 | 是 |
Ansible适用于中小型环境,SaltStack执行效率高,Puppet适合大型环境。