快速业务通道

LXC:Linux 容器工具

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-12

如果您习惯于构建源 RPM,可以从网上下载一个(见 参考资料).

工具:iproute2

为了在容器中管理网络接口,需要 2.6.26 或更高版本的 iproute2 包(见 参考资料).如果您的 Linux 发行版没有这个包,请下载并按照说明配置和安装它.

配置网络

很多实用的容器的另一个关键部分是网络访问.目前,桥接(连接多个以太网区段,使它们成为一个单独的以太网区段)是将一个容器连接到网络的最佳方法.为了准备使用 LXC,我们将创建一个桥(见 参考资料),并使用它将我们真正的网络接口与容器的网络接口连接起来.

创建一个名为 br0 的桥:

brctl addbr br0

brctl setfd br0 0

用一个已有网络接口中的 IP(在本例中是 10.0.2.15)连接桥接口:ifconfig br0 10.0.2.15 promisc up.将已有的网络接口(在本例中是 eth0)添加到桥,并取消它与它的 IP 地址的直接关联:

brctl addif br0 eth0
ifconfig eth0 0.0.0.0 up

任何添加到桥 br0 的接口都将对那个 IP 地址作出响应.,确保默认的路由用 route add -net default gw 10.0.2.2 br0 将数据包发送到网关.以后,在配置容器时,指定 br0 作为通往外界的链接.

填充容器文件系统

除了网络外,容器常常需要它们自己的文件系统.取决于您的需要,有几种填充容器文件系统的方法.我将讨论其中两种:

构建一个定制的 Debian 容器
运行一个 ssh 容器
使用 debootstrap 命令构建一个定制的 Debian 容器 非常简单:

debootstrap sid rootfs http://debian.osuosl.org/debian/

如果要构建大量的容器,将包下载到一个 tarball 中可以节省时间,例如 debootstrap --make-tarball sid.packages.tgz sid http://debian.osuosl.org/debian/.这将产生一个 .tar 文件,这个文件约 71MB(压缩了 52MB),而一个根目录约 200MB.然后开始在 rootfs 中构建根目录:debootstrap --unpack-tarball sid.packages.tgz sid rootfs.(debootstrap 主页上有更多关于构建更小的或更适合的容器的信息).

这将生成一个宿主容器高度冗余的环境(见 参考资料).

运行 ssh 容器 可以大大减少容器文件系统占用的磁盘空间.例如,这种方法仅仅使用数 KB 就能在不同容器的 22 端口上运行多个 ssh 守护进程(参考资料 中提供了一个例子).容器通过使用关键根目录来实现这一点,例如 /bin、/sbin 和 /lib 等的只读绑定挂载共享来自已有 Linux 系统的 sshd 包内容.这里使用一个网络名称空间,并创建基本的读写内容.

用于生成那些轻量级容器的方法与用于生成 chroot 环境的方法基本一样.不同之处在于只读绑定挂载和使用名称空间增强 chroot 环境的隔离性,使之成为有效的容器.

接下来,需要选择一种连接到容器的方法.

连接到容器

接下来的步骤是连接到容器.根据配置容器的不同方式,有几种方法可供选择:

SSH
VNC(GUI)
VT: tty(文本)
VT: X(GUI)
如果不需要用于容器的 GUI 接口,那么 通过 SSH 连接 就可以了.在此情况下,一个简单的 ssh 连接就足够了(参见上面的 “运行一个 ssh 容器”).这种方法的优点是依靠 IP 寻址来支持创建任意数量的容器.

如果 ssh 连接花很长的时间才到达密码提示,那么在 DNS 查找期间 Avahi multicast DNS/Service Discovery 守护进程就可能超时.

通过 Virtual Network Computing(VNC)连接,这种方法可以为容器增加一个 GUI 接口.

使用 vnc4server 启动一个 X 服务器,该服务器只为 VNC 客户机服务.需要安装 vnc4server,以便从容器的 /etc/rc.local 文件运行它,如下所示:echo ''/usr/bin/vnc4server :0 -geometry 1024x768 -depth 24'' >> rootfs/

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号