IBM Cloud Private behind the scene blog series kubernetes architecture

In this blog series I would explain some core concept about kubernetes to understand better how is life saver ICP for an IT department that facing for the first time this new technologies.
In this post I explain how it works a plain kubernetes architecture.

Kubernetes has two main components master and worker node.
Master is the main component, and is responsible in managing worker nodes state.
Worker node is responsible to mantain all the PODS ( and not a simple docker image but will cover better on the next post POD concept ) up and running.

Before to go deeper inside the architecture it's important to understand these two components.

Master node has internally four important components:

  • REST API Server to manage kubernetes and pod state( kube-apiserver)
  • Scheduler watching for new pod to assign on node (kube-scheduler)
  • Controller Manager is a complex concept, in short terms is responsibile about the cluster management and evolution state a full description is here
  • ETCD is a key value store which Kubernetes uses for storage object API.
Worker node has internally two important components plus docker or rkt to run container, keep in mind rkt is experimental support docker is mature and this why is used in ICP:
  • Kubelet is a node-agent that watch for pod assigned via API Server or locally via yaml file.s
  • kubeporxy manage network pod communications.
For  production enviroment  high availability is the only allowed solution, in kubernetes high availibilty consist in multiple master, multiple nodes and etcd in cluster mode to ensure persistent storage API in HA.
IBM expand kubernets concepts for the enterprise world in five components:
  • Boot node
  • Master node
  • Worker node
  • Proxy node
  • Management node
A clear description of these components can be found here
What is cool in ICP is how IBM is covering some other important aspects like:

  • A simplified UI that help IT department in manage grafically most of the common administration tasks ( really cool than the standard kubernetes interface )
  • logging ( with kibana )
  • security advisory ( scan containers for vulnerability )
  • automated deployment of GlusterFS
  • Improved performance for HA enviroment by splitting kubernets compoenet in different servers.
In the next post I'll cover what is a POD and how network it works inside ICP / Kubernets.


Comments

Popular posts from this blog

Happy Easter Think2018!

Last steps to install IBM Cloud Private v2.1

How to create and test ssh keys for IBM Cloud Private