Files
2020-12-04 14:10:01 +08:00

6.3 KiB
Raw Permalink Blame History

title, weight, description
title weight description
工作负载 50 理解 PodsKubernetes 中可部署的最小计算对象,以及辅助它运行它们的高层抽象对象。

{{< glossary_definition term_id="workload" length="short" >}}

无论你的负载是单一组件还是由多个一同工作的组件构成,在 Kubernetes 中你 可以在一组 Pods 中运行它。 在 Kubernetes 中,Pod 代表的是集群上处于运行状态的一组 {{< glossary_tooltip text="容器" term_id="container" >}}。

Pod 有确定的生命周期。例如,一旦某 Pod 在你的集群中运行,Pod 运行所在的 {{< glossary_tooltip text="节点" term_id="node" >}} 出现致命错误时, 所有该节点上的 Pods 都会失败。Kubernetes 将这类失败视为最终状态: 即使节点后来恢复正常运行,你也需要创建新的 Pod。

不过,为了让用户的日子略微好过一些,你并不需要直接管理每个 Pod。 相反,你可以使用 负载资源 来替你管理一组 Pods。 这些资源配置 {{< glossary_tooltip term_id="controller" text="控制器" >}} 来确保合适类型的、处于运行状态的 Pod 个数是正确的,与你所指定的状态相一致。

这些工作负载资源包括:

  • DeploymentReplicaSet (替换原来的资源 {{< glossary_tooltip text="ReplicationController" term_id="replication-controller" >}});
  • StatefulSet;
  • 用来运行提供节点本地支撑设施(如存储驱动或网络插件)的 Pods 的 DaemonSet
  • 用来执行运行到结束为止的 JobCronJob

你可能发现还有两种支撑概念很有用:

{{% heading "whatsnext" %}}

除了阅读了解每类资源外,你还可以了解与这些资源相关的任务:

一旦你的应用处于运行状态,你就可能想要 以服务 使之在互联网上可访问;或者对于 Web 应用而言,使用 Ingress 资源将其暴露到互联网上。