Kubernetes 之 ReplicaSet

Kubernetes 之 ReplicaSet

ReplicaSet 定义

ReplicaSet 是 Kubernetes 中的一种副本控制器,其主要作用是控制其管理的 Pod 的预设副本数量。它会持续监听这些 Pod 的运行状态,在Pod发生故障时执行重启策略,当 Pod 数量减少时会重新启动新的 Pod 副本。但官方推荐不要直接使用 ReplicaSet,推荐用Deployment 取而代之,Deployment 是 ReplicaSet 的父集。ReplicaSet 无法灵活性升级回退和扩缩容,但 Deployment 支持了这两大功能。

ReplicaSet 使用

yaml 复制代码
apiVersion: apps/v1
kind: ReplicaSet
metadata:
  name: rs-nginx
  namespace: default
  labels:
    app: rs-nginx
spec:
  replicas: 2
  selector:
    matchLabels:
      app: pod-nginx
  template:
    metadata:
      labels:
        app: pod-nginx
    spec:
      containers:
        - name: nginx
          image: docker.io/k8s-test:v1.0
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 80
复制代码
root@k8s-master1:~# kubectl get pods -owide
NAME             READY   STATUS    RESTARTS   AGE   IP               NODE          NOMINATED NODE   READINESS GATES
rs-nginx-hljsk   1/1     Running   0          9s    10.244.194.120   k8s-worker1   <none>           <none>
rs-nginx-t85wr   1/1     Running   0          9s    10.244.126.22    k8s-worker2   <none>           <none>
root@k8s-master1:~# kubectl delete pods rs-nginx-hljsk
pod "rs-nginx-hljsk" deleted
root@k8s-master1:~# kubectl get pods -owide
NAME             READY   STATUS    RESTARTS   AGE   IP               NODE          NOMINATED NODE   READINESS GATES
rs-nginx-t85wr   1/1     Running   0          41s   10.244.126.22    k8s-worker2   <none>           <none>
rs-nginx-xsmdm   1/1     Running   0          4s    10.244.194.121   k8s-worker1   <none>           <none>
root@k8s-master1:~# kubectl get rs
NAME       DESIRED   CURRENT   READY   AGE
rs-nginx   2         2         2       64s
相关推荐
chenglin01625 分钟前
架构设计——云原生与分布式系统架构
云原生·架构
007php0071 小时前
Go 语言常用命令使用与总结
java·linux·服务器·前端·数据库·docker·容器
你是我的日月星河2 小时前
Docker部署单节点使用KRaft存储数据的Kafka与可视化界面Kafka-Map
docker·容器·kafka
Cyber4K3 小时前
企业级-搭建CICD(持续集成持续交付)实验手册
ci/cd·云原生·容器
搞不懂语言的程序员4 小时前
docker 搭建zookper集群,快照虚拟机多机模拟
运维·docker·容器
Rysxt_4 小时前
Docker Swarm 与 Kubernetes (K8s) 全面对比教程
docker·容器·kubernetes
Britz_Kevin6 小时前
从零开始的云计算生活——第五十四天,悬梁刺股,kubernetes模块之组件与网络
网络·kubernetes·生活
Moss Huang12 小时前
docker-runc not installed on system
java·docker·容器
辉辉健身中18 小时前
docker和k8s的区别
docker·容器·kubernetes
Json_19 小时前
使用Docker部署ZLMediaKit流媒体服务器实现gb/t28181协议的设备
服务器·docker·容器