LXC容器和桥接连接

我需要逐步配置在Ubuntu中制作LXC容器

  1. 正确配置Lxc容器的方法
  2. 配置cgroup的正确方法
  3. 在主机和容器中配置网络的正确方法

    注意

  4. 我已经配置了容器的超过30到35次,我有cgroup的问题(安装在fstab中),重新安装pc计算机停止grub屏幕后,如果我不重新启动它工作正常

  5. 我在容器中的网络不能正常工作,我已尽我所能。

以下答案重复了以下链接中的大部分信息

LXC

容器是一种轻量级虚拟化技术。 它们更像是增强的chroot而不是像Qemu或VMware这样的完全虚拟化,因为它们不会模拟硬件,因为容器与主机共享相同的操作系统。 因此,与Solaris区域或BSD jails相比,容器更好。 Linux-vserver和OpenVZ是两个预先存在的,独立开发的Linux容器类function实现。 实际上,容器是由于vserver和OpenVZfunction的上游工作而产生的。 容器中仍然缺少某些vserver和OpenVZfunction,但是容器可以启动许多Linux发行版,并且具有可以与未修改的上游内核一起使用的优点。

使LXC更容易

12.04 LTS的主要焦点之一是使LXC易于使用,为实现这一目标,我们一直致力于修复已知错误和改进LXC默认配置的几个不同方面。

创建一个基本容器并在Ubuntu 12.04 LTS上启动它现在归结为:

sudo apt-get install lxc sudo lxc-create -t ubuntu -n my-container sudo lxc-start -n my-container 

这将默认使用与您的计算机相同的版本和体系结构,显然可以使用其他选项(-help将列出它们)。 登录/密码是ubuntu / ubuntu。

我们致力于使LXC更易于使用的另一件事是减少将常规系统变成容器所需的黑客数量。 从12.04开始,我们不对标准的Ubuntu系统进行任何修改以使其在容器中运行。 现在甚至可以获取原始VM映像并将其引导到容器中!

ubuntu-cloud模板还允许您获取我们的EC2 /云图像之一,并将其​​作为容器而不是云实例启动:

 sudo apt-get install lxc cloud-utils sudo lxc-create -t ubuntu-cloud -n my-cloud-container sudo lxc-start -n my-cloud-container 

最后,如果你想测试新的酷东西,你也可以使用[juju][3]和LXC

 [ -f ~/.ssh/id_rsa.pub ] && ssh-keygen -t rsa sudo apt-get install juju apt-cacher-ng zookeeper lxc libvirt-bin --no-install-recommends sudo adduser $USER libvirtd juju bootstrap sed -i "s/ec2/local/" ~/.juju/environments.yaml echo " data-dir: /tmp/juju" >> ~/ .juju/environments.yaml juju bootstrap juju deploy mysql juju deploy wordpress juju add-relation wordpress mysql juju expose wordpress # To tail the logs juju debug-log # To get the IPs and status juju status 

使LXC更安全

LXC在Ubuntu 12.04中的另一个主要焦点是使其安全。 John Johansen做了一项非常出色的工作,扩展了apparmor,让我们实现了每个容器的apparmor配置文件,并防止大多数已知的危险行为发生在容器中。

注意:在我们在内核中实现并由LXC使用的用户命名空间之前,我们不会说LXC是root安全的,但是Ubuntu 12.04 LTS中提供的默认apparmor配置文件阻止了我们所知道的任何大量操作。

这主要意味着对/ proc和/ sys的写访问受到严格限制,安装文件系统也受到限制,只允许默认安装已知安全的文件系统。 默认LXC配置文件中的function也受到限制,以防止容器加载内核模块或控制apparmor。

有关这方面的更多详情,请访问:

http://www.stgraber.org/2012/05/04/lxc-in-ubuntu-12-04-lts/

https://help.ubuntu.com/12.04/serverguide/lxc.html

http://www.stgraber.org/2012/03/04/booting-an-ubuntu-12-04-virtual-machine-in-an-lxc-container/

cgroup已在Ubuntu 11.10服务器中配置,您无需配置它以下是一个非常好的指南。

http://www.activestate.com/blog/2011/10/virtualization-ec2-cloud-using-lxc

如果您还没有看过LXC网络面板……试试吧。

http://lxc-webpanel.github.io/

它易于安装,为您提供了一个很好的LXC Web Panel浏览器界面。

该应用程序是用Python编写的,允许您从GUI执行绝大多数LXC mgmt。

创建/启动/停止/销毁,冻结/解冻,编辑/更改网络,编辑许多cgroup参数等。

非常好的工具