LoginSignup
0
0

More than 5 years have passed since last update.

LXCは,Linuxのためのコンテナ仮想化ツールである.lxc-snapshotは,LXCコンテナのスナップショットを管理するためのツールである.本記事では,lxc-snapshotの使い方について概説する.

スナップショットを作成する

lxc-snapshotでは,コンテナファイルシステムのスナップショットを作成することができる.ここでは,btrfsをバックエンドとしたときのスナップショットの作成について説明する.btrfsは,ファイルシステムレベルでのスナップショット作成に対応している.lxc-snapshotはbtrfsに対応しているので,この2者を組み合わせて使うと,高速かつ小容量でスナップショットを実現することができる.

仮に,c1というコンテナが存在するとする.c1コンテナのスナップショットは,次のコマンドにより作成することができる.スナップショット名は,指定が無い場合はsnap0というような形式になる.

# lxc-snapshot -n c1

スナップショット名を指定したい場合は,lxc-snapshot -n c1 newsnapというように指定する.実際にスナップショットが作成されているかどうかは,次のコマンドにより確認することができる.

# lxc-snapshot -n c1 -L
snap0 (/var/lib/libvirt/lxcsnaps/c1) 2014:12:28 19:10:26

これは,/var/lib/libvirt/lxcsnaps/c1/snap0に,c1のルートファイルシステムのスナップショットsnap0が存在するという意味である.スナップショットは,btrfsのサブボリュームとして作成される.作成されたスナップショットの概要を次に示す.

# ls /var/lib/libvirt/lxcsnaps/c1/snap0
config  fstab  rootfs  ts
# ls /var/lib/libvirt/lxcsnaps/c1/snap0/rootfs
bin   dev  home  lib64  mnt  proc  run   selinux  sys  usr
boot  etc  lib   media  opt  root  sbin  srv      tmp  var
# btrfs subvolume list /
...
ID 423 gen 651825 top level 258 path var/lib/libvirt/lxcsnaps/c1/snap0/rootfs
...

スナップショットから復元する

lxc-snapshotは,作成したスナップショットから,コンテナを過去の状態に復元することができる.前セクションで作成したスナップショットを復元することを考える.コンテナc1は,あらかじめ停止しておく.このとき,次のようなコマンドにより,コンテナc1をスナップショットsnap0の状態に戻すことができる.

# sudo lxc-snapshot -n chef-0.umireon.info -r snap0

まとめ

lxc-snapshotは,LXCコンテナのスナップショットの作成および復元を行うことができる.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0