Kubernetes Objects
Now that you understand the role of master and node in a Kubernetes cluster, and understand the workflow model in Kubernetes Architecture, let’s look at more objects in the Kubernetes architecture.
Kubernetes’s objects represent:
Deployed containerized applications and workloads
Their associated network and disk resources
Other information about what the cluster is doing.
The most frequently used objects are:
Pod
Service
Volume
Namespace
The higher-level objects (Controllers) are:
ReplicationController
ReplicaSet
Deployment
StatefulSet
DaemonSet
Job
High-level objects are built upon basic objects, providing additional functionality and convenience features.
On the front end, Kubernetes gets things done via a group of objects, so with Kubernetes you only need to think about how to describe your task in the configuration file of objects, you don’t have to worry about how it will be implemented in container level. Under the hood, Kubernetes interacts with the container engine to coordinate the scheduling and execution of containers on Kubelets. The container engine itself is responsible for running the actual container image (for example, by Docker build).
There are more examples about each object and its magic power in Chapter 3. First, let’s look at the most fundamental object: pod.