Understanding all about Kubernetes ArchitectureLaurie Velez | February 19, 2020 | 0 | E-commerce
Kubernetes is an open-source platform that has increasingly become popular to manage and run applications. Kubernetes makes use of the API server architecture to bring out the basic and advance need for application development. Since the introduction to Kubernetes architecture, poor scalability and security issues have all been in the past. Kubernetes security is properly configured with secure transport layer security (TLS) protecting your information.
The Kubernetes platform can be categorized into two aspects, which includes:
- Master components
The master components can be accessed through the control panel when running master nodes of clusters. The master component is the server area of Kubernetes that gives access to the management of each node by providing cluster service and management of works from the pod or administrative interface.
Under the control panel of the master component, the services provided include:
- Kube-API server
The Kubi-API server is an API component that allows all workers to communicate effectively with another master. It can also act as the interface for all cluster communications as well as a secure port from API validation for all past and future resources generated. Kubernetes made it easy to communicate directly with the API server through a short command of kubectl or by navigating manually through the Kube-API server interface.
- Kube-controller manager
Kubernetes platform gives you an introduction to Kubernetes architecture with the ability to manage your application through various controller options while comparing it with other specs. The controller options include:
- Node control
- Daemon control
- Deployment management and control
- Namespace control
The comparison status will allow you to understand if the developing cluster matches the desired spec. All action concerning the control of the cluster can be achieved through the Kube-controller manager after the developing data state is stored in etcd.
Kubernetes uses an orchestration framework that is important for the Kube-scheduler when scheduling pods. During the scheduling of pods, there are various options to consider, which includes:
- Nodes resources
- Application resources
- Interference between the pod spec and nodes affecting the scheduling process.
- Node components
Node components are all about applications and services, which rely on the worker’s nodes to receive instructions. The worker’s nodes are for clients and functions by connecting to the master node server to execute instructions and run containers. The node components are easy to understand and can serve as a step to the introduction to Kubernetes architecture. In the Kubernetes platform, the logical and organization aspect is controlled by the master component while the components of the node manage access to containers from the network proxies.
The node components comprise of the:
Kubelet is a node component that runs as an agent in managing all active containers running in the cluster. With this process, the Kubelet makes sure that all running state of the containers in a pod is suitable for the spec stored. Even as at that, the Kubelet agent will still make sure that the container runs effectively at the desired state without any interference.
As the name suggests, the Kube-proxy component is related to network proxy that runs in each node, which can be either TCP, UDP, UDP or SCTP. It is through the Kube-proxy that each Kubernetes nodes interact.
- Container Runtime
The container runtime is responsible for all the actions relating to containers in the pods. It also ensures that all containers like the Docker and CRI-O run effectively with the appropriate features. The container runtime specifies in managing the orchestration and coordination of the containers with an enhanced introduction to Kubernetes architecture panel.
Visiting sites like kublr.com is a great way to learn more about Kubernetes architecture.