我一直在开发一个最近刚刚发布的 Web 应用程序。现在,我正在继续改进,并想创建一个类似于生产服务器的临时服务器。
我知道 Ansible、Puppet 和 Chef 等工具的存在,但浏览文档后发现它们对于我的简单用例来说有点大材小用。当然,还有一种解决方案,那就是将应用程序完全 docker 化,这将是件好事。
但是除了对应用程序进行 Docker 化之外,您还建议如何简单地重新创建生产服务器?
它所要做的就是:
- 安装一些依赖项:PHP、MySQL、Nginx、Java、Elasticsearch
- 添加数据库、数据库用户
- 添加用户
- 配置 SSH 密钥
- 将 SSH 改为仅通过密钥文件授权
- 添加一些防火墙规则
答案1
实际上,puppet 可以非常轻松地为小型环境实现本地配置,并且是实现此类环境的最佳工具之一。
此页面包含有关非常快速且简单的设置的信息。
http://projects.puppetlabs.com/projects/1/wiki/simplest_puppet_install_pattern
答案2
免责声明——此处有许多意见。
好了,我的第一个问题是:“这个应用程序会变得多大?”如果答案是超过 10 台服务器,我建议咬紧牙关,选择 Puppet/Chef/Ansible 路线。如果少于 10 台服务器,只需手动复制,查看软件包清单,并在构建第二台服务器时做笔记。