26 Red Hat OpenShift and IBM Cloud Paks on IBM Power Systems: Volume 1
2.4.3  Kubernetes operating environment, objects, and basic operations
This section describes the Kubernetes operating environment, including its objects and basic 
operations.
Master node 
This node runs multiple controllers that are responsible for the health of the cluster, 
replication, scheduling, endpoints (linking Services and Pods), Kubernetes API. It interacts 
with the underlying cloud providers and others. Generally, it ensures that everything is 
running and monitors worker nodes.
Worker node
This node runs the Kubernetes agent that is responsible for running Pod containers by way of 
Docker or rkt, requests secrets or configurations, mounts required Pod volumes, performs 
health checks, and reports the status of Pods and the node to the rest of the system.
Pod
Within a cluster, a pod encapsulates an application that is composed of one or more 
processes from one and at time multiple containers. Every pod includes dedicated I/O 
resources, such as storage, a unique IP, and a set of configuration properties for the runtime 
environment. These features make pod the smallest unit of deployment and basic unit of 
execution. 
Docker is the most popular container run time that is used for Kubernetes Pod1. Depending 
on associated containers, pods are available in the following types:
/SM590000Pod with a single container: This configuration is the most common.
/SM590000Pod with multiple containers: Must be colocated containers to serve a functional 
requirement.
/SM590000Networking: Each pod shares its namespace, IP, and port. However, for optimal 
performance, containers in same Pod communicates with the localhost identity. 
/SM590000Storage: A pod specifies shared storage volume. All containers in a pod can share 
persistent data through this volume.
After a pod is created and is scheduled to run on a node, it persists until one of the following 
actions occurs: 
/SM590000The process is ended.
/SM590000The pod objected is deleted.
/SM590000The pod is evicted for lack of resources. 
/SM590000The node fails. 
A pod alone is not self-healing, which means that during any failure, a pod does not attempt to 
restart. A pod is the encapsulation of containers, which primarily are executable entities. 
Therefore, to “run a pod” means running an application and service through containers.
1  https://www.sumologic.com/blog/kubernetes-vs-docker/