利用LXC在SUSE企业级Linux中创建虚拟容器

日期: 2012-09-18 作者:Sander van Vugt翻译:王学强 来源:TechTarget中国 英文

如果你所有的虚拟机都使用相同的操作系统(OS),那么基于容器的虚拟化将会比传统的管理程序更加高效。SUSE 企业版Linux容器允许在主机内核的最顶层运行虚拟容器,这样可以节约资源并缩减IT部门开支。   Linux容器(LXC)技术是更改root目录(chroot)和内核控制组(cgroups)技术的结合。Chroot技术保证你的LXC主机能够拥有单独的环境来运行虚拟机或者容器。

Cgroups技术确保所有的容器能够分配到足够的资源和获取这些资源的访问权限。   如果你需要安装和配置LXC主机及虚拟容器,最好在SUSE Linux环境中进行资源管理。   准备LXC SUSE主机   在开始使……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

如果你所有的虚拟机都使用相同的操作系统(OS),那么基于容器的虚拟化将会比传统的管理程序更加高效。SUSE 企业版Linux容器允许在主机内核的最顶层运行虚拟容器,这样可以节约资源并缩减IT部门开支。

  Linux容器(LXC)技术是更改root目录(chroot)和内核控制组(cgroups)技术的结合。Chroot技术保证你的LXC主机能够拥有单独的环境来运行虚拟机或者容器。Cgroups技术确保所有的容器能够分配到足够的资源和获取这些资源的访问权限。

  如果你需要安装和配置LXC主机及虚拟容器,最好在SUSE Linux环境中进行资源管理。

  准备LXC SUSE主机

  在开始使用LXC SUSE主机之前,你需要首先执行如下命令来安装一些必要的工具:

  zypper install -y lxc bridge-utils yast-lxc

  为了让虚拟容器能够连接到网络,需要建立一个网桥,使你可以通过一块以太网卡赋予多个容器访问权限。启动安装和配置工具,YaST(另一个安装工具),选择网络设备,然后点击网络设定,你将能够看到当前所有网络接口的概览。

  之后,选择你将要使用的以太网卡,点击“Delete”来移除当前配置,点击“Add”来增加一个新设备,设备类型中选择“Bridge”,点击“Next”创建网桥接口。

  在配置之前,你需要指定连接到网桥的物理设备,比如eth0 接口。还必须设定获取IP的方式,同时支持DHCP协议和静态配置IP,但是在这之前,确保已经防火墙已经被关闭。

  最后,确保cgroup服务能够开机自启动。执行如下的命令,开启该服务并使其开机自启动。

  /etc/init.d/boot.cgroup start

    insserv boot.cgroup

  在SUSE Linux企业版中安装虚拟容器

  在配置完主机之后,就可以开始安装虚拟容器了。SUSE正在开发一种模块以使用图形化YaST配置工具来管理LXC。但是在这个模块完成之前,你必须手动配置LXC。

  创建一个配置文件,参考下面的配置进行编辑:

  
  lxc.utsname = vsuse0

  lxc.network.type = veth

  lxc.network.flags = up

  lxc.network.link = br0

  lxc.network.hwaddr = 00:30:6E:A1:B2:C3

  lxc.network.ipv4 = 192.168.1.166

  lxc.network.name = eth0

   将配置文件存储为lxc_vsuse0.conf。注意文件名中的“vsuse0”要和参数中的“lxc.utsname ”相对应。

  之后,使用如下命令创建容器。

  lxc-create -t openSUSE -f lxc_vsuse0.conf -n vsuse0

  在命令中,容器名称“vsuse0”必须和配置文件中的参数thelxc.utsname 相匹配。
 
  安装了虚拟容器之后,你可以使用如下的命令来更改其文件系统中的root文件夹位置。

  chroot /var/lib/lxc/vsuse0/rootfs/

  之后,在容器中使用“passwd root”命令来重设root账户密码,并创建一个没有root权限的新用户完成日常的操作任务。使用“exit”命令退出chroot环境,现在就可以准备启动虚拟机了。

  使用“lxc-start ”命令来启动LXC虚拟机。比如,“lxc-start  lxc_vsuse0”将会启动之前示例中创建的虚拟机。之后可以使用“lxc-console -n vsuse0”命令来建立一个虚拟机控制台会话,配置虚拟机完成预期的功能。如果要关闭容器,使用命令“lxc-stop -n vsuse0”,之后执行“lxc-destroy -n vsuse0”。

翻译

王学强
王学强

TechTarget特邀编辑,毕业于计算机专业,现任职于外企IT分析师,负责网络、防火墙和服务器等系统运维工作,对虚拟化、网络安全和渗透测试拥有浓厚兴趣,工作外热爱旅行、汽车和健身。

相关推荐