Kubernetes is an open source container management tool. It is a Go language-based (https://golang.org), lightweight and portable application. You can set up a Kubernetes cluster on a Linux-based OS to deploy, manage, and scale Docker container applications on multiple hosts.
Kubernetes is made up of the following components:
- Kubernetes master
- Kubernetes nodes
- etcd
- Kubernetes network
These components are connected via a network, as shown in the following diagram:
The preceding diagram can be summarized as follows:
- Kubernetes master: It connects to etcd via HTTP or HTTPS to store the data
- Kubernetes nodes: It connect to the Kubernetes master via HTTP or HTTPS to get a command and report the status
- Kubernetes network: It L2, L3 or overlay make a connection of their container applications