关于 Puppet, Chef, CFEngine, Ansible, Salt 的对比

视频:
https://www.youtube.com/watch?v=T56uN6N_hs0&feature=youtu.be

系统管理的方法:


  • 一台机器的管理

    • 物理访问,串行接口
  • 远程单机管理

    • ssh, telnet, powershell
  • 中心软件包机器管理

    • rpm, deb, ...
  • 远程命令执行机器管理

    • mussh, clusterssh, pssh, dsh
  • 配置管理

    • Puppet, Chef, CFEngine, Bcfg2
  • 配置管理 & 命令执行管理

    • Ansible, Salt, STAF

1,配置管理工具


  • CFEngine

    • C based
    • Server(Daemon on master) <-> Client
    • Framework(需要设置环境,不能立即使用,需要做一些额外的准备)
    • uses Cookbooks
      • own syntax based on c syntax
    • works on Linux, Unix, Windows
  • Bcfg2

    • Python based
    • Server <-> Client
    • uses config managment system
      • XML
    • works on Linux, Unix
  • Spacewalk

    • 用于 RedHat,Debian;使用外部工具如 Kickstart, Cobbler, Func, rpm, deb, files
  • Juju

    • 用于 Ubuntu,Debian
  • Puppet

    • Ruby based
    • Server <-> Client
    • High abstraction level 高层次抽象
    • uses Manifests
      • Puppet declarative language
      • Ruby DSL
    • works on Linux, Unix, Windows
  • Chef

    • Ruby based
    • Server <-> Client
    • High abstraction level 高层次抽象
    • uses Cookbooks
      • Puppet declarative language
      • Ruby DSL
    • works on Linux, Unix, Windows

2,配置管理系统 & 命令执行管理系统


  • STAF:Software Testing Automation Framwork

    • C++ / Javabased
    • Framework
  • Salt Stack

    • Python based
    • Server <-> Client
    • uses SSH, ZeroMQ
    • uses Configs
      • YAML, JSON, Jinjia, Mako, Wempy, Python
  • Ansible

    • Python based
    • Server based
    • uses SSH, ZeroMQ, git
    • uses Playbook
      • YAML
      • JSON
    • works where Python works

你可能感兴趣的:(关于 Puppet, Chef, CFEngine, Ansible, Salt 的对比)