LXC(Linux Containers)安装及使用
下面的步骤均在Ubuntu 12.04上执行。
安装
想在Ubuntu上使用LXC,就要安装LXC用户空间工具,如下所示。
$ sudo apt-get install lxc
安装完毕之后,运行lxc-checkconifg工具,检查当前Linux内核支持LXC的情况。要是一切都已被启用,内核对LXC的支持已准备就绪。
$ lxc-checkconfig
安装LXC工具后,你会发现,LXC的默认网桥接口(lxcbr0)已自动创建(已在/etc/lxc/default.conf中加以配置)。
创建LXC容器后,窗口的接口就会自动连接到该网桥,那样容器就能与外界进行联系了。
使用方法
创建LXC
以创建一个名为precise的Ubuntu 12.04容器为例。
需要创建一个基础的配置文件。由于创建LXC完成后,不再需要该配置文件(可以删除),故该文件的名字和路径没有特殊要求。这里命名为precise.conf,放在当前路径下:
lxc.network.type = veth
lxc.network.flags = up
lxc.network.name = eth0
lxc.network.link = lxcbr0
lxcbr0为由LXC包创建的虚拟网桥,通过ifconfig可以知道其IP地址10.0.3.1,网段10.0.3.1/24,容器将通过lxcbr0与外界通信。
如此,可以开始创建容器了:
$ sudo lxc-create -n precise -f precise.conf -t ubuntu -- -r precise
- -n指定容器名,这里为precise。
- -f指定基础配置文件,即上一步骤创建的precise.conf。
- -t指定模板名,这里必须为ubuntu(创建Ubuntu 12.04)。每个模板名,对应一个脚本,它们存放在/usr/lib/lxc/templates目录(文件名形如lxc-<模板名>)中。
- —以后的参数被传递给模板脚本;
- -r为ubuntu模板脚本的参数,表示Ubuntu发行版代号,这里必须为precise(它是12.04的发行代号)。
创建过程可能会比较漫长。通过阅读/usr/lib/lxc/templates/lxc-ubuntu,不难发现创建ubuntu容器主要依靠deboostrap来完成。
启动LXC
若需立即启动LXC,则:
$ sudo lxc-start -n precise [command]
若需以daemon方式运行,则:
$ sudo lxc-start -n precise –d [command]
若需随host os启动而自动启动,则:
$ sudo ln -s /var/lib/lxc/precise/config /etc/lxc/auto/precise.conf
打开LXC控制台
在没有给容器设置IP时,打开其控制台
$ sudo lxc-console -n precise
将看到文本登录界面。 通过按热键ctrl-a和q,可以退出容器控制台。
更多的时候,通过ssh登录将更方便,特别是key认证方式登录。
停止LXC
多数情况下,可以通过在guest os(容器)内执行poweroff或shutdown -h now来关闭容器。但有些时候却需要在host os上强行关闭容器,如:
$ sudo lxc-stop -n precise
删除LXC
容器创建后,配置和数据存放在/var/lib/lxc/precise目录中。执行
$ sudo lxc-destroy -n precise
与手动删除该目录效果一样。
更多推荐
所有评论(0)