LXC(Linux 容器)

LXC(也称为 Linux 容器)是一种在操作系统级别工作的虚拟化技术。这与硬件虚拟化不同,硬件虚拟化是 KVM、Xen 和 VMware 等其他虚拟机监控程序使用的方法。LXC(当前通过 Compute 服务中的 libvirt 实现)不是用于多租户环境的安全虚拟化技术(具体而言,容器可能会影响在同一机器上托管的其他容器的资源配额)。可以使用其他隔离技术,例如 AppArmor,来提供更好的容器隔离,但这并非默认情况。出于所有这些原因,不建议在生产环境中选择此虚拟化技术。

如果您的计算主机没有硬件虚拟化支持,LXC 可能比 QEMU 提供更好的性能。此外,如果您的虚拟机需要访问专用硬件,例如 GPU,那么使用 LXC 可能比其他虚拟机监控程序更容易实现。

注意

当使用 LXC 作为虚拟机监控程序运行时,某些 OpenStack Compute 功能可能缺失。有关详细信息,请参阅 虚拟机监控程序支持矩阵

配置

要启用 LXC,请配置 DEFAULT.compute_driver = libvirt.LibvirtDriverlibvirt.virt_type = lxc。例如

[DEFAULT]
compute_driver = libvirt.LibvirtDriver

[libvirt]
virt_type = lxc

在 Ubuntu 上,通过安装 nova-compute-lxc 包来启用 OpenStack 中的 LXC 支持。