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

Ruslan Synytsky
Jelastic

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:

Flexibility
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

July 17, 2018

In my first blog in this series, I highlighted some of the main challenges teams face with trying to scale mainframe DevOps. To get past these hurdles, the key is to develop an incremental approach that enables teams to capture value along each step of the journey ...

July 16, 2018

The key to mainframe DevOps success is in quickly identifying and removing major bottlenecks in the application delivery lifecycle. Major challenges include collaboration between mainframe and distributed teams, lack of visibility into the impact of software changes, and limited resource flexibility with scaling out necessary testing initiatives. Now let's take a closer look at some of these key challenges and how IT departments can address them ...

July 11, 2018

How much are organizations investing in the shift to cloud native, how much is it getting them? ...

July 10, 2018

In the shift to cloud native, many organizations have adopted a configuration-as-code approach. This helps drive up application deployment velocity by letting developers and DevOps teams reconfigure their deployments as their needs arise. Other organizations, particularly the more regulated ones, still have security people owning these tools, but that creates increased pressure on the security organization to keep up. How much are organizations investing in this process, and how much is it getting them? ...

June 28, 2018

More than a third of companies that use serverless functions are not employing any application security best practices and are not using any tools or standard security methodologies to secure them, according to the State of Serverless Security survey, conducted by PureSec ...

June 27, 2018

The popularity of social media platforms and applications is spurring enterprises to adopt "social business" models to better engage with employees and customers and improve collaboration, according to a new study published by ISG ...

June 25, 2018

The previous chapter in this WhiteHat Security series discussed Codebase as the first step of the Twelve-Factor App and defined a security best practice approach for ensuring a secure source control system. Considering the importance of applying security in a modern DevOps world, this next chapter examines the security component of step two of the Twelve-Factor methodology. Here follows some actionable advice from the WhiteHat Security Addendum Checklist, which developers and ops engineers can follow during the SaaS build and operations stages ...

June 21, 2018

DevSecOps is quickly gaining support and traction, within and beyond information security teams. In fact, 70% of respondents believe their culture can embrace the change needed to fuse Security and DevOps, according to a new survey of 80 security professionals by Aqua Security ...

June 20, 2018

The larger the company size, the higher the proportion of low IT performers, according to the State of DevOps: Market Segmentation Report from Puppet, based on the 2017 State of DevOps Survey data ...

June 18, 2018

An overwhelming 83 percent of respondents have concerns about deploying traditional firewalls in the cloud, according to Firewalls and the Cloud, a survey conducted by Barracuda Networks...

Share this