Containers

Although containers in their current form are a relatively new technology, the principle of isolating sets of processes from each other has been around for a long time. What the current set of technologies enhances is the completeness of the isolation. Previous technologies maybe only isolated parts of the filesystem, whereas the latest container technologies also isolate several areas of the operating system and can also provide quotas for hardware resources. One technology in particular, Docker, has risen to become the most popular technology when talking about containers, so much so that the two words are often used interchangeably. The word container describes a technology that performs operating system-level virtualization. Docker is a software product that controls primarily Linux features such as groups and namespaces to isolate sets of Linux processes.

It's important to note that, unlike full-blown virtualization solutions such as VMWare, Hyper-V, and KVM, which provides virtualized hardware and require a separate OS instance, containers utilize the operating system of the host. The full OS requirements of virtual machines may lead to several 10s of GB of storage being wasted on the operating system installation and potentially several GB of RAM as well. Containers typically consume overheads of storage and RAM measured in MB, meaning that a lot more containers can be squeezed onto the same hardware when compared to full virtualization technologies.

Containers are also much easier to orchestrate as they are completely configurable from the host system; this, when combined with their ability to be started in milliseconds, means that they are very well suited to dynamically changing environments. Particularly in DevOps environments, they are becoming extremely popular where the line between infrastructure and application is starting to become blurred. The management of infrastructure, which tends to operate at a slower pace than application development, means that in an Agile development environment the infrastructure team is often always playing catch-up. With DevOps and containers, the infrastructure team can concentrate on providing a solid base and the developers can ship their application combined with the OS and middleware required to run.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.118.137.7