On Kubernetes, it is rare to create a Pod directly, but in most cases the creation, scheduling, and automation of a set of Pod replicas through controllers such as RC, Deployment, DaemonSet, Job, etc.
1. Controller type
In the earliest versions of Kubernetes there were not so many Pod replica controllers, only one Pod replica Controller RC (Replication Controller), which was designed and implemented like this: RC is independent of the Pod it controls, and controls the creation and destruction of target Pod instances through the loosely coupled association of the Label Label. With the development of Kubernetes, A new successor, Deployment, has emerged in RC to automate the Deployment, version update, rollback and other functions of Pod copies.
Technically, RC’s successor is not Deployment, but ReplicaSet, which further enhances the flexibility of the RC tag selector. Previously RC’s label selector could only select one label while Replic