简单的 Windows+Linux 服务器配置?Chef/Puppet/Ansible 等

And*_*rew 8 puppet chef

我主要是一名开发人员,兼职 DevOps;并为我的项目管理这里和那里的服务器。

  • 我想为我的项目自动配置 web/app/数据库服务器
  • 我同时管理 Windows 和 Linux 服务器(VPS、云和专用)

我简要地研究了 Chef/Puppet/Ansible;我想找到一些东西:

  • 易于学习和理解。我不想花费数周时间来理解一项复杂的技术。
  • 理想情况下不需要服务器(“主服务器”)来保存配置
  • 支持配置 Windows 和 Linux 服务器
  • 随附合适的文档以开始使用

有没有人对最适合的工具有什么建议?

谢谢

giu*_*nob 5

我和你有几乎完全相同的要求,我对这个主题做了很多研究。您绝对可以使用 Puppet/Chef,但学习曲线很高。此外,我见过的 Puppet/Chef 的食谱很少实际上完全支持 Windows,所以期望必须为 Windows 编写自己的食谱,否则这些食谱将可用于 Linux。

对于 Linux 管理,Ansible 将满足您的所有需求。它非常易于使用、安装,并且不需要中央服务器。通过使用 OpenSSH 安装 Cygwin,我在 Windows 上使用 Ansible 取得了成功。您可以使用一些简单的批处理/PS 脚本自动执行 Cygwin 安装和配置,以便引导您的服务器。然后,只要它从 Cygwin 安装运行 Python,您就可以将 Ansible 与它一起使用。Ansible 并不真正支持 Windows,当然可能存在错误,但我已经能够成功使用它。如果您是开发人员,即使遇到任何问题,也可以很容易地理解 Ansible 的源代码。当涉及到错误时,开发人员也非常敏感。我提交了一个与路径相关的错误,并在一天内修复。

编辑:看起来 SaltStack 现在支持 Windows。它似乎适用于类似于 Ansible 的 YAML 文件。对于 Windows,现在绝对值得一试。


Adi*_*ari 1

我已经使用了 Puppet 和 Chef(抱歉,没有 ansible)。我可以自信地告诉您,Puppet 将满足您上面列出的要求。

  • 这很容易学习。您可以在一两天内掌握基础知识。从puppet 的文档开始
  • Puppet 可以在主服务器/服务器中运行,也可以独立运行。随你挑选。
  • 根据文档,Puppet 可以处理 Linux 和 Windows。我个人还没有在windows上尝试过。
  • puppet 的文档真的很棒。James Turnbull 的《Pulling Strings with Puppet》等书籍也可以帮助您从基础知识到负载平衡等高级内容来理解 Puppet。

我使用 puppet 来处理物理服务器以及云部署 (AWS),它非常简单且可靠。