哪种服务器配置管理工具可用于我的个人 nextcloud 部署

哪种服务器配置管理工具可用于我的个人 nextcloud 部署

我想部署个人 nextcloud 应用程序。

我已经使用 docker-compose 设置了 nextcloud,我应该使用哪个工具进行服务器配置管理?

我有以下事情需要处理。

  • SSH 设置
  • 内核强化
  • 网络强化
  • Docker 安装
  • Git
  • Nginx 安装
  • SSL 设置(允许加密)
  • 下一个云docker compose
  • 迁移至下一个云

我研究过 Chef 和 Puppet,但它们似乎适用于更大的系统,我当前的应用程序是私有的且有限的。

是否可以使用 Google bazel 或任何类似产品来实现这些?

答案1

这是一个相当特定的观点问题,因此,根据我从事配置管理 5 年以上的工作经验,我将给出我的观点。

目前最流行的 3 种配置管理工具是木偶厨师Ansible

它们都有明显的优势和劣势:

  • Ansible完全由 SSH 驱动,所以我认为最容易上手和运行。在最基本的模式下,服务器本身无需安装任何附加软件,只需具有运行 SSH 的能力即可。
  • 木偶拥有最丰富的现成模块,可用于常见服务器设置。我使用自定义模块来强化我几年前在 Puppet 中编写的所有服务器的 SSH 设置,它仍然运行良好。
  • 厨师我认为可能是最“灵活”的:如果您需要做一些特定的事情,您可以直接为其编写 ruby​​ 代码,而不必使用单独的 DSL。

就我个人而言,我认为 Puppet 是三者中最好的(坦白说,我在 Puppet 工作了 3 年,所以我可能有偏见!)但这些年来我都用过它们,有时甚至同时用过所有!

这三者主要设计用于更大规模的基础设施,但都具有适用于个人服务器等较小部署的模式:Chef-Solo、Puppet-apply 和 Ansible-playbook。

最终,由您自行选择哪一个,或者根本不进行配置管理。

相关内容