What is happening
As more organizations move to hybrid architectures, operating in one or more clouds as well as on-premises, application development and operations teams have had to adapt. According to our research, 57% of organizations are running their IT infrastructure in heterogeneous environments. Containers – lightweight code/configuration bundles that run without regard to the underlying hardware – have been a key enabler and driver of this transformation. But achieving an efficient outcome from this shift means workloads must be able to run anywhere without being hampered by complex container management issues.
Why is this happening
While hosting some applications in the cloud offers increased flexibility, many enterprises want to keep mission-critical workloads on premises for security, data sovereignty or dependency reasons. Businesses are also likely to be using more than one public cloud – a recent survey of IT decision-makers indicated that 72% are using multiple clouds. They may have different processes running in different venues (say, app development tools on one cloud and machine learning workloads on another), or individual business units may have built production applications using various platforms.
Containers let developers think about applications without regard to infrastructure, but VMs and bare metal servers remain part of the equation for operations teams. Kubernetes – an open-source standard for configuring, launching and supervising containers at the application level – makes it possible to build a unified management plane that can be applied across environments, whether on- or off-premises. This basically moves the demarcation between infrastructure and other layers up a level, from the operating system to the application – a transition can be a change agent for the enterprise itself, moving the focus away from hardware-based analogs (VMs) to application-based containers.
Ideally, this combination of disparate environments means that developers can avoid any infrastructure-specific lock-in when creating applications. Allowing for this level of flexibility means fewer hard commitments to specific service providers for hosting and infrastructure. Another benefit is that they allow selection of best-of-breed services. By eliminating proprietary infrastructure dependence, organizations can choose services based solely on their fitness for the task at hand.
Saying that Kubernetes makes it possible to build a cross-environment management layer doesn’t mean it’s easy. Organizations modernizing their IT infrastructure are in for re-education about how their applications interact with the resources they use and how they signal when something has gone wrong. IT teams need to reimagine how they manage workloads, which will require some reskilling and restructuring of teams.
Containers also create a different set of challenges for security teams to manage. Security teams need to work directly with dev teams to ensure that protocols and compliance are addressed throughout the development lifecycle. Automatically applying policies as software is built, tested, deployed and iterated is an important enabler for doing this at scale.
Where will this go
Containerized applications on hybrid infrastructure give IT teams more flexibility than ever before and also improve the velocity of development to launch innovative features and products. As enterprises address the complexities and security challenges of running their IT across environments, a vendor-agnostic approach, with container management implemented across disparate environments, ensures the flexibility to take advantage of best-in-class services and lower the risk of technical debt.