2

我正在研究 Chef 食谱,并且经常需要通过销毁 VM 并将其恢复来使用干净的盒子来测试完整的运行。但是,这意味着我在 Vagrant/VirtualBox 中收到此消息:

Waiting for VM to boot. This can take a few minutes.

常常。我可以采取哪些步骤来加快启动速度?

我知道这是一个“意见”问题,并欢迎提出一些建议以使其更容易接受,除了将其分解为一堆小问题,例如“切换到 SSD 会使我的 VirtualBox 启动更快吗?会减少转发端口的数量让我的 VirtualBox 启动更快”等。

4

1 回答 1

0

我会选择使用 LXC 容器而不是 VirtualBox。这为您提供更快的反馈周期。

这是对vagrant-lxc 提供者的一个很好的介绍

您可以使用 LXC 容器(例如,像这个 dev-box)为 Vagrant / Chef 开发设置一个 VirtualBox VM 。然后获取此示例食谱并通过运行ChefSpec单元测试rake test通过rake integration. 您会发现 LXC 比使用 VirtualBox(或任何其他完全虚拟化管理程序)要快得多。

除此之外:

  • 是的,SSD 有很大帮助 :-)
  • 使用vagrant-cachier通过缓存加速其他事物的负载
  • 使用最新的 Vagrant 版本,它使用 Ruby 2.0+(比 1.9.3 快得多)
  • 不要总是运行完整的集成测试,有些东西已经可以通过单元测试/chefspec 捕获
  • 使用 SSH 连接共享和持久连接
  • ETC...

作为另一种选择,您也可以使用chef-runner,它明确尝试解决快速反馈问题

于 2015-03-25T00:26:25.513 回答