ansible puppet saltstack三款自动化运维工具的对比

ansible基础介绍可参考:

puppet基础介绍可参考:

saltstack基础介绍可参考:

二、技术特性比较

名称
  Puppet
  SaltStack
  Ansible
 
开发语言   Ruby   Python   Python  
客户端        
二次开发   不支持   支持   支持  
通信验证        
同学加密   标准SSL协议   AES加密   OpenSSH  
平台支持   AIX,BSD,HP-UX,Linux,Mac OS X,Solaris,Windows   BSD,Linux,Mac OS X,Solaris,Windows   AIX,BSD,HP-UX,Linux,Mac OS X,Solaris  
配置文件格式   Ruby语法格式   YAML   YAML  
Web UI   提供   提供   提供(商业版本)  
命令执行   不支持(配置模块可实现)   支持   支持  

三、优缺点对比

名称
  优势
  劣势
  成本
 
Puppet  

模块由Ruby或Ruby子集编写

push命令可以即可触发变更

Web界面生成处理报表、资源清单、实时节点管理

代理运行端进行详细、深入的报告和对节点进行配置

 

相对其他工具较复杂,需学习Puppet的DSL或Ruby

安装过程缺少错误校验和产生错误报表

 

开源软件免费

SaltStack企业版每年内个节点花费约¥100

 
Saltstack  

状态文件可用简单YAML配置模块或复杂的Python/PyDSL脚本

与客户端可以基于SSH或在被管节点安装代理

Web界面可看到运行的工作、minion状态、事件日志、可在客户端执行命令

扩展能力极强

 

Web界面像毒药竞争产品不稳定与相对不完善

缺乏生成深度报告的能力

 

开源软件免费

SaltStack企业版每年内个节点花费约¥150,随着数量增加相应的会有折扣

 
Ansible  

模块可以用任何语言开发

备管节点不需要安装代理软件

有Web管理界面、可配置用户、组、资源清单和执行Playbook

安装、运行极其简单

 

对备管理节点为Windows有待加强

Web管理界面是内置的Ansible的一部分

需导入资源清单

执行效率较低

 

开源版本免费

Ansible Tower小于10台被管理节点免费

超过10太后没年每台需支付¥100~$250的支持服务费用

 

四、推荐场景

4.1 Puppet

  Puppet也许是四款工具中最深入人心的。就可用操作、模块和用户界面而言,它是最全面的。Puppet呈现了数据中心协调的全貌,几乎涵盖每一个运行系统,为各大操作系统提供了深入的工具。初始设置比较简单,只需要在需要加以管理的每个系统上安装主服务器和客户端代理软件。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/d1315c3735d3a6b1db574d8cfff78c98.html