其他分享
首页 > 其他分享> > kuberbeters、Pod 控制器ReplicaSet

kuberbeters、Pod 控制器ReplicaSet

作者:互联网

十年河东,十年河西,莫欺少年穷

学无止境,精益求精

1、Pod控制器介绍

2、ReplicaSet(RS)

apiVersion: apps/v1 # 版本号 
kind: ReplicaSet # 类型 
metadata: # 元数据 
  name: # rs名称
  namespace: # 所属命名空间 
  labels: #标签 
    controller: rs 
spec: # 详情描述 
  replicas: 3 # 副本数量 
  selector: # 选择器,通过它指定该控制器管理哪些po
    matchLabels: # Labels匹配规则 
      app: nginx-pod 
    matchExpressions: # Expressions匹配规则 
      - {key: app, operator: In, values: [nginx-pod]} 
template: # 模板,当副本数量不足时,会根据下面的模板创建pod副本 
  metadata: 
    labels: 
      app: nginx-pod 
  spec: 
    containers: 
      - name: nginx 
        image: nginx:1.17.1 
        ports: 
        - containerPort: 80

3、创建ReplicaSet控制器

apiVersion: apps/v1 # 版本号
kind: ReplicaSet # 类型
metadata: # 元数据
  name: pc-replicaset # rs名称
  namespace: dev # 命名类型
spec: # 详细描述
  replicas: 3 # 副本数量
  selector: # 选择器,通过它指定该控制器可以管理哪些Pod
    matchLabels: # Labels匹配规则
      app: nginx-pod
  template: # 模块 当副本数据不足的时候,会根据下面的模板创建Pod副本
    metadata:
      labels:
        app: nginx-pod
    spec:
      containers:
        - name: nginx # 容器名称
          image: nginx:1.17.1 # 容器需要的镜像地址
          ports:
            - containerPort: 80 # 容器所监听的端口

资源清单中,apiVersion 为 apps/v1 ,为什么是这个值?可通过如下指令查询

[root@master ~]# kubectl explain rs   #ReplicationSet 简称为 rs
KIND:     ReplicaSet
VERSION:  apps/v1
kubectl apply -f pc-replicaset.yaml
kubectl get pod,rs -n dev

 

kubectl get rs pc-replicaset -n dev -o wide

可通过编辑的模式、命令两种方式进行扩缩

编辑模式:

kubectl edit rs pc-replicaset -n dev

进入编辑器后

再次查看Rs

 

 

命令模式

kubectl scale rs pc-replicaset --replicas=2 -n dev

执行上述命令后,再次查看

镜像升级

编辑模式,直接编辑rs

kubectl edit rs pc-replicaset -n dev

 

命令模式

kubectl set image rs pc-replicaset nginx=nginx:1.17.2 -n dev

删除RS

# 在kubernetes删除ReplicaSet前,会将ReplicaSet的replicas调整为0,等到所有的Pod被删除后,再执行ReplicaSet对象的删除
kubectl delete rs pc-replicaset -n dev
kubectl delete rs pc-replicaset -n dev --cascade=false
kubectl delete -f pc-replicaset.yaml

@天才卧龙的博客

 

标签:kubectl,控制器,ReplicaSet,rs,kuberbeters,nginx,Pod
来源: https://www.cnblogs.com/chenwolong/p/ReplicaSet.html