在 kubernetes 中每个部署可以配置多少 pods?

How many pods can be configured per deployment in kubernetes?

根据 Kubernetes 文档,Deployment 和 ReplicaSets 之间存在 1:1 对应关系。同样,根据 replicas 属性,一个 ReplicaSet 可以管理 n 个相同性质的 pods。这是正确的理解吗?

逻辑上(假设 Deployment 是 wrapper/Controller)我觉得 Deployment 可以有多个 replicaSet,每个 replicaSet 可以有多个 Pods(相同或不同类型)。如果这个说法是正确的,有人可以分享一个示例 K8S 模板吗?

1.) 是的,Deployment 是一个 ReplicaSet,在更高级别进行管理。

2.) 不,一个 Deployment 不能有多个 ReplicaSet,一个 Deployment 几乎就是一个 ReplicaSet。通常你从不直接使用 ReplicaSet,部署就是你所需要的。不,你不能在一个 Deployment 或 ReplicaSet 中有不同的 Pod 模板。复制的重点是创建相同事物的副本。

至于每个部署可以有多少 pods 运行,除非另有说明,否则实际上并非每个部署都有限制。通常,您要么在 Deployment 中设置所需的副本数,要么使用 Horizo​​ntal Pod Autoscaler,最小和最大数量 Pods。除非节点限制更小,否则以下限制适用:

  • 每个节点不超过 100 pods
  • 总计不超过150000pods

https://kubernetes.io/docs/setup/best-practices/cluster-large/

As per the Kubernetes documentation there is 1:1 correspondence between Deployment and ReplicaSets. Similarly depending on the replicas attribute , a ReplicaSet can manage n number of pods of same nature. Is this a correct understanding ?

是的。它将创建 pods 等于 replicas 字段值的值。 Deployment 管理一个副本集,您不会t/shouldn直接与副本集交互。

Logically (assuming Deployment is a wrapper/Controller) I feel Deployment can have multiple replicaSets and each replicaSet can have multiple Pods (same or different kind). If this statement is correct, can some one share an example K8S template ?

当您进行滚动部署时,它会使用新的 pods(更新的容器)创建一个新的 ReplicaSet,并缩减旧副本集中的 pods 运行。
我猜它不支持 运行 两个具有不同 pod/containers.

的不同 ReplicaSets(不是部署更新)

https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#updating-a-deployment

部署更新后:
运行:

kubectl describe deployments

输出:

.
.
.
OldReplicaSets:  <none>
NewReplicaSet:   nginx-deployment-1564180365 (3/3 replicas created)