Intelligent CIO Middle East Issue 22 | Page 71

INDUSTRY WATCH “USING CONTAINER NATIVE STORAGE, IT DEPARTMENTS BENEFIT FROM A SOFTWARE- DEFINED, HIGHLY SCALABLE ARCHITECTURE, WHICH CAN BE DEPLOYED IN AN ON- PREMISE DATA CENTRE AND IN PUBLIC CLOUDS.” T he key features of Linux containers can be summed up in a few sentences: They pack program code and necessary dependencies into an isolated package, running on a single instance of the host operating system. This is done either directly on physical hardware or in a virtual machine, and this can be in an on-premise data centre or in a public cloud. Containers clearly differ from hypervisor virtualisation: Virtualisation involves linking virtual machines to a full operating system which generates significant overheads. To address this issue, an application container already contains all the required dependencies, like middleware and the runtime environment. As a result, multiple containers on one server can share the kernel of the operating system. Containers promise quick and cost- effective development, as they can be quickly and easily ported between and within development, testing, and operating environments. This enables enterprises to solve many organisational problems encountered in large-scale, conventional software development projects. Dozens of programmers are no longer needed to work on a single application. Instead, there are small teams, who www.intelligentcio.com focus on particular sub-tasks and processes, and are therefore able to work in a much more agile manner. When containers are transferred into productive operation, it is possible in the simplest case to initiate the procedure using the systemd server process. In current Linux distributions, the systemd server process acts as an init system to start, monitor, and end other processes, and it can also be used for basic management of container images. For small, simple applications, systemd may be sufficient. Conversely, large-scale business applications place high demands on container management, which can be summed up in seven points. 1. Optimised alignment of resources and workloads In contrast to standard monolithic software or a customised solution, a container-based application consists of a number of mutually independent components that are largely capable of operating as standalone components. Each of these individual components and their relationships with one another must be taken into account in a container management solution. Complexity increases further if the IT team follows the DevOps INTELLIGENTCIO 71