Chapter 2. Introduction to containers and orchestration with Kubernetes 25
/SM590000EnsurerRedundancy of container
/SM590000Manage load balancing
/SM590000Log and monitor services
2.4.2  Kubernetes architecture, system, and components
Kubernetes is highly portable with open source development and design that is heavily 
influenced by Google’s Borg system. Kubernetes and DevOps grew simultaneously and 
appeared as the leading self-serviced Platform as a Service (PaaS). The following 
components the Kubernetes architecture are shown in Figure 2-12: 
/SM590000Node: A logical collection of system resources to support containers. Node contains all 
required services to run Pods.
/SM590000Cluster: A collection of nodes with at least one master node and several worker nodes.
/SM590000Kubernetes master: Through the API server, the Kubernetes master communicates with 
nodes in which application and containers are deployed. Several services are hosted from 
containers. The scheduler assigns nodes to Pods based on policies and constraints that 
are defined in a control plan. 
/SM590000Kubelet: This agent process runs on each node. This process tracks the status of the node 
and other configuration parameters from the Control Plan. This information is fetched from 
the API server. 
/SM590000Pods: These individual objects can be run or scheduled as a stand-alone service. Each 
pod can have one or more containers and features its unique IP within the cluster. 
Therefore, each pod simulates an independent hosting environment where load balancing 
is achieved by using the same service that can be hosted by using the same port. 
Pod-specific configurations are placed in PodSpec by using YAML or JSON. PodSpec 
communicates with Kubelet by using the API server.
/SM590000Deployments: A deployment is a YAML object that defines the Pods and the number of 
container instances (called replicas) for each Pod.
/SM590000Replicas and ReplicaSets: The number of replicas that you want to have running in the 
cluster are defined by using a ReplicaSet, which is part of the deployment object.
Figure 2-12   Kubernetes architecture