名词对照
Kubernetes,简称 K8s,是一个开源的容器编排引擎,可实现容器化应用进行自动化部署、 自动化扩缩、管理维护等功能。而容器服务VKE 通过深度融合新一代云原生技术,提供以容器为核心的高性能 Kubernetes 容器集群管理服务,助力用户快速构建容器化应用。
本文为您介绍容器服务VKE 与原生 Kubernetes 的名词对照情况。
容器服务VKE | 原生 Kubernetes | 参考链接 |
集群 | Cluster | |
节点 | Node | |
节点亲和性 | NodeAffinity | |
容器 | Container | |
容器组 | Pod | |
镜像 | Image | |
命名空间 | Namespace | |
资源配额 | Resource Quota | |
资源限制 | Limit Range | |
工作负载 | Workload | |
无状态负载 | Deployment | |
有状态负载 | StatefulSet | |
任务 | Job | |
定时任务 | CronJob | |
守护进程 | DaemonSet | |
工作负载亲和性 | PodAffinity | |
工作负载反亲和性 | PodAntiAffinity | |
服务 | Service | |
路由规则 | Ingress | |
集群 IP | Cluster IP | |
节点端口 | NodePort | |
负载均衡 | 负载均衡 | |
存储类 | StorageClass | |
存储卷 | PersistentVolume | |
存储卷声明 | PersistentVolumeClaim | |
配置项 | ConfigMap | |
保密字典 | Secret | |
指标伸缩 | HPA | |
注解 | Annotation | |
标签 | Label | |
污点 | Taint | |
选择器 | LabelSelector | |
触发器 | Webhook | |
端点 | Endpoint | |
模板 | Template |
概念 | 说明 |
容器服务托管版 | 容器服务的一种产品形态,由容器服务管理和维护 Kubernetes 集群的 Master 节点,用户只需要创建和部署集群中运行负载所需的 Worker 节点,从而降低用户使用 Kubernetes 容器集群的难度和成本。 |
集群 | 对应 Kubernetes 中的 Cluster,是容器服务中计算、存储和网络资源的集合。 |
节点 | 对应 Kubernetes 中的 Node,是容器服务集群组成的基本元素。节点主要包括:Master 节点(控制节点)和 Worker 节点(计算节点/工作节点)。应用实际部署在 Worker 节点上,支持通过配置随机部署在 Worker 节点上或部署在指定的 Worker 节点上。
容器服务中的 节点 一般指 Worker 节点。 |
Master 节点 | 集群的控制节点。主要由如下四个组件构成:
• API Server:提供各模块之间的数据交互和通信的枢纽。
• ETCD:分布式数据存储组件,负责存储集群的配置信息。
• Controller Manager:通过定义资源期望状态,实现集群资源编排,保证集群中各种资源的实际状态和用户定义的期望状态一致。
• Scheduler:负责应用调度的组件,通过配置节点/Pod 实例亲和性等,将容器调度到 Worker 节点上运行。集群托管模式下,Kubernetes 集群的 Master 节点由容器服务集中管理和维护,用户不需要关心。 |
Worker 节点 | 集群的计算/工作节点,即运行容器化应用的节点。容器服务的 Worker 节点目前为云服务器(ECS 实例)和虚拟节点(Virtual Node)。
Worker 节点主要运行以下组件:
• Kubelet:Worker 节点的代理组件,主要负责与 Container Runtime 交互,并与 API Server 协同管理节点上的容器。
• Kube-proxy:网络代理,解决节点上应用间的访问问题。
• Container Runtime:容器运行时,如 Containerd,主要用于拉取容器镜像,管理容器的全生命周期。 |
节点池 | 集群内具有相同配置的一组节点的聚合,具备对节点资源快速弹性伸缩的能力,帮助用户高效管理 Kubernetes 集群中的节点资源。
容器服务中的节点池,分为如下两种:
• 自定义节点池:用户可自定义节点池中的节点配置、系统配置、安全配置、高级配置、更多配置等配置能力,同时支持扩缩容、编辑节点数量等。
• 默认节点池:在容器服务控制台上添加已有 ECS 实例到集群时,用来管理此类节点的节点池。默认节点池的安全配置、高级配置、更多配置等配置能力与标准节点池一致,但不具备扩缩容、编辑节点数量等能力。 |
容器网络 | 对应 Kubernetes 中的 CNI 资源,提供实现容器集群网络方案的技术插件。容器服务目前提供如下两种容器网络模型:
• Flannel:独立的 Underlay 容器网络模型,配合 VPC 的全局路由能力,实现集群高性能的网络体验。
• VPC-CNI:基于私有网络的弹性网卡 ENI 实现的 Underlay 容器网络模型,具有较高的网络通信性能。 |
命名空间 | 对应 Kubernetes 中的 Namespace,是对一组资源和对象的抽象。命名空间用于划分集群资源,实现资源隔离。 |
容器组 | 又称 Pod 实例(对应 Kubernetes 中的 Pod),是容器服务中可部署管理的最小计算单元。一个容器组封装一个或多个容器(Container)、存储资源(Volume)、一个独立的网络 IP 以及管理控制容器运行方式的策略选项。 |
容器 | 对应 Kubernetes 中的 Container,包含应用及其运行依赖环境的软件包。借助容器,用户可以在相对独立的环境中运行程序。 |
容器镜像 | 对应 Kubernetes 中的 Image,是封装了应用程序及其所有软件依赖的二进制数据。每个镜像有特定的唯一标识(镜像 ID),通过镜像 ID 识别镜像并部署容器应用。
容器服务支持使用火山引擎镜像仓库(CR)中的公/私有容器镜像、用户私有镜像仓库中的容器镜像和 Docker Hub 官方镜像,部署容器应用。 |
工作负载 | 对应 Kubernetes 中的 Workload,用于描述业务应用的运行载体。工作负载包括如下几种类型:
• 无状态负载:对应 Kubernetes 中的 Deployment。一个无状态负载可以包含一个或多个 Pod 实例,每个 Pod 的角色相同,即除了名称和 IP 地址不同,其余特点完全相同。无状态负载可以通过 Pod 模板随时新建或删除 Pod。
• 有状态负载:对应 Kubernetes 中的 StatefulSet。与 Deployment 类似,包含一个或多个 Pod 实例,但每个 Pod 都有自己单独的状态(固定的名称、启停顺序、独立存储等)。
• 守护进程:对应 Kubernetes 中的 DaemonSet。DaemonSet 确保在集群的每个节点上运行一个 Pod,且只有一个 Pod。DaemonSet 与节点相关,若节点异常,则不会在其他节点上重新创建 Pod。
• 任务:对应 Kubernetes 中的 Job。Job 会创建一个或者多个 Pod,负责处理一次性任务,即任务仅执行一次并确保处理任务的 Pod 成功终止。
• 定时任务:对应 Kubernetes 中的 CronJob。CronJob 用于创建周期性、重复性的任务。 |
配置项 | 对应 Kubernetes 中的 ConfigMap,适用于存储不包含敏感信息的场景。 |
保密字典 | 对应 Kubernetes 中的 Secret,适用于存储密码、令牌、密钥等敏感数据的场景。 |
服务 | 对应 Kubernetes 中的 Service,提供基于四层网络的容器服务暴露能力。容器服务目前提供如下三种类型的服务:
• 集群内访问(ClusterIP):指将工作负载暴露给同一集群内其他工作负载访问的方式,可以通过 集群内部域名 访问。
• 节点端口访问(NodePort):指在每个节点的IP上开放一个静态端口,通过静态端口对外暴露服务。外部用户通过请求节点IP:节点Port ,即可从集群的外部访问一个服务。
• 负载均衡(LoadBalancer):指通过弹性负载均衡从公网访问到工作负载,提供了更高可靠性的保障。负载均衡(LoadBalancer)一般用于系统中需要暴露到公网的服务。 |
路由规则 | 对应 Kubernetes 中的 Ingress,本质是一系列流量转发规则,这些规则基于 HTTP 和 HTTPS 协议进行命中和转发。路由规则可以通过域名和路径对访问做到更细粒度的划分。 |
存储类 | 对应 Kubernetes 中的 StorageClass,提供了一种定义和描述所需的存储资源类型的标准化方法。 |
存储卷 | 对应 Kubernetes 中的 PersistentVolume(PV),是集群中配置的一段网络存储。PV 是容量插件,如 Volumes,但其生命周期独立于使用 PV 的任意 Pod。 |
存储卷声明 | 对应 Kubernetes 中的 PersistentVolumeClaim(PVC) , 是由用户进行存储的请求。 |
注解 | 对应 Kubernetes 中的 Annotation,用于描述数据属性(Property)的信息,标示存储位置、历史数据、资源查找、文件记录等功能。 |
标签 | 一个键(key)值(value)对,用于标示对象的特点。容器服务中的 标签 分为两种:
• 用户自定义或系统、平台为各种资源添加的标签(Tag)。
• 对应 Kubernetes 中的 Lable。 |
污点 | 对应 Kubernetes 中的 Taint,使节点能够排斥指定特点的的 Pod。 |
容忍度 | 对应 Kubernetes 中的 Toleration,应用于 Pod 上,允许(但并不要求)Pod 调度到带有与之匹配污点的节点上。 |
亲和调度 | 选择就近部署节点或 Pod 实例,实现就近路由能力,从而减少网络损耗的调度能力。 |
反亲和调度 | 出于高可靠性考虑,分散部署 Pod 实例,当某个节点出现故障的时候,减少对应用的影响。 |
节点亲和调度 | 对应 Kubernetes 中的 NodeAffinity,指通过节点标签控制 Pod 实例部署在特定的节点上。 |
节点污点调度 | 指配合污点和容忍度,用来避免 Pod 被分配到不合适的节点上。 |
实例亲和调度 | 对应 Kubernetes 中的 PodAffinity,将具有相互通信需求的 Pod 实例,部署到同一个拓扑域(TopologyKey),减少 Pod 对应业务之间网络延迟。 |
实例反亲和调度 | 对应 Kubernetes 中的 PodAntiAffinity,将指 Pod 实例分散部署到不同的拓扑域(TopologyKey),提高 Pod 对应业务的稳定性。 |
拓扑域 | 对应 Kubernetes 中的 TopologyKey。是一个范围的概念,一般通过节点上的标签指定,比如一个特定的节点、一个地域等。 |
指标伸缩 | 在 Kubernetes 集群中用于 Pod 水平自动伸缩,它基于 CPU 和内存利用率、对 Deployment 和 Replicaset 控制器中的 Pod 数量进行自动扩缩容。 |
节点弹性伸缩 | 指通过CA(Cluster Autoscaler,集群弹性伸缩)方式,根据集群中工作负载 Pod 的资源请求量,在使用限制范围内,为集群增加节点。 |
资源配额 | 对应 Kubernetes 中的 Resource Quota,用于多团队或多用户的共享集群资源场景下,限制团队、用户可以使用的资源总量,包括限制命名空间下创建某一类型对象(容器、服务)的数量以及消耗计算资源(CPU、内存)的总量。 |
资源限制 | 对应 Kubernetes 中的 Limit Range,用于资源的合理分配和管理,提高集群资源的利用率和可用性。 |
应用模板 | 基于 Kubernetes Helm 标准模板提供的资源管理与调度功能,用于快速部署和管理 Helm 应用。 |
组件 | 为集群提供的网络、存储、监控、DNS、安全、镜像、GPU 等类型的插件。 |
对象浏览器 | 用于查看、部署、管理指定集群下任意 Kubernetes 资源,并实现 Custom Resource Definition(CRD)资源的可视化管理。 |
Loading...