什麼是RelicaSet?
ReplicaSet是為了保持維護的期待Pod副本數量與現時Pod副本數量一緻。如在由于Pod異常退出導緻期待的副本數量不足時,會自動建立新的Pod保證到與期望的Pod副本數量一緻。
ReplicaSet的工作流程
定義副本數量,定義一個選擇器,指定選擇器如何擷取到具有特定辨別Pod,定義一個模闆指定新建立的Pod的期望狀态。
通過yaml資源定義清單建立
kubectl apply -f rs-demo.yaml
apiVersion: apps/v1
kind: ReplicaSet
metadata:
name: nginx
labels:
app: nginx
spec:
replicas: 3 #副本數量
selector: #标簽選擇器
matchLabels:
app: nginx
template: # Pod的模闆
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.16
擷取ReplicaSet的狀态
kubectl get rs

擷取Pod的數量,與ReplicaSet定義的一緻
kubectl get pods
手動删除Pod,ReplicaSet自動建立Pod保持副本數量與定義的一緻
kubectl delete pod nginx-pxgbn
kubectl get pods
删除ReplicationController
kubectl delete -f rs-demo.yaml
kubectl delete rs nginx
使用技巧
官方不建議單獨使用ReplicaSet,建議使用Deployment來代替ReplicaSet的單獨使用,通過Deployment來建立ReplicaSet,Deployment比ReplicaSet多了例如支援版本復原等新功能特性。