流浪"Waiting for VM to boot. This can take a few minutes"很慢



我正在研究Chef食谱,并且经常需要通过破坏VM并将其恢复来使用干净盒测试完整的运行过程。然而,这意味着我在Vagrant/VirtualBox中得到这个消息:

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

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

我知道这是一个"意见"问题,欢迎一些建议,使它更容易接受,除了把它分成一堆小问题,如"切换到SSD会使我的VirtualBox启动更快吗?"减少转发端口的数量会使我的VirtualBox启动更快吗?"等等。

我会选择使用LXC容器而不是VirtualBox。这样你的反馈周期会更快。

这是对vagrant-lxc提供程序的一个很好的介绍。

你可以用LXC容器为Vagrant/Chef开发设置一个VirtualBox VM(比如这个dev-box)。然后使用这个示例食谱,通过rake test运行ChefSpec单元测试,或者通过rake integration运行kitchen-ci集成测试。您将看到使用LXC比使用VirtualBox(或任何其他完全虚拟化管理程序)快得多。

除此之外:

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

作为另一种选择,你也可以使用chef-runner,它显式地尝试解决快速反馈问题

最新更新