Sergey Galushko - Fotolia
The data center is ever-evolving, challenging IT professionals with learning new skills and mastering up-and-coming technologies on a consistent basis. Currently, container technology is taking the virtualization model by storm. In order to effectively manage containers, there are three things an administrator needs to know: how container technology works, how it's evolved over time and how it functions with other components in a virtual infrastructure. Take a look at these five quick tips to see how containers are infiltrating the data center and what this development means for system administrators.
The recent rise of containers
Containers are faster to deploy than VMs and allow for a greater instance count. Container adoption is on the rise for a number of reasons, including increased infrastructure support and the availability of more third-party tools. Major vendors, such as Microsoft and VMware, now offer container support. Third-party tools like the Kubernetes-based Google Cloud Container Engine provide automated container management services, which help round out the container ecosystem.
Security is still a sticking point for administrators who manage containers. Intel developed a thin hypervisor to address this problem by nesting containers within VMs. This technology uses hardware support for memory separation, which adds a layer of protection to containers. Docker takes a different approach to security with Docker Security Scanning (DSS). DSS scans the binary code of a container image to check its security level.
Container and VM use cases
Hypervisor developers are also trying to bridge the gap between containers and VMs. For example, features like VMware page deduplication replace duplicate memory pages with a single copy in an attempt to minimize memory usage. Although these technologies can peacefully coexist, there are still specific use cases in which it makes more sense to use containers than VMs, and vice versa.
Containers are a better fit for web services and, in general, jobs that scale a lot but don't interact too much. Container use in the cloud is also becoming more popular. The hypervisor and VM model makes the most sense for monolithic applications because they tend to be mission-critical, so it's more important to avoid downtime and security breaches than it is to save space and boot time.
Integrating the two technologies
Since it doesn't look like containers will overtake VMs anytime soon, vendors are looking for ways to integrate the two. Currently, the most common approach is to package a container within a VM. Administrators can use their existing virtualization management software to manage containers in this type of environment. VMware vSphere Integrated Containers is a good example of this approach, as administrators deploy and manage containers with the vSphere interface.
Intel Clear Containers is another example of a product that packages a container within a VM, but Intel seeks to retain container portability and achieve faster boot times rather than focus on the management aspect of integrating the two technologies. The goal of this is to improve the hypervisor and VMs to make them better container hosts.
Containers in the data center
The container and VM combo isn't the only one that improves data center operations -- containers and microservices also pair well together. Since microservices are spun up to execute particular tasks, it makes sense to run them in containers, which can be deployed rapidly. Combining containers and microservices with a software-defined infrastructure makes the data center even more agile and responsive. This setup also helps with quick resource reallocation.
However, there are some challenges associated with this type of environment. Networking can be an issue because microservices need to connect to storage devices or remote microservices. Since microservices are spun up and down relatively quickly, they can put a strain on network resources. Publishing available microservices poses another challenge, but orchestration tools aim to improve flexibility.
Container management challenges
Integration with other virtualization techniques and the increasing popularity of different data center setups make it more challenging for system administrators to manage containers. Rather than replace another technology in the data center, container adoption equates to another layer of management. While developers package apps within containers, system administrators are responsible for the rest of container management, which includes creating clusters, container security and orchestration. The command line, rather than a graphical user interface, performs the majority of container management.