因此,我们使用 Rackspace 来托管 90% 的客户。我通常会构建各种服务器,在 Linux 方面,我们使用 Ubuntu 14.04 LTS 作为主要发行版。我有一份记录详尽的说明,详细说明了设置和配置服务器所需的所有步骤,以便我们的开发人员可以部署到服务器上并开始运行。
除了手动逐行进行构建后的所有配置之外,还有更好的方法吗?Vagrant 或 Chef 可以用于这样的事情吗?我还没有充分使用 Vagrant 或 Chef 来看看它是否可以解决我的服务器构建问题。
以下是已完成操作的一个例子。
- 通过 Rackspace 控制面板构建服务器
- 服务器建成后我通过 SSH 进行更新、创建用户、创建组、安装 Apache、PHP、MySQL、配置时区、更新服务器软件、设置自定义警报等。
- 完成第 2 步后,我会测试并将凭证交给开发人员以部署他们的应用程序。
因此寻找一种方法来帮助我轻松实现构建自动化(无需构建主映像并重复使用它。)
答案1
有许多工具可用于此目的,例如 Salt、Ansibel、Chef 和 Puppet。我们目前使用 salt 来自动化我们所有的服务器构建。我们评估了其他工具,并出于各种原因决定使用 salt。我建议您尝试 salt、ansible、puppet 或 chef,看看您最喜欢哪一个。
总的来说,它们都做同样的事情:)
回答您的问题,这些工具是专门为您的用例而设计的,切换到 salt 为我们节省了数百小时的手动工作。