基本概念
本文为您介绍容器服务(VKE)的基本概念。帮助您在阅读相关文档时,快速理解产品知识和概念。
集群对应 Kubernetes 中的 Cluster,是容器服务中计算、存储和网络资源的集合。VKE 目前支持的集群类型如下: - 托管集群:由 VKE 管理和维护 Kubernetes 集群的 Master 节点,用户只需要创建和部署集群中运行负载所需的 Worker 节点,从而降低用户使用 Kubernetes 容器集群的难度和成本。
- 注册集群:通过注册现有集群的方式,将用户本地基础设施或其他云厂商的集群注册到 VKE 中进行统一管理,减少业务方多云操作,高效管理业务集群。
集群内具有相同配置的一组节点的聚合,具备对节点资源快速弹性伸缩的能力,帮助用户高效管理 Kubernetes 集群中的节点资源。
容器服务中的节点池,分为如下两种:
- 自定义节点池:用户可自定义节点池中的节点配置、系统配置、安全配置、高级配置、更多配置等配置能力,同时支持扩缩容、编辑节点数量等。
- VKE 的自定义节点池,从管理角度分为如下两种:
- 托管节点池:以简单高效的方式帮助用户提升 GPU 型计算资源的故障管理能力,提升节点池资源利用率,使用户能够更简单地完成节点池日常运维工作。
- 普通节点池:无检查自愈能力,其余配置与托管节点池相同。
- 默认节点池:在容器服务控制台上添加已有 ECS 实例到集群时,用来管理此类节点的节点池。默认节点池的安全配置、高级配置、更多配置等配置能力与标准节点池一致,但不具备扩缩容、编辑节点数量等能力。
对应 Kubernetes 中的 Node,是容器服务集群组成的基本元素。节点主要包括:Master 节点(控制节点)和 Worker 节点(计算节点/工作节点)。应用实际部署在 Worker 节点上,支持通过配置随机部署在 Worker 节点上或部署在指定的 Worker 节点上。 容器服务中的 节点 一般指 Worker 节点。
集群的控制节点。主要由如下四个组件构成:
- API Server:提供各模块之间的数据交互和通信的枢纽。
- ETCD:分布式数据存储组件,负责存储集群的配置信息。
- Controller Manager:通过定义资源期望状态,实现集群资源编排,保证集群中各种资源的实际状态和用户定义的期望状态一致。
- Scheduler:负责应用调度的组件,通过配置节点/Pod 实例亲和性等,将容器调度到 Worker 节点上运行。
- 集群托管模式下,Kubernetes 集群的 Master 节点由容器服务集中管理和维护,用户不需要关心。
集群的计算/工作节点,即运行容器化应用的节点。容器服务的 Worker 节点目前为云服务器(ECS 实例)和虚拟节点(Virtual Node)。
Worker 节点主要运行以下组件:
- Kubelet:Worker 节点的代理组件,主要负责与 Container Runtime 交互,并与 API Server 协同管理节点上的容器。
- Kube-proxy:网络代理,解决节点上应用间的访问问题。
- Container Runtime:容器运行时,如 Containerd,主要用于拉取容器镜像,管理容器的全生命周期。
集群中的非实体计算节点,用户的 Pod 不用调度到自己的机器(实体节点)上,而是直接调度到弹性容器实例(VCI)资源上,无需管理机器,不用扩容节点。
对应 Kubernetes 中的 CNI 资源,提供实现容器集群网络方案的技术插件。容器服务目前提供如下两种容器网络模型: - Flannel:独立的 Underlay 容器网络模型,配合 VPC 的全局路由能力,实现集群高性能的网络体验。
- VPC-CNI:基于私有网络的弹性网卡 ENI 实现的 Underlay 容器网络模型,具有较高的网络通信性能。
对应 Kubernetes 中的 Service,提供基于四层网络的容器服务暴露能力。容器服务目前提供如下三种类型的服务: - 集群内访问(ClusterIP):指将工作负载暴露给同一集群内其他工作负载访问的方式,可以通过集群内部域名访问。
- 节点端口访问(NodePort):指在每个节点的IP上开放一个静态端口,通过静态端口对外暴露服务。外部用户通过请求节点IP:节点Port,即可从集群的外部访问一个服务。
- 负载均衡(LoadBalancer):指通过弹性负载均衡从公网访问到工作负载,提供了更高可靠性的保障。负载均衡(LoadBalancer)一般用于系统中需要暴露到公网的服务。
对应 Kubernetes 中的 Ingress,本质是一系列流量转发规则,这些规则基于 HTTP 和 HTTPS 协议进行命中和转发。路由规则可以通过域名和路径对访问做到更细粒度的划分。 存储模块为集群中的 Pods 提供长期和临时存储的方法。
对应 Kubernetes 中的 Namespace,是对一组资源和对象的抽象。命名空间用于划分集群资源,实现资源隔离。 对应 Kubernetes 中的 Workload,用于描述业务应用的运行载体。工作负载有:无状态负载、有状态负载、守护进程、任务、定时任务等几种类型。 对应 Kubernetes 中的 Image,是封装了应用程序及其所有软件依赖的二进制数据。每个镜像有特定的唯一标识(镜像 ID),通过镜像 ID 识别镜像并部署容器应用。 容器服务支持使用火山引擎镜像仓库(CR)中的公/私有容器镜像、用户私有镜像仓库中的容器镜像和 Docker Hub 官方镜像,部署容器应用。
一个键(key)值(value)对,用于标示对象的特点。容器服务中的 标签 分为两种:
- 用户自定义或系统、平台为各种资源添加的标签(Tag)。
对应 Kubernetes 中的 Annotation,用于描述数据属性(Property)的信息,标示存储位置、历史数据、资源查找、文件记录等功能。 对应 Kubernetes 中的 Taint,使节点能够排斥指定特点的的 Pod。 对应 Kubernetes 中的 Toleration,应用于 Pod 上,允许(但并不要求)Pod 调度到带有与之匹配污点的节点上。 对应 Kubernetes 中的 Resource Quota,用于多团队或多用户的共享集群资源场景下,限制团队、用户可以使用的资源总量,包括限制命名空间下创建某一类型对象(容器、服务)的数量以及消耗计算资源(CPU、内存)的总量。 对应 Kubernetes 中的 Limit Range,用于资源的合理分配和管理,提高集群资源的利用率和可用性。 最近更新时间:2026.02.25 10:46:52