Containers have become the new hit of the tech industry, as big of a buzzword as cloud, IoT or big data and also increasing in adoption just as quickly.
The technology isn’t new but questions remain about how it sits in the same ecosystem as virtualisation. Virtualisation, which to some extent can be considered to be last year’s fashion, still remains incredibly useful and it still serves a purpose. It just doesn’t seem to have that wow factor anymore like it used to, unlike containers.
As containerisation grew in popularity so did the questions as to whether container tech and virtualisation could live in the same world together, well they can.
Containerisation and virtualisation are typically known to work together through container-based virtualisation or application containerisation, which is an Operating System (OS) level virtualisation method for deploying and running distributed applications without the need to launch an entire virtual machine for each of the applications.
Containers include the necessary components to run all desired software for usage, such as files, environment variables and libraries. They can also be created much faster than hypervisor-based instances.
In comparison, virtualisation is the creation of a virtual version of something such as an operating system, server or a storage device or network resources.
Operating system virtualisation is the use of software to allow a piece of hardware to run multiple operating system images at the same time.
The market is full of different flavours of containerisation and virtualisation, with each vendor pushing their wares as being the best one.
CBR lists three of the top container vendors and three of the top virtualisation vendors to help tackle that confusion.
Docker is an open source organisation that automates the deployment of applications inside software containers.
By using Docker containers, users are able to deploy, replicate, move and also back up a workload more quickly and easily than can be achieved with virtual machines. This function is shown through the use of a cloud-like flexibility to any infrastructure capable of running containers.
Although Docker provides containers, it can also be identified as another form of virtualisation, as Docker containers virtualise the OS into virtualised compartments to run container applications.
A Docker container has its own file system, storage, CPU, RAM and so on, but the key difference between a container and VM is that while the hypervisor abstracts an entire device, containers just abstract the operating system kernel.
One of the recent Docker updates is in the form of Docker Datacenter, which is designed to deliver different options for container deployment such as on-premises, virtual private cloud. This enables Docker to be deployed to virtual private cloud environments but retains portability so that the user can retain control of where it can be used.
Microsoft, for a long period of time, has been providing an end-to-end suite of virtualisation products and technologies which together form a centralised management system.
The server hardware virtualisation uses software to create a Virtual Machine (VM) that is similar to a physical computer, this then creates a separate OS environment that is logically isolated from the host server.
By providing a range of VMs at once, the approach enables several operating systems to run simultaneously on a single physical machine.
Windows Server 2008 Hyper-V was Microsoft’s first tool that provides everything needed to support server virtualisation as an integral feature of the operating system.
The benefit of its hardware virtualisation includes help to consolidate multiple, under-utilised physical servers on a single host, reduction of workforce, space and kilowatt by leveraging virtualisation for server consolidation and agility and also lower costs.
It also offers desktop, application and management virtualisation. Its Virtual Machine Manager helps to enable centralised management of physical and virtual IT infrastructure, increased server utilisation and dynamic resource optimisation across multiple virtualisation platforms.
What are Red Hat, AWS, Oracle, & VMware doing?
Red Hat offers a container development kit (CDK), which is a pre-built container development environment based on Red Hat Enterprise Linux for users to begin developing container-based applications.
The containers used can be easily deployed on any Red Hat container host or platform and platform-as-a-service solution such as, OpenShift Enterprise 3.
In order to remove the need for users to assemble a container development environment from scratch, CDK delivers all the latest tools in a Red Hat Enterprise Linux virtual machine that can be used on Mac OS X, Microsoft Windows, RHEL or Fedora Linux System.
A Virtual-to-Container (v2c) tool is
also available to convert VM images to containers. The v2c tool is designed to make it easy to take a working VM with a single application and generate a Dockerfile that runs the same application.
Red Hat, which is the second largest contributor to Docker and Kubernetes, provides container-focused solutions to give users infrastructure, platform and control to take advantage of everything containers offer.
Oracle owns the operating system (Sun Solaris), multiple virtualisation software solutions (Solaris Zones, LDoms and Xvm) and also server hardware (SPARC).
Its virtualisation, which is engineered for open cloud, offers open standards-based server and desktop virtualisation.
The server virtualisation products include Oracle VM Server for x86 and Oracle VM Server for SPARC, both of which are designed for efficiency and optimised for performance.
It also offers virtualisation built into hardware and Oracle operating systems to deliver a more optimised solution.
The desktop virtualisation products include Oracle Secure Global Desktop and Oracle VM VirtualBox, enabling access for standard PCs, Macs, Chromebooks, Smartphones and tablets.
Oracle’s VM VirtualBox enables desktop virtualisation for all users on x86 operating systems, providing support to run Oracle Linux, Windows and Oracle Solaris virtualised locally.
Amazon Web Services
Amazon’s EC2 Container Service (ECS) is a highly scalable, high performance container management service which supports Docker containers and allows you to run applications on a managed cluster of Amazon EC2 instances.
The benefits include flexible container placement to schedule long-running applications and batch jobs, along with the use of APIs to get up-to-date cluster state information to allow users to integrate their own custom as well as third party schedulers.
The AWS partnership with Docker is designed to provide an easier service for uses to deploy an enterprise Containers as a Service (CaaS).
By using AWS Quick Start reference deployments users are able to quickly deploy Docker containers on the AWS cloud.
VMware, which is considered to be one of the leading pioneers of the virtualisation industry, developed its x86-based virtualisation in 1988 and since then has continued to represent itself as a significant innovator in the market.
The company provides the needed fundamental virtualisation technology for x86-based hardware suppliers and also offers a variety of software-based portioning approaches, utilising both hosted and hypervisor architectures.
One of its product, VirtualCenter, is virtual infrastructure management software that is used to manage an enterprise’s virtual machines as a single, logical pool of resources.
The company says that its technology can help users to boost IT efficiency, maximise IT investments and also provide a competitive advantage.
The company also recently introduced VMware NSX, a network virtualisation platform for the software-defined data centre.