Unleashing the Full Potential of Containerization for DevOps - Part 1
September 20, 2017

Ruslan Synytsky

A powerful tool for simplifying DevOps is containerization, which delivers a convenient form of application packaging, combined with the opportunity to automate certain IT provisioning processes. With containerization, DevOps teams can focus on their priorities — the Ops team preparing containers with all needed dependencies and configurations; and the Dev team focusing on efficient coding of an application that can be easily deployed.

This automation can be achieved through PaaS or CaaS solutions, which offer additional benefits including eliminating human errors, accelerating time to market and more efficient resource utilization.

Other important benefits of containerization are:

■ Container-based virtualization guarantees the highest application density and maximum utilization of server resources compared to virtual machines. 

■ Considering advanced isolation of system containers, different types of applications can be run on the same hardware node leading to a reduction of TCO.

■ Resources that are not consumed within container boundaries are automatically shared with other containers running on the same hardware node.

■ Automatic vertical scaling of containers optimizes memory and CPU usage based on the current load, and no restart is needed to change the resource limits compared to VM scaling.

Unleashing the potential of containerization for DevOps requires careful attention to several challenges however, especially for first-time adopters.

Realizing Project Needs

At the early stages, DevOps teams must analyze the current state of their projects and decide what is required to move to containers, in order to realize long-term, ongoing benefits.

For optimal architecture the right type of container must be selected. There are two types:

■ an application container (Docker containers) runs as little as a single process

■ a system container behaves like a full OS and can run full-featured unit systems like systemd, SysVinit, openrc that allow it to spawn other processes like openssh, crond, syslogd together inside a single container

For new projects, application containers are typically more appropriate, as it is relatively easy to create the necessary images using publicly available Docker templates taking into account specific requirements of microservice patterns and modern immutable infrastructure design.

It is a common misconception that containers are good only for greenfield applications (microservices and cloud-native). They can indeed breathe new life into legacy applications, with just a bit of extra work at the initial phase while migrating from VMs.

For monolithic and legacy applications it is preferable to use system containers, so organizations can reuse architecture and configurations that were implemented in the original VM-based design.

Future-Proofing Containerization Strategy

After determining what the project requires today, it is best to think about the future and understand where technology is heading. With project growth, complexity will increase, so a platform for orchestration and automation of the main processes will most likely be needed.

Management of containerized environments is complex and dense, and PaaS solutions help developers concentrate on coding. There are many options when it comes to container orchestration platforms and services. Figuring out which one is best for a particular organization’s needs and applications can be a challenge, especially when needs are frequently changing.

Here are several points that should be considered when choosing a platform for containerization:

It is paramount to have a platform with a sufficient level of automation, which can be easily adjusted depending on variable requirements.

Level of Lock-In
PaaS solutions are often proprietary and therefore can lock you into one vendor or infrastructure provider.

Freedom to Innovate
The platform should offer a wide set of built-in tools, as well as possibilities to integrate third-party technologies, in order not to constrain developers' ability to innovate.

Supported Cloud Options
When using containerization in the cloud it is also important that your strategy supports public, private and hybrid cloud deployments, as needs can change eventually.

Pricing Model
When you choose a specific platform, it is typically a long-term commitment. So it is important to consider what pricing model is offered. Many public cloud platforms offer VM-based licensing, which may not be efficient when you’ve already migrated to containers, which can be charged only for real usage, not for the reserved limits.

Which platform you choose can significantly influence your business success, so the selection process should be carefully considered.

Unleashing the Full Potential of Containerization for DevOps - Part 2

Ruslan Synytsky is CEO and Co-Founder of Jelastic

The Latest

March 22, 2018

When it comes to smart app development, I have learned plenty of lessons over my years in technology. Here are five that are top of mind for me ...

March 21, 2018

Do you spend more time worrying about the "up-time" of your servers than the productivity of the employees who use them? Are you overly concerned with systems maintenance rather than software use cases? If you answered yes to any of those questions, you may need to consider low-code development ...

March 19, 2018

The global DevOps market size is expected to reach USD 12.85 billion by 2025, according to a new study by Grand View Research, registering an 18.60% CAGR during the forecast period ...

March 15, 2018

More than half of companies (52%) admit to cutting back on security measures to meet a business deadline or objective, according to a SecOps research report released by Threat Stack ...

March 13, 2018

While microservices can certainly be used for greenfield projects, the survey suggests that this is not the sole source of value. In fact, more than half of respondents indicate that they are also using microservices to re-architect existing projects. The reality we see is that microservices can offer value to users along their IT transformation journey — whether they are just looking to update their current application portfolio or are gearing up for new initiatives ...

March 12, 2018

As DevOps teams and developers are looking to make 2018 the year in which technical crises are avoided, continuous testing should be at the top of their resolutions list. Here are four steps developers and DevOps teams can take to ensure the benefits of continuous testing are effectively implemented throughout the development process ...

March 08, 2018

Digital leaders will outpace their rivals by adopting methodologies and mindsets that shorten software delivery cycles. They'll also get really, really good at rapid, iterative change following design thinking principles ...

March 06, 2018

There are six major pain points that companies experience when they try to deploy and run Kubernetes in their complex environments, and there are also some best practices companies can use to address those pain points ...

March 05, 2018

With more than 30 Kubernetes solutions in the marketplace, it's tempting to think Kubernetes and the vendor ecosystem has solved the problem of operationalizing containers at scale. Far from it. There are six major pain points that companies experience when they try to deploy and run Kubernetes in their complex environments, and there are also some best practices companies can use to address those pain points ...

March 01, 2018

With the growing adoption of tablets and smartphones, companies are constantly seeking new web technologies that support multiple device types in addition to traditional desktops. At the same time, they are continually adding capabilities to their web applications that help users visualize and analyze data regardless of the platform or device used. To keep up in this changing technology environment, organizations must deliver these complex applications quickly, with high quality, and yet find ways to maximize their investment in these apps over the long haul ...

Share this