'vagrant up' 的测量时间

Measuring time taken for 'vagrant up'

有什么方法可以衡量从执行 vagrant up 到真正能够 vagrant ssh 进入机器所花费的时间吗?我们使用共享的 ubuntu 开发环境,需要很长时间才能启动,我正在考虑将 apt-get install 命令切换为 apt-fast install,但除非有重大改进,否则我不会这样做倾斜。

我正在使用以下内容来测量我的脚本的时间,应该可以在您的配置脚本中使用

START=$SECONDS
...
TOTAL=$(($SECONDS - $START))

在您的 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

我们使用 chef,这给了我们时间输出。我们最有效的节省时间的方法是构建安装了大部分先决条件的基础盒,因此我们不会下载和安装 apache 本身,而只是调整配置。 base box 构建成为它自己的 vagrant 项目,因此它也是源代码控制和可重复的。

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 文件的开头即可。