gpt4 book ai didi

kubernetes - 在 Kubernetes 中,复制集的真正目的是什么?

转载 作者:行者123 更新时间:2023-12-05 02:32:04 24 4
gpt4 key购买 nike

我知道 k8s 资源的层次顺序。简而言之,

  1. 服务:服务是将应用程序暴露给外部世界(或在集群中)的东西。 (服务 类型,如 CluserIp、NodePort、Ingress 与这个问题关系不大。)
  2. 部署:部署负责保持一组 pod 的运行。
  3. 复制集:复制集是部署反过来用来保持 pod 集运行所依赖的。
  4. pod: - 一个 pod 由一个容器或一组容器组成
  5. 容器 - 实际需要的应用程序在容器内运行。

我想在这个问题中强调的是,为什么我们有replicaset。为什么 deployment 不直接处理或负责保持所需数量的 pod 运行。但是 deployment 反过来又依赖于 replicset

如果 k8s 是以这种方式设计的,那么拥有 replicaset 肯定会有一些好处。这就是我想要深入探索/理解的。

最佳答案

两者本质上服务于相同的目的。部署是一个更高的抽象,顾名思义,它处理整个部署(pod 集合)的创建、维护和升级。然而,ReplicationControllers 或副本集的主要职责是维护一组相同的副本(您也可以使用部署以声明方式实现,但在内部它会创建一个副本集来实现这一点)。

更具体地说,当您尝试对部署执行“滚动”更新时,例如更新镜像版本,部署会在内部创建一个新的副本集并执行部署。在推出期间,您可以看到同一部署的两个副本集。所以换句话说,Deployment 需要对 Replica sets 进行较低级别的“封装”来实现这一点。 enter image description here

关于kubernetes - 在 Kubernetes 中,复制集的真正目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71367425/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com