【Vagrant】vagrant halt とvagrant suspend

vagrant suspendを使って無かったので。

vagrant halt とvagrant suspendの違い

haltが完全に停止することで、suspendが一時的に停止すること。

Suspend、Resume

vagrant suspendについてまとめると以下の通り。

  • 一時停止させる
  • 停止時点の状態を保存
  • ホストマシン分のRAM、CPUサイクルを消費しない

suspends the guest machine Vagrant is managing,…
effectively saves the exact point-in-time state of the machine,…
the machine no longer consumes the RAM of your host machine or CPU cycles 

vagrant suspend

vagrant upにより、VM起動。起動後ゲストマシン(VM、仮想マシン)でメモリを消費する。

$ vagrant suspend
==> default: Saving VM state and suspending execution...

しかし、vagrant suspendで停止時点の状態を保存しつつ、停止の間その分のメモリは消費しない。タスクマネージャーを見ても分かる。完全停止ではないので、停止前の状態から開始できるが、起動時間は大差ない。suspendからの復帰はresumeでなく、upでも使える。
resumeでは、provisionオプションを付けることができ、復帰と同時にソフトウェアを自動的にインストールすることもできる。

$ vagrant resume
==> default: Resuming suspended VM...
$ vagrant resume --provision
==> default: Resuming suspended VM...

状況によるが、文字通り完全に停止させたい場合にはhaltを使用し、停止前の状態を保存しながら別作業を行ったり、設定を変更するなどの場合は、suspendの方が都合が良い。

以上

参照

Vagrant Documentation
RAM、ROMの違い