Ubuntu 14.04でlxd 0.3を試した時のメモ
追記(2015/03/17):lxc-console
的なものはまだなさそう、と書きましたが、lxc exec
すればよかっただけでした。すみません。試してみた結果はこちらです:Ubuntu 14.04でlxd 0.3を試した時のメモ その2:lxc exec, lxc config - Technically, technophobic.
lxcは-n
オプションをいちいちつけないといけないのがめんどくさすぎる!と俺の中で有名ですが、lxdにはちょっと希望が見えます。
lxdは、REST APIでコンテナを管理するためのデーモンです。で、ローカルにlxdを立てればこれのクライアントコマンドlxc
が利用できて、これまで
lxc-start -n foo lxc-info -n foo
とかやってたのが、
lxc start foo
lxc info foo
とかできます。まあ、だから何?って感じもしますけど。。
とりあえずやったとこをメモ。
インストール
ドキュメント通りレポジトリを追加してインストールするだけです。
sudo add-apt-repository ppa:ubuntu-lxc/lxd-daily && sudo apt-get update
sudo apt-get install lxd
lxdにイメージを読み込む
このへん:First steps
ドキュメントにはscripts/lxd-images
と書いてますが、apt-get
でインストールしたらscripts/
にはパスが通るみたいなので、lxd-images
だけで大丈夫です。
sudo lxd-images import lxc ubuntu trusty amd64 --alias ubuntu \ --alias ubuntu/trusty --alias ubuntu/trusty/amd64
確認。ubuntu
がリストに表示されるはずです。
$ sudo lxc image list +--------+----------+--------+-------------+ | ALIAS | HASH | PUBLIC | DESCRIPTION | +--------+----------+--------+-------------+ | ubuntu | 8d39d97e | no | | +--------+----------+--------+-------------+
コンテナを立ち上げてみる
launchで新しくコンテナがつくられます。
lxc launch ubuntu foo
確認。こんな感じのが出るはずです。
$ sudo lxc list
+-------------------+---------+-----------------------+------+
| NAME | STATE | IPV4 | IPV6 |
+-------------------+---------+-----------------------+------+
| foo | RUNNING | 10.0.3.245, 127.0.0.1 | ::1 |
+-------------------+---------+-----------------------+------+
コンテナにログインしようとしてみる
さて、ここからが問題です。lxc
のサブコマンドにはまだlxc-console
に相当するものはありません。
とりあえずssh
してみると…
$ ssh 10.0.3.245
ssh: connect to host 10.0.3.245 port 22: Connection refused
やっぱだめですよね。。
仕方ないので、lxc-console
してみます。lxd
は通常のlxc-*
が使っているのと別の場所にコンテナを作っているので-P
で指定してやる必要があります。
$ sudo lxc-console -P /var/lib/lxd/lxc -n foo
で、ログイン画面が出ます。lxc-create
で作った場合はログイン名・パスワードともに「ubuntu」なのでそれを試してみると…
Login incorrect
むうう。そもそも、ログインできるところまでコンテナを作りこむ力がlxdにはまだないっぽいです。
また半年後くらいに試そうかな、という感じですね。