はじめに
vagrant-lxc で一部のコンテナが動いていなかったが、それらのコンテナがとりあえず動いたのでメモしておく。ちなみに、振り返ると vagrant
と docker
がダブってきている...
試した環境
ホスト OS | LXC のバージョン | vagrant のバージョン | vagrant-lxc のバージョン |
---|---|---|---|
Ubuntu 13.10 | lxc 1.0.0.alpha2 | 1.3.3 | 0.6.3 |
動かなかったコンテナ(試したコンテナ)
- CentOS 6.4 amd64 for vagrant-lxc with Puppet 3.3.1
- Debian Squeeze amd64 (Puppet 3.2.3, LXC, 2013.07.27)
動かない状態
動かないというのは以下のようなエラーで vagrant up
が止まってしまっていた。 ちなみに vagrant
の provider
として lxc
を使う場合には vagrant up
に --provider=lxc
オプションをつけて起動する。
vagrant up --provider=lxc
パターン(1)
以下は CentOS 6.4 amd64 for vagrant-lxc with Puppet 3.3.1 で発生していたエラー。
[default] Starting container... INFO driver: Starting container... DEBUG driver: Prunning vagrant-lxc customizations DEBUG shell: Running 'sudo su root -c "sed -e '/^# VAGRANT-BEGIN/,/^# VAGRANT-END/ d' -ibak /var/lib/lxc/vagrant-lxc_default-1382829302/config"' DEBUG shell: Running 'sudo su root -c "echo '# VAGRANT-BEGIN' >> /var/lib/lxc/vagrant-lxc_default-1382829302/config"' DEBUG shell: Running 'sudo su root -c "echo 'lxc.utsname=vagrant-lxc_default-1382829302' >> /var/lib/lxc/vagrant-lxc_default-1382829302/config"' DEBUG shell: Running 'sudo su root -c "echo 'lxc.mount.entry=/home/kappa/vagrant/vagrant-lxc /var/lib/lxc/vagrant-lxc_default-1382829302/rootfs/vagrant none bind 0 0' >> /var/lib/lxc/vagrant-lxc_default-1382829302/config"' DEBUG shell: Running 'sudo su root -c "echo '# VAGRANT-END' >> /var/lib/lxc/vagrant-lxc_default-1382829302/config"' INFO subprocess: Starting process: ["/usr/bin/sudo", "lxc-start", "-d", "--name", "vagrant-lxc_default-1382829302"] DEBUG subprocess: Selecting on IO DEBUG subprocess: stderr: lxc-start: command get_cgroup failed to receive response DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 31995 DEBUG subprocess: Exit status: 255 ERROR warden: Error occurred: There was an error executing ["sudo", "lxc-start", "-d", "--name", "vagrant-lxc_default-1382829302"]
lxc-start
で command get_cgroup failed to receive response
というエラーを吐いてしまう...。
パターン(2)
Debian Squeeze amd64 (Puppet 3.2.3, LXC, 2013.07.27) で発生していたエラー。
DEBUG driver: Creating container... INFO subprocess: Starting process: ["/usr/bin/sudo", "lxc-create", "--template", "vagrant-tmp-vagrant-lxc4_default-1382968114", "--name", "vagrant-lxc4_default-1382968114", "-f", "/home/kappa/.vagrant.d/boxes/test4/lxc/lxc.conf", "--", "--tarball", "/home/kappa/.vagrant.d/boxes/test4/lxc/rootfs.tar.gz", "--auth-key", "/opt/vagrant/embedded/gems/gems/vagrant-1.3.3/keys/vagrant.pub"] DEBUG subprocess: Selecting on IO DEBUG subprocess: stderr: getopt: オプション '--rootfs=/usr/lib/x86_64-linux-gnu/lxc' を認識できません DEBUG subprocess: stderr: lxc_container: container creation template for vagrant-lxc4_default-1382968114 failed DEBUG subprocess: stderr: lxc_container: Error creating container vagrant-lxc4_default-1382968114 DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 32000 DEBUG subprocess: Exit status: 1
lxc-create
で --rootfs=/usr/lib/x86_64-linux-gnu/lxc
オプションが認識されていないっぽい...。
とりあえず動いた!
CentOS 6.4 amd64 for vagrant-lxc with Puppet 3.3.1 は今のところ動いていないが、Debian Squeeze amd64 (Puppet 3.2.3, LXC, 2013.07.27) に関しては こちらで紹介されていた box
ファイルに含まれていた lxc-template
を利用すると起動した!
lxc-template
起動の図
VAGRANT_LOG=info vagrant up --provider=lxc
で起動したログはこちらに。
vagrant ssh の図
$ vagrant ssh Linux squeeze 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Mon Oct 28 14:58:20 2013 from 10.0.3.1 vagrant@squeeze:~$
lxc-ls
念の為、lxc-ls
で確認してみる。
lxc-ls --fancy
以下のような結果となる。
NAME STATE IPV4 IPV6 AUTOSTART --------------------------------------------------------------------- vagrant-lxc2_default-1382828428 RUNNING 10.0.3.187 - NO vagrant-lxc3_default-1382964270 RUNNING 10.0.3.164 - NO vagrant-lxc4_default-1382968514 RUNNING 10.0.3.146 - NO vagrant-lxc_default-1382755452 STOPPED - - NO vagrant-lxc_default-1382829302 STOPPED - - NO
最後に
- とりあえず動いて良かった