Kubernetes is eating the (Container) World
Even though no one had ever heard about Kubernetes only 5 years ago, these days the interest in it is already high and still growing. On GitHub it is amongst the top 50 repositories with the most stars. Right now, way more than 25,000 solved tickets and almost 75,000 commits show that it has a very active community. Kubernetes’ parent foundation, the Cloud Native Computing Foundation (CNCF) is the home for other projects that are based on Kubernetes, for example Helm (a package manager), Rook (a storage manager) or Linkerd (a Service Mesh). Even outside of the CNCF there are many projects that build up on Kubernetes, e. g. several Function as a Service implementations. In addition to the technical development, the CNCF offers certifications for the usage (CKAD) and the management (CKA) of clusters. Additionally there are many Meetups and even whole conferences that are dedicated to the topic Kubernetes, e. g. the KubeCon in Barcelona or the KubeCologne in Cologne.
There is an official list of services that use Kubernetes. Especially interesting and impressive are Pokemon Go and GitHub.
This huge popularity can probably be led back to the fact that it is completely open source and that many big players like Google are supporting the development of Kubernetes.
All these facts show that Kubernetes is no longer an insider tip and that it is a technology that is already widely adapted in several areas and that it is still growing and becoming more versatile. Because we, the Cloudogu Team, are convinced by the advantages of this technology, Kubernetes has become an important pillar for the development and the operation of our services. That is why we would like to make our contribution in spreading the word about Kubernetes in Germany.
How we started using Kubernetes
We had these requirements concerning the infrastructure for the backend of our EcoSystem:
- Provisioning with Continuous Delivery is a must
- Seamless addition of more services
- Support of various programming languages and frameworks
- On demand increase of processing power to face higher load
- Low maintenance effort in the view of required working time
- Abstraction from the underlying hardware
We decided to go with a managed Kubernetes cluster in the Google Cloud. In retrospect, this decision is worth a mint, because especially in times of Spectre and Meltdown our maintenance effort was relatively low. Since the initial commissioning of our cluster we successfully migrated several more services to Kubernetes and we were able to gradually increase its processing power on demand and cost efficient. If required in the future, we are even able to easily migrate applications and services to an on-premises cluster.
Kubernetes – here to stay
Of course, Kubernetes is not the solution for any given problem. It is always advisable to consider the individual constraints, just like with any other technology. Nevertheless, Kubernetes will be an important topic for a very long time, because the advantages and the surrounding ecosystem are huge. At times, Kubernetes is even considered to be the distributed Linux of the cloud. Considering the latest development, I am sure that its adoption will increase significantly. Especially in Germany, as a recent study (only available in German) shows that the adoption of DevOps in Germany slightly below average compared to the other European countries.
We distilled our experiences with Kubernetes into courses with strong practical orientation (only available in German). Amongst others, we offer a course on the operation of your own cluster and one on the usage of a cluster as a software developer including the preparation for the CKAD certification offered by the CNCF. By the way, all our trainers are certified themselves. Feel free to take a look at them.
What are your experiences with Kubernetes? Send us a tweet @cloudogu!