Technology Radar TemplateTechnology Radar Template
This item was not updated in last three versions of the Radar. Should it have appeared in one of the more recent editions, there is a good chance it remains pertinent. However, if the item dates back further, its relevance may have diminished and our current evaluation could vary. Regrettably, our capacity to consistently revisit items from past Radar editions is limited.
Adopt

Kubernetes has evolved into the quasi-standard for container orchestration: Nearly every cloud provider offers managed Kubernetes, and even Docker Enterprise utilizes Kubernetes.

We run several production systems with Kubernetes and employ it in concepts such as:

  • Utilizing "secrets" and "configmaps" to manage configurations for applications. By updating these resources with an automated configuration pipeline, you have an excellent method for configuration management.
  • Implementing autoscaling of Kubernetes nodes and utilizing "horizontal pod scaling" within Kubernetes allows for elastic scaling.
  • Leveraging support for managing permissions with OAuth, enabling you to secure Kubernetes with Keycloak (SSO).
  • Utilizing Kubernetes' extensibility and API for automation and customization. There is a growing ecosystem around extensions, which adds additional features.
Assess

Kubernetes is a container orchestration platform that supports many infrastructure providers. It enables you to deploy containers and manages the running, scaling, or self-healing of your applications based on configurations you provide. It is built on years of knowledge and experience gained by Google through its use of containers.

At AOE, we initially implemented Kubernetes in a test environment on bare metal to experiment with its capabilities. Currently, it is utilized for running internal AOE applications such as dashboards and for running builds in containers. We have also begun using it for upcoming projects to manage several services. There are tools available to automate the setup of Kubernetes in AWS, such as Cops. Another helpful tool is Minikube, which allows for testing and running Kubernetes locally.