测量“vagrant up”所需的时间

3

有没有办法测量执行vagrant up到实际能够vagrant ssh进入虚拟机所花费的时间?我们使用一个共享的Ubuntu开发环境,启动需要很长时间,我正在考虑将apt-get install命令切换为apt-fast install,但除非有显着的改善,否则我不会这么倾向。


你想要测量你的配置脚本完成所需的时间吗?(我猜这就是你所说的apt-get),还是总时间? - Hagai
抱歉,我应该更明确一些。你说得对,我的意思是配置脚本。 - Philip O'Brien
4个回答

4

vagrant up之前加上time

$ time vagrant up

就在脚本即将完成时,您将看到以下输出:

real    0m17.844s
user    0m2.251s
sys 0m0.643s

如果您想排除导入盒子、设置网络接口、端口转发、共享文件夹挂载等时间,那么只需测量所需的供应时间:

  1. 启动虚拟机(不进行供应)

    $ time vagrant up --no-provision

  2. 测量供应时间

    $ time vagrant provision


1
我使用以下代码来测量我的脚本时间,应该可以在你的配置脚本中使用。
START=$SECONDS
...
TOTAL=$(($SECONDS - $START))

1
我们使用chef来获得时间输出。我们最有效的时间节省是使用大多数先决条件安装构建基础框,因此我们不是在下载和安装Apache本身,而只是调整配置。基础框架构建成为它自己的vagrant项目,因此也受到源代码控制和可重复性的影响。

0
BEGIN{
  START_TIME = Time.new
  puts "Start Time : #{START_TIME}"
}
END{
  END_TIME = Time.new
  interval = END_TIME - START_TIME
  puts "  Started at #{START_TIME} and ended at #{END_TIME}."
  puts "  Total time taken:  #{interval}."
  puts "  Completed successfully!"
}

这个对我有用。只需在Vagrant文件开头添加这个即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接