Table of Contents
Kubernetes adoption is quickly accelerating, and enterprises are now in a transition phase. In the last few years, we have seen an increasing interest in container-based application development. As a result, IT organizations started to implement a proof of concepts and laboratories, which moved later to development and test platforms. In this period, the entire industry has matured, both in terms of the core technology (container formats and development tools) and orchestrators, with several companies trying to push their solutions (i.e., Docker Swarm, Mesos DC/OS, Google Kubernetes, and others).
Now that Kubernetes is the clear winner, the number of organizations moving to the production phase is finally growing as well. In most cases, Kubernetes infrastructures are still relatively small, and applications running on them are fairly simple, with limited data storage needs. On the other hand, more and more stateful applications are migrating to these platforms, requiring additional resources and performance. At the same time, enterprises of all sizes are embracing hybrid cloud strategies that are becoming more complex and structured. We are quickly moving from a first adoption phase where data and applications are distributed manually and statically in different on-premises and cloud environments to a new paradigm in which data and application mobility is the key for flexibility and agility.
Now, organizations want the freedom to choose where applications and data should run dynamically, depending on several business, technical, and financial factors. They choose the public cloud for its flexibility and agility, while on-premises infrastructures are still a better option from efficiency, cost, and reliability perspectives. In this scenario, it is highly likely that development and testing are made on the public cloud while production could be on-premises, in the cloud, or both, depending on the business, regulatory, economic, and technical needs of the particular enterprise.
Kubernetes is instrumental in executing this vision, but it needs the right integration with infrastructure layers, such as storage, to make it happen. Persistent and reliable data storage, alongside data management and security, are vital factors to consider when evaluating Kubernetes deployments in enterprise environments today. These factors expand the scope of the orchestrator to a broader set of applications and use cases across different types of on-premises and cloud infrastructures. The goal is to provide a common data storage layer that is abstracted from physical and cloud resources, with a standard set of functionalities, services, protection, security, and management.