LXC
Encyclopedia
LXC is an operating system-level virtualization
method for running multiple isolated Linux systems (containers) on a single control host. LXC does not provide a virtual machine, but rather provides a virtual environment that has its own process and network space.
It is similar to other OS-level virtualization technologies on Linux such as OpenVZ
and Linux-VServer
, as well as those on other operating systems such as FreeBSD jail
s and Solaris Containers
.
LXC relies on the Linux kernel
cgroups
functionality that became available in version 2.6.29, developed as part of LXC. It also relies on other kinds of namespace-isolation functionality, which were developed and integrated into the mainline Linux kernel.
Operating system-level virtualization
Operating system-level virtualization is a server virtualization method where the kernel of an operating system allows for multiple isolated user-space instances, instead of just one. Such instances may look and feel like a real server, from the point of view of its owner...
method for running multiple isolated Linux systems (containers) on a single control host. LXC does not provide a virtual machine, but rather provides a virtual environment that has its own process and network space.
It is similar to other OS-level virtualization technologies on Linux such as OpenVZ
OpenVZ
OpenVZ is an operating system-level virtualization technology based on the Linux kernel and operating system. OpenVZ allows a physical server to run multiple isolated operating system instances, known as containers, Virtual Private Servers , or Virtual Environments...
and Linux-VServer
Linux-VServer
Linux-VServer is a virtual private server implementation that was created by adding operating system-level virtualization capabilities to the Linux kernel. It is developed and distributed as open source software.The project was started by Jacques Gélinas...
, as well as those on other operating systems such as FreeBSD jail
FreeBSD Jail
The FreeBSD jail mechanism is an implementation of operating system-level virtualization that allows administrators to partition a FreeBSD-based computer system into several independent mini-systems called jails....
s and Solaris Containers
Solaris Containers
Solaris Containers is an implementation of operating system-level virtualization technology for x86 and SPARC systems, first released publicly in February 2004 in build 51 beta of Solaris 10, and subsequently in the first full release of Solaris 10, 2005.It is present in newer OpenSolaris based...
.
LXC relies on the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
cgroups
Cgroups
cgroups is a Linux kernel feature to limit, account and isolate resource usage of process groups. This work was started by Rohit Seth in 2006 under the name "process containers"; in late 2007 it was renamed to cgroups and merged to kernel version 2.6.24...
functionality that became available in version 2.6.29, developed as part of LXC. It also relies on other kinds of namespace-isolation functionality, which were developed and integrated into the mainline Linux kernel.
See also
- Comparison of platform virtual machines
- Operating system-level virtualizationOperating system-level virtualizationOperating system-level virtualization is a server virtualization method where the kernel of an operating system allows for multiple isolated user-space instances, instead of just one. Such instances may look and feel like a real server, from the point of view of its owner...
- cgroupsCgroupscgroups is a Linux kernel feature to limit, account and isolate resource usage of process groups. This work was started by Rohit Seth in 2006 under the name "process containers"; in late 2007 it was renamed to cgroups and merged to kernel version 2.6.24...
External links
- Official page
- Linux Checkpoint / Restart - LXC patch for supporting checkpoint and restart
- IBM developerworks article about LXC
- LXC HOWTO
- Another HOWTO