【问题标题】:Difference pod and deployment [duplicate]差异 pod 和部署 [重复]
【发布时间】:2021-02-03 15:44:38
【问题描述】:

我很难理解 Kubernetes 中 Deployment 和 Pod 之间的区别。

Deployment 为 Pod 和 ReplicaSet 提供声明式更新。

Pod 是您可以在 Kubernetes 中创建和管理的最小可部署计算单元。

似乎kind:Pod 可以互换使用kind: Deployment 并且部署允许副本(这几乎是 Kubernetes 的重点)。你为什么会使用 Pod?

有人可以吗:

  • 解释 Pods/Deployments 之间的本质区别 +
  • 描述一个使用 pod 优于部署的用例?

【问题讨论】:

    标签: kubernetes cloud kubernetes-pod kubernetes-deployment


    【解决方案1】:

    简而言之:

    使用 Pod

    1. 如果它死了,它就死了。期间。
    2. 您只能定义一个特定 pod 的副本。如果您需要 X 个副本,则必须在 YAML 文件中定义 X 个 pod
    3. 通常您永远不会看到直接在生产环境中创建的 pod。太不靠谱了。为什么 ?因为 1。

    使用部署

    1. 您可以定义 pod 的所需状态。如果 pod 死亡(无论出于何种原因),则部署会创建新的 pod。
    2. 和更通用的:您可以定义您希望让 X 运行同一个 pod 的副本。如果其中一个或多个死亡,部署会创建新的以匹配 X

    【讨论】:

    • 更准确地说,Deployment 创建了一个 ReplicaSet,然后创建了一组相同的无steteless Pod,w.r.t.在 Deployment 的 yaml 文件中指定的 pod 模板,以及 replica 字段的值(它定义了 pod 集的大小)。 Deployment 可以管理多个 ReplicaSet,以便对托管的 Pod 进行滚动更新,从而在不中断服务的情况下升级应用的版本。
    猜你喜欢
    • 2014-01-03
    • 1970-01-01
    • 2020-06-02
    • 1970-01-01
    • 2021-10-16
    • 2010-10-06
    • 2021-11-30
    • 2020-07-20
    相关资源
    最近更新 更多