blog.yuzu441.com

multipass snapshotを試してみた

約1年半前にmultipass使ってたが定期的にインスタンスが壊れるので、壊れるたびに泣きながら作り直していた。バックエンドの開発をphpですることになったので久しぶりにmultipassで環境を作るか考えていたら、いつの間にか欲しかったsnapshot機能ができてたので使ってみた。

Release 1.13.0 · canonical/multipass

インスタンスを作る

雑にインスタンスを立てる

multipass launch --cpus 2 --disk 20G --memory 4G --name ubuntu

snapshotを取る

ドキュメントを見るに停止しているインスタンスに対して実行するものらしいのでstopで止めてsnapshotコマンド実行する

multipass snapshot command | Multipass documentation

multipass stop ubuntu

multipass snapshot ubuntu

snapshotの名前はubuntu.snapshot1らしい

ちなみにsnapshotの一覧はlistコマンドで見れた

multipass list --snapshots

インスタンスを変更する

snapshotから復元できたことを確認するために作成したインスタンスを変更する。試しにfishを入れておく

multipass shell ubuntu

sudo apt update
sudo apt install fish

これでインスタンスからrestoreしてfishがなければrestore成功

snapshotからの復元

multipass stop ubuntu
multipass restore ubuntu.snapshot1
# 現在の状態が別のsnapshotとして保存された

multipass shell ubuntu

fish --version
#Command 'fish' not found, but can be installed with:
#sudo apt install fish

できてそう

ちなみに

インスタンスをdeleteしてpurgeするとsnapshotも一緒に破棄された

multipass delete ubuntu
multipass purge

aws ec2のAMIみたいな感じで使えないかな〜と思ってたのでそこだけちょっと残念