February 6, 2019 By Rajeev Gandhi
Peter Szmrecsanyi
4 min read

Using containers to address challenges around the deployment of application code

IT continues to be under intense pressure to increase agility and speed up delivery of new functionality to the lines of business. A particular point of pressure is the deployment of new or enhanced application code at the frequency and immediacy demanded by typical digital transformation. Under the covers, this problem is not simple, and it is compounded by infrastructure challenges. Challenges like how long it takes to provide a platform to the development team or how difficult it is to build a test system which emulates the production environment adequately. Cue containers!

The benefits of containerization

Containerization of applications brings many benefits, including the following:

  • Portability between different platforms and clouds—it’s truly write once, run anywhere.

  • Efficiency through using far fewer resources than VMs and delivering higher utilization of compute resources—see “Containers vs. VMs: What’s the difference?” for a full comparison.

  • Agility that allows developers to integrate with their existing DevOps environment.

  • Higher speed in the delivery of enhancements. Containerizing monolithic applications using microservices helps development teams create functionality with its own life cycle and scaling policies.

  • Improved security by isolating applications from the host system and from each other.

  • Faster app start-up and easier scaling.

  • Flexibility to work on virtualized infrastructures or on bare metal servers

  • Easier management since install, upgrade, and rollback processes are built into the Kubernetes platform.

What is a container?

Containers are lightweight software components that bundle the application, its dependencies, and its configuration in a single image, running in isolated user environments on a traditional operating system on a traditional server or in a virtualized environment.

The key word here is “isolated.” Isolation means speed—containers are smaller entities than virtual machines so they can be deployed much faster. Isolation means responsive—start-up times are short. Isolation means versatility—containers are portable between different platforms and different cloud vendors. That is how they deliver the benefits!

The following video provides more information about the process of containerization:

Why are containers important?

Containerization is one of the latest developments in the evolution of cloud computing. Many organizations, both large and small, are looking at containers as a means to improve application life-cycle management through capabilities such as continuous integration and continuous delivery. Also, certain implementations of containers conform to the principles of open source, which is appealing to organizations wary of being locked-in to a specific vendor.

Containers are also the foundation of a private cloud and, just like the early days of cloud computing, are becoming a game changer for many organizations. Private cloud becomes the platform of choice to deliver the security and control required while simultaneously enabling the consumption of multiple cloud services. This is typical of situations where organizations are running both existing application workloads and new application workloads in the cloud.

Containers help to satisfy three key use cases that reflect what enterprises require to run their applications in the cloud:

  1. Modernize your existing applications.
  2. Create new cloud native enterprise applications.
  3. Open your data center to work with cloud services.

A private cloud platform

So what does a private cloud look like? From IBM’s point of view, containers provided by Docker and container orchestration provided by Kubernetes constitute the key components for a private cloud platform. With that in mind, we provide three main flavors of solution based on these components and driven by our clients’ requirements:

  • For clients who require application hosting but do not need to manage the infrastructure, we provide the IBM Cloud Kubernetes Service, available on IBM Cloud in shared or dedicated environment.
  • For clients who require application hosting on a dedicated cloud and require full control of the infrastructure, we provide IBM Cloud Private (ICP) on IBM Cloud.
  • For clients who require application hosting on their premises to satisfy security, data isolation, compliance, and governance, we provide IBM Cloud Private within the client data center.

Solutions for the challenges that lie ahead

Having recognized that containers can bring real benefit to both developers and infrastructure and operations teams, organizations large and small are exploring containerization. That is why we provide the three container solutions outlined above. However the challenges don’t stop there. As the container footprint increases, it introduces new challenges for Enterprise IT. These include the following:

  • Designing and maintaining templates for the containers
  • Adapting/expanding existing governance models and practices
  • Conforming to security policies and standards
  • Integrating with the existing DevOps environment
  • Selecting the right open source tools from the hundreds available
  • New skills or knowledge to manage the new containerized environment

The above challenges are, of course, exacerbated by either a lack of skills or insufficient resources with such skills. To address these, IBM also provides managed container services that allow our clients to focus on building their applications and while letting us integrate with the existing IT infrastructure and manage the stack. Besides support on IBM Cloud, IBM Managed Container Services is also available for other cloud providers, like AWS, Azure, and Google Cloud.

The IBM Services for Private Cloud (ISPC) Adoption Workshop

To help you start this journey, or perhaps to discuss your progress to date, IBM Cloud Advisory Services is introducing the IBM Services for Private Cloud (ISPC) Adoption Workshop. This two-day workshop aims to help you develop your roadmap to migrate and modernize your applications and adopt private cloud based on containers. In the workshop, we will work with you to select two or three applications for containerization and help define a plan to pilot the migration and/or modernization of these applications. We will also help explore the applicability of hosting these containerized applications as a managed service.

For more information on container adoption or the ISPC adoption workshop, please look at our webcast or contact your IBM representative. For more information on IBM Cloud Advisory Services, visit us at https://www.ibm.com/services/cloud/advisory.

Was this article helpful?
YesNo

More from Cloud

IBM Cloud Virtual Servers and Intel launch new custom cloud sandbox

4 min read - A new sandbox that use IBM Cloud Virtual Servers for VPC invites customers into a nonproduction environment to test the performance of 2nd Gen and 4th Gen Intel® Xeon® processors across various applications. Addressing performance concerns in a test environment Performance testing is crucial to understanding the efficiency of complex applications inside your cloud hosting environment. Yes, even in managed enterprise environments like IBM Cloud®. Although we can deliver the latest hardware and software across global data centers designed for…

10 industries that use distributed computing

6 min read - Distributed computing is a process that uses numerous computing resources in different operating locations to mimic the processes of a single computer. Distributed computing assembles different computers, servers and computer networks to accomplish computing tasks of widely varying sizes and purposes. Distributed computing even works in the cloud. And while it’s true that distributed cloud computing and cloud computing are essentially the same in theory, in practice, they differ in their global reach, with distributed cloud computing able to extend…

How a US bank modernized its mainframe applications with IBM Consulting and Microsoft Azure

9 min read - As organizations strive to stay ahead of the curve in today's fast-paced digital landscape, mainframe application modernization has emerged as a critical component of any digital transformation strategy. In this blog, we'll discuss the example of a US bank which embarked on a journey to modernize its mainframe applications. This strategic project has helped it to transform into a more modern, flexible and agile business. In looking at the ways in which it approached the problem, you’ll gain insights into…

IBM Newsletters

Get our newsletters and topic updates that deliver the latest thought leadership and insights on emerging trends.
Subscribe now More newsletters