LXC(Linux containers)配置文件简介
来源:广州中睿信息技术有限公司官网
发布时间:2012/10/21 23:25:16 编辑:itlead 阅读 1359
LXC配置文件的manpage:http://manpages.ubuntu.com/manpages/natty/man5/lxc.conf.5.htmlLXC配置项都是以key=value的形式


  LXC配置文件的man page :http://manpages.ubuntu.com/manpages/natty/man5/lxc.conf.5.html

  LXC配置项都是以key=value的形式,#开始的一行代码注释。配置也可以在lxc-execute或者lxc-start的命令行以-s key=value设定

  这里介绍一下常用的配置:

  1.Cgroup部分(所有Cgroup子系统的配置参数均可以通过lxc-cgroup 命令进行动态获得或者调整)

  LXC采用Cgroup来对容器进行资源管理,因此Cgroup的各个子系统均可以使用。实际上使用LXC之前,必须执行mount none -t cgroup /cgroup 挂载cgroup,或者采用echo "none /cgroup cgroup defaults 0 0" >> /etc/fstab让系统每次启动自动挂载Cgroup。这样以来Cgroup的所有子系统自动挂载到了一个hierarchy,LXC在创建容器的时候就在/ group下创建一个子group以实现对容器的资源控制,我们就可以根据需要设定相应子系统的参数来达到目的。

  Cgroup部分的配置都是以lxc.cgroup.[subsystem name].key=value的形式出现的.例如:lxc.cgroup.cpu.shares=512 lxc.cgroup.cpuset.cpus=1.2



  2.network部分

  network部分的配置均以lxc.network开头.

  lxc.network.type指定用于容器的网络类型:

  empty:新的网络空间会为容器建立,但是没有任何网络接口

  veth:新的网络空间会为容器建立,容器将链接到lxc.network.link定义的网桥上,从而与外部通信。网桥必须在预先建立。

  macvlan:新的网络空间会为容器建立,一个macvlan的接口会链接到lxc.network.link上。

  phys:新的网络空间会被建立,然后lxc.network.link指定的物理接口会被分配给容器

  lxc.network.flags用于指定网络的状态

  up:网络处于可用状态

  lxc.network.link用于指定用于和容器接口通信的真实接口,比如一个网桥br0

  lxc.network.name用于指定容器的网络接口的名字,与宿主接口不在一个命名空间。如果不指定,lxc为自动分配一个

  lxc.network.hwaddr用于指定容器的网络接口的mac地址

  lxc.network.ipv4用于指定容器的网络接口的ipv4地址,如果不设置或者设为0.0.0.0则表示,容器将通过dhcp的方式获得ip地址

  lxc.network.ipv6用于指定容器的网络接口的ipv6地址

 

  3.rootfs部分

  lxc.rootfs用于指定容器的虚拟根目录,设定此项以后,容器内所有进程将会把此目录根目录,不能访问此目录之外的路径,相当于chroot的效果。


  PS:用这几个部分已经可以配一个比较完整的应用容器了,提供了cpu memory IO资源控制,提供单独的网络、根目录空间,再结合Loop文件或者LVM做一下硬盘限制就更好了。

 

 

 

联系我们CONTACT 扫一扫
愿景:成为最专业的软件研发服务领航者
中睿信息技术有限公司 广州•深圳 Tel:020-38931912 务实 Pragmatic
广州:广州市天河区翰景路1号金星大厦18层中睿信息 Fax:020-38931912 专业 Professional
深圳:深圳市福田区车公庙有色金属大厦509~510 Tel:0755-25855012 诚信 Integrity
所有权声明:PMI, PMP, Project Management Professional, PMI-ACP, PMI-PBA和PMBOK是项目管理协会(Project Management Institute, Inc.)的注册标志。
版权所有:广州中睿信息技术有限公司 粤ICP备13082838号-2