Containers Instead of Virtual Machines

The last couple of years have seen the rise of software products that leverage Linux Containers (LXC) to deploy many instances of an application on one operating system. Running applications in LXC is an alternative to running applications in a virtual machine. However, LXC is not a new technology; it was first released in 2008 and is viewed as relatively mature. In fact, containerization as a concept existed earlier in Solaris Zones (2005) and AIX Workload partitioning (2007).

Containers are easy to deploy and consume very little resources as compared to a virtual machine. Where virtual machines abstract operating systems from the underlying hardware, containers abstract applications from the operating system. Containers make it possible to run many copies of the same or similar applications on top of one operating system, thus using a single copy of all the operating system files and shared libraries.

 

From an efficiency standpoint, this is obviously a huge win; it also has the benefit of ensuring consistency across the applications since they’re sharing the dependencies rather than each application having a potentially disparate version of the dependency. LXC developers are now expanding on the platform with LXD, a new way of interacting with containers which exposes a REST API. This will allow much greater orchestration of containers moving forward. As containers become more popular, the distribution of data center software will likely focus more on containers than on virtual machines.

About tosasan

Just Me and my Bicycle
This entry was posted in OS, Uncategorized. Bookmark the permalink.

Leave a comment