When it comes to container orchestration, nobody’s sitting on the fence anymore. In the four short years since it launched, Kubernetes has become the de facto standard, the platform chosen by a list of tech giants that includes AWS, Microsoft, Dell, Cisco, IBM, Intel, Red Hat, SAP, VMware and more. In fact, Kubernetes is even supported by Docker, in what is surely an admission that Docker’s own competing product, Swarm, can’t hope to beat Kubernetes.
Kubernetes’ revenues are looking as good as its reputation. 451 Research reports that application containers will be a $2.7 billion market by 2020, and it’s a safe bet that Kubernetes will claim the lion’s share of that spending.
Containers in general provide a huge opportunity to the modern enterprise. They’re a boon to productivity, as they allow developers to spend less time debugging and more time writing code. They reduce server costs, because they can accommodate more applications than a traditional server deployment. Containers can run anywhere, thus expanding the range of deployment options available. And containers isolate the components of complex applications, easing worries about unintended knock-on effects when updates are performed.
The reasons for choosing Kubernetes, in particular, go well beyond its industry-wide adoption. It actually builds on two earlier iterations of Google’s internal orchestration platform, and it reflects over 15 years of experience with what was perhaps the most demanding production environment in the history of computing. Though Kubernetes involves a steeper learning curve than Docker Swarm, it offers a number of compensating benefits:
For organizations that hesitate to go all in with the cloud, Kubernetes offers reassuring flexibility. It can run on-premises in your own data center, in a public cloud, or in a hybrid cloud environment. With Kubernetes, the same commands apply throughout.
Kubernetes automatically scales up your cluster the moment you need it. When the demand subsides, Kubernetes immediately scales back down to make sure your technology dollars aren’t wasted.
- Consistency in deployments
Deployments in the pre-container era were fussy, idiosyncratic and time-consuming. Containers solve that problem by mass-producing identical deployments that are easy to replace. And because Kubernetes can run anywhere, deployments remain consistent across clouds, bare metal and local development environments. For developers, this means less time debugging and more time doing work with strategic purpose.
- Harmony between operations and development
The sophistication and reliability of Kubernetes can work to ease the tradition tensions that exist between development and operations personnel. Now, at last, developers can innovate through rapid iteration cycles without jeopardizing the system stability that’s so important to operations.
Though containers are a relatively recent addition to enterprise technology, they are now pretty much a necessity in development. If your organization is already using containers, congratulations — incorporating Kubernetes will not be a problem. If you’re new to containers, you’ll have to begin by containerizing your applications, but the task is not as daunting as it might sound.
Find out how Pythian can help you establish or improve your container environment.