Container adoption is real. It’s time to jump on board.

container
Shutterstock

Containers are here to stay. The question is when will they become more widely used than virtual machines?

Containers are software designed to package an application and its dependencies (libraries, binaries, and configuration files) together so it can run quickly and reliably when a developer moves the application from one computing environment to another. They also provide smaller, more agile app deployments that enable teams to release code faster. Since most enterprises are taking steps to reduce the friction of app portability, containers are the next natural step in an enterprise transformation strategy.

Why containers are portable

Containers share a common lightweight Linux OS and only keep the different pieces unique to the application within the container, which makes them much more portable than VMs. When combined with an orchestration system, such as Kubernetes, you can run the same container (or code segment) on any Linux operating system.

For example, you can develop an app and take it from your desktop and move it to a private cloud on premises, such as HPE Container Platform, or to Amazon or Microsoft clouds on their container environments – all without needing to make significant adjustments to the code. No container today is purely portable; however, you can dramatically reduce the dependencies to the virtual machine by moving to a container strategy.

Containers gain ground in the enterprise

According to a recent Forbes article, container adoption is growing rapidly in the enterprise—much faster than expected. A new Gartner report agrees:  “By 2023, more than 70% of global organizations will be running more than two containerized applications in production, up from less than 20% in 2019.”[i]

As I mentioned above, one reason for this growth is due to their portability – a definite plus in today’s hybrid cloud world. Containers allow developers to move applications faster and easier from one environment to the next. For example, you may want to create an application in one public cloud, move it to another for testing, and then place it on premises in a private cloud for production. Another benefit of containers is their efficiency due to microservices. Containers let developers create applications using small services instead of a monolithic architecture. When using this type of approach, developers can easily make a small change to an application and push it out immediately – without affecting other microservices. Microservices in containers let businesses create applications faster, which means they can be more responsive to market demands.

Another recent event that helped grow the popularity of containers is the rapid rise of Kubernetes, an open source, container orchestration tool. Kubernetes allows you to take containers and put them in the right place, manage them, and shut them down when they are not working or having behavior problems. In the last two years, Kubernetes quickly displaced a number of other private orchestrators, becoming the platform of choice for containers.

How to start implementing containers in your enterprise

As the popularity of containers continues to grow, every enterprise should embrace a container initiative. To get started, I suggest the following:

• Get to know Kubernetes

Most likely your developers are already using Kubernetes, even if that information isn’t shared with the central IT team. Just like in the years when public cloud started, shadow IT was commonplace. The same thing is happening now with containers in enterprises. Find the people currently using Kubernetes and bring their work out into the open. Encourage a culture of learning and sharing knowledge about the Kubernetes stack in the public cloud.

• Find your hand raisers

If you can’t find anyone who is already working with containers, create a team to do just that. Look for individuals within your development group who believe in a container strategy and are eager to learn. These are your hand raisers, and once you find them, encourage them and provide resources. The team can start small with a self-contained environment not connected to your corporate network, which will allow them to learn in a low-risk environment.

• Encourage participation and learning

Organizations such as Cloud Native Computing Foundation (CNCF) support Kubernetes and provide numerous opportunities for learning and support. Encourage your IT operators and developers to participate in these types of organizations. Your teams should also stay up-to-date on container-related offerings, as the industry is quickly changing.

• Analyze your current IT estate

Before implementing a container strategy, you must have a good idea of your current applications and what type of environments they are best suited for. Decide if you will build applications net new or if you will refactor them. If refactoring legacy workloads, look for ones that are standalone and don’t require other apps to run. These are the best candidates for containerizing.

• IMPORTANT – know your data persistency requirements

The most important thing to consider when building a container strategy is to understand your data persistency requirements. If the application you plan to containerize relies on stateful data connections, specifically legacy applications that were not written for containers, you will need an on-premises solution that handles data connections differently than traditional Kubernetes. Specifically, you will need a platform that handles both stateful and stateless environments at the same time.

For example, let’s say you have an investment in AI/ML apps, written using TensorFlow and you want to deploy them using containers. Native Kubernetes does not handle the data connectors well for these apps, and you’ll need a platform that manages and maintains data connections. This is the same for many legacy apps that need containers.

Remember, not all applications are going to be architected or written to the new cloud-native architectures; therefore, we must be mindful of the legacy world and understand that is where the majority of today’s workloads are running.

Where to get help: knowledge and expertise needed for success

Hewlett Packard Enterprise (HPE) provides the deepest and broadest platform choices for different container use cases, plus expertise and service offerings. Multiple platform choices include compute, storage, and networking options for production-ready deployment and automation.

For example, HPE recently introduced the HPE Composable Rack and the HPE Container Platform – solutions that support both stateful and stateless applications. These offerings enable businesses to develop and operate containers on premises, on bare-metal, and in public cloud.

And to help customers quickly get through the planning and proof of concept (POC) phase of their container deployment strategy, HPE offers a variety of services that offer knowledge and expertise based on best practices. For example, HPE offers a one-month container assessment, migration, and deployment service that mirrors the agile sprint process. HPE will help you implement and bring up a fully production-ready container environment and then teach your IT staff all of the operational best practices..

We are at the tipping point for container technology

Containers are becoming the next level of abstraction and virtualization necessary for application development to move faster. Adoption of containers and microservices is real and is transforming how enterprises are deploying IT infrastructure. We’ve reached a tipping point; it’s time for enterprises worldwide to embark on a container strategy, or they just may miss the boat.

Click on the HPE Composable Rack link to learn how that solution makes container adoption easier. You can also visit the HPE Container website to learn more about HPE container products and services.

[i] Gartner: 3 Critical Mistakes That I&O Leaders Must Avoid With Containers. (Available by subscription-only)  

____________________________________

About Robert Christiansen

robert christiansen
Robert Christiansen is a cloud technology leader, best-selling author, and speaker. As Chief Technologist in the Office of the CTO at Hewlett Packard Enterprise (HPE), Robert's role is to connect client needs and HPE's strategic goals.  His client base includes Fortune 500 and Global 2000 customers, and his team’s leadership model encompasses the entire IT transformation journey, from inception to execution. 
Related:

Copyright © 2020 IDG Communications, Inc.