关键概念


本文章介绍容器应用开发工具涉及的术语。

组织

租户,资源的所有者。

项目

同一组织下,更细粒度的人员和资源管理单元。DevOps 中的项目,可以对应到容器集群管理的命名空间(namespace)、代码仓库、和镜像仓库的项目,从而在项目级别实现资源的隔离。 在集群管理中,支持多个虚拟集群,它们底层依赖于同一个物理集群。 这些虚拟集群被称为名字空间。

应用

同一项目下,可以管理多个应用。根据开发流程和操作不同,应用分为以下几类:

  • Normal

  • Repository

  • Mobile

  • Chart

  • Function

容器

容器是一种特殊的进程模型,为应用的部署和运行提供所需的硬件、操作系统、存储、以及网络容量等资源,为应用开发提供高性能可扩展的管理服务。

集群

集群是计算、存储和网络资源的集合,利用这些资源运行各种基于容器的应用。

流水线

流水线(Pipeline),流水线的本质是应用研发到交付的流程,它把流程中的不同阶段和任务(构建、代码扫描、Jenkins 任务等)串接在一起,并且可以设置为自动化地按步骤执行,将原来独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排和可视化的工作。参见 管理流水线

任务

任务(Jobs),用来控制批处理型任务的资源对象,即仅执行一次的任务,它保证批处理任务的一个或多个 Pod 成功结束。任务管理的 Pod 根据用户的设置将任务成功完成就自动退出了。比如在创建工作负载前,执行任务,将镜像上传至镜像仓库。

容器组

容器组 (Pod)是进行资源调度的最小单位,每个 Pod 中运行着一个或多个密切相关的业务容器。参见 查看 Pod 信息

节点

节点(Node),集群中的计算能力由 Node 提供,集群中的 Node 是所有 Pod 运行所在的工作主机,可以是物理机也可以是虚拟机。

事件

Kubernetes(K8s)事件(Event)是 K8s 中的一种资源类型,当其他资源有状态变化、错误时,会自动创建和记录事。可以在应用和 K8s 不同类型资源的详情页中的 事件 页签查看。

事件关键信息包含:

  • Reason:对该操作的状态的可读描述。

  • Message:简短的、机器可理解的字符串,给出了过渡到对象当前状态的原因。

  • involvedObject:本事件所涉及的对象。

  • Type:K8s 中事件目前只有两种类型:“Normal” 和 “Warning”。

更多信息,参见 kubernetes 网站

存储卷

存储卷(Persistent Volume,PV)是集群内的存储资源,类似节点是集群资源一样。PV 独立于 Pod 的生命周期,可根据不同的 StorageClass 类型创建不同类型的 PV。

存储卷声明

存储卷声明(Persistent Volume Claim,PVC)是资源的使用者。类似 Pod 消耗节点资源一样,而 PVC 消耗 PV 资源。

临时存储

Pods 通常可以使用临时性本地存储来实现缓冲区、保存日志等功能。

  • 在项目中配置临时存储配额:项目管理 Quota。

  • 在 Pod 中配置临时存储配额:Deployment 的资源配额。

备注

超过临时存储配额时,Pod 将被驱逐。

更多信息,参见 Kubernetes 网站

无状态工作负载

无状态工作负载(Deployment),无状态工作负载表示对 Kubernetes 集群的一次更新操作。适用于运行完全独立但功能相同的应用场景。参见 配置 Deployment

有状态工作负载

有状态工作负载(StatefulSet),有状态工作负载支持应用部署、扩容、滚动升级时有序进行。如果希望使用存储卷为工作负载提供持久存储,可以使用 StatefulSet 作为解决方案的一部分。参见 配置 Stateful Set

服务

服务(Service)是一个最小的对象,与其它的终端对象(例如:Pod)类似。参见 配置 Service 和 Route

配置项

配置项(ConfigMap),配置项可用于存储细粒度信息如单个属性,或粗粒度信息如整个配置文件或 JSON 对象。您可以使用配置项保存不需要加密的配置信息和配置文件。参见 配置 Config Map 和 Secret

保密字典

保密字典(Secret),保密字典用于存储在 Kubernetes 集群中使用一些敏感的配置,例如密码、证书等信息。参见 配置 Config Map 和 Secret

存储类型

Storage,为管理员提供了描述存储 “Class(类)” 的配置方法。参见 配置 Storage

蓝绿部署

提供了一种零宕机的部署方式,在保留旧版本的同时部署新版本。新旧两个版本同时在线,若其中一个版本有问题可以快速处理。参见 以蓝绿部署模式发布应用

应用部署

应用的开发一般不是一步完成的,故而有迭代和版本的存在。在应用版本更新或项目迭代的过程中,需要对应用进行多次发布,即部署和重新部署。

发布记录

同一个 Chart 在同一个项目下部署产生的实例成为 发布记录(Release)。用户可在 应用商店 > 发布 菜单中查看所选项目下的所有发布记录。

  • 同一 Chart 的不同版本可在同一个发布记录上不断升级更新,每次升级 Helm 将检查原有版本和现有版本的差异进行覆盖更新。

  • 若一个 Chart 在一个项目下需要部署多个实例,需部署时输入不同发布名称。