You need to enable JavaScript to run this app.
导航
产品功能
最近更新时间:2024.09.04 19:25:00首次发布时间:2022.11.01 10:35:41

容器服务(Volcengine Kubernetes Engine,VKE)通过深度融合新一代云原生技术,提供以容器为核心的高性能 Kubernetes 容器集群管理服务,实现云端一键高效构建高可用 Kubernetes 集群和容器化应用的可视化全生命周期管理。本文详细介绍容器服务提供的产品功能。

集群管理

容器服务允许您在云端快速创建标准 Kubernetes 集群,并能够实现集群的水平扩展、权限管理等功能。

功能说明
资源概览提供集群总数、集群内资源数量、CPU 和内存使用率等信息看板,通过看板更直观地监测和管理集群资源。

集群创建

支持快速创建基于 Kubernetes 的集群,允许选择云端种类丰富的 Worker 节点,并进行灵活的自定义配置。目前支持如下几种集群的创建:

  • 托管版集群:由容器服务管理和维护 Kubernetes 集群的 Master 节点,您只需要管理集群中运行负载所需的 Worker 节点。
  • 集群模板:以模板的形式提供快速创建所需的集群。
集群升级支持一键升级集群控制面和节点的 Kubernetes 版本,统一管理系统组件升级。更多信息,请参见 集群升级

权限管理

容器服务的用户授权包括 IAM (Identity and Access Management,基于身份的权限控制)授权和容器服务的 RBAC (Role-Based Access Control ,基于角色的权限控制)授权。

功能说明
IAM 授权操作容器服务资源时,支持为不同的 IAM 用户配置不同的权限策略,包括系统预设策略、用户自定义策略。更多信息,请参见 IAM 授权
RBAC 权限管理支持为不同角色的用户配置不同的权限,系统预置了集群管理员、运维管理员、开发人员和只读用户等角色权限,支持用户自定义创建角色权限。更多信息,请参见 RBAC 授权

节点池

容器服务引入节点池概念,帮助您更好地管理 Kubernetes 集群内的节点。

功能说明
节点池创建支持自定义配置节点池的基本信息、Worker 节点配置、系统配置等。自定义配置后,会作用于该节点池中的所有 Worker 节点。
托管节点池创建以节点池为载体,以简单高效的方式帮助用户提升 GPU 型计算资源的故障管理能力,提升节点池资源利用率。
添加已有节点支持添加已有的云服务器(ECS)实例到 VKE 集群,并由 VKE 侧提供默认节点池(vke-default-nodepool)来管理已有节点。
节点池管理支持管理节点池从创建到删除(或移除)期间的整个生命周期。节点池生命周期和状态流转说明,请参见 资源状态说明
弹性伸缩支持全局的弹性伸缩配置,基于集群内的业务负载水位实现节点资源的动态扩缩容。
节点池节点检查自愈提供自研的节点检查和自愈功能,支持面向节点进行常见故障检测和故障自愈。

应用管理

您可以在集群中部署多种类型的应用,并完成应用的全生命周期管理。同时,可以实现应用的弹性伸缩,降低单个应用带来的负载压力。

功能说明

应用创建

  • 支持部署多种类型的应用(Deployment、StatefulSet、Job、CronJob、DaemonSet),允许通过镜像或模版部署应用。
  • 支持配置应用的容器信息,包括:应用镜像、容器端口、环境变量、存储、生命周期、亲和性/反亲和性和健康检查等。

应用生命周期管理

  • 支持编辑、删除、更新实例数、重新部署、更新镜像等操作。
  • 支持查看应用的详情信息,包括:概览、实例列表、访问方式、历史版本、弹性伸缩、事件、日志等。
应用调度支持多种类型的应用调度方式,包括:节点亲和性调度、节点污点调度、实例亲和性调度、实例反亲和性调度。
应用伸缩支持手工伸缩、指标伸缩(HPA)和 定时伸缩(CronHPA)。其中:指标伸缩(HPA)允许基于 CPU、GPU 和内存指标进行伸缩。
应用发布支持通过 Service 和 Ingress 发布应用,支持灰度发布和蓝绿发布。

应用中心

  • 提供多种类型的应用模板,支持通过模板一键部署应用。
  • 允许创建 Helm 应用,Helm Chart 来源支持应用中心、镜像仓库或第三方仓库。

存储管理

容器服务允许使用云端丰富的存储资源,满足各类存储需求。

功能说明

网络存储

支持不同类型的网络存储,满足不同场景的存储需求。包括:

存储插件支持云端标准 CSI 存储接口和插件。
存储卷和存储卷声明支持手动创建静态存储卷(PV)。也支持创建存储类(SC),然后通过存储卷声明(PVC)创建动态存储卷。

网络

容器服务中的网络,包括容器网络、服务(Service)、路由规则(Ingress)。

功能说明

容器网络

目前提供两种容器网络模型(CNI):

  • Flannel:属于 Underlay 网络方案(Flannel HostGateway),您可以自行定义 Kubernetes 集群的容器网络 Pod CIDR。
  • VPC-CNI:基于私有网络的弹性网卡 ENI 实现的 Underlay 容器网络方案。VPC-CNI 网络模型下容器网络支持选择 VPC 子网作为 Pod 子网。
Service支持集群内访问(ClusterIP)、节点端口访问(NodePort)、负载均衡(LoadBalancer)等三种 Service 类型。
Ingress支持 ALB-Ingress、Nginx-Ingress、CLB-Ingress、APIG Ingress 等七层负载均衡功能。

GPU

通过实现集群 GPU 资源的管理和调度,能够满足 AI、AIGC 等场景的需求的同时,极大地降低资源使用成本。

功能说明
NIVIDA GPU支持 NIVIDA GPU ,允许容器指定卡型调度,申请 1 张或多张 GPU 卡。

mGPU

【公测】容器服务提供的容器间的 GPU 共享(multi-container GPU)方案:

  • 支持自研 mGPU 共享调度方式,允许将单个 GPU 卡虚拟为多个虚拟 GPU,实现 GPU 卡在多个容器间的共享。
  • 支持基于算力和显存的调度策略。算力最小调度单位为 5% ,显存最小调度值单位为 1 GiB。
  • 支持多种算力分配策略,包括:fixed-share(固定配额)、guaranteed-burst-share(固定争抢)和native-burst-share(争抢模式)。
  • 支持多卡共享,允许单个容器使用同一节点上多张 GPU 卡的算力和显存资源。

调度

容器服务基于 Kubernetes Scheduling Framework 扩展机制,提供多种调度策略。

功能说明
Binpack/Spread 调度拓展原生 kube-scheduler 调度器的调度能力及策略,支持配置节点、GPU 显卡的 Binpack/Spread 策略。

任务调度

容器服务提供如下几种任务调度能力:

  • Gang 调度:【邀测·申请试用】一种并发系统中的调度策略,保证所有相关联的进程能够同时启动,不允许有异常进程的存在,即 All-or-Nothing。
  • Capacity 调度:【邀测·申请试用】基于 Scheduling Framework 的扩展机制,在调度侧通过引入弹性配额(ElasticQuota),实现的调度策略。Capacity 调度在确保用户资源分配的基础上通过资源共享的方式来提升集群的整体资源利用率。
弹性资源优先级调度支持通过自定义资源策略(ResourcePolicy),设置工作负载的 Pod 被弹性调度到不同类型节点的顺序。
负载感知调度邀测·申请试用】通过参考节点负载的历史统计,将 Pod 优先调度到负载较低的节点,实现节点负载均衡的目标,避免出现因单个节点负载过高而导致的应用程序或节点故障。
NUMA 拓扑感知调度邀测·申请试用】基于 Katalyst 增强 Kubernetes 资源管理能力,提升资源利用率,降低成本,提升负载性能的调度能力。
RDMA 拓扑感知调度邀测·申请试用】通过对 GPU 卡和 RDMA 设备的网络拓扑信息的感知,将同一个 Job 中的所有 Pod 调度到 RDMA 网络中拓扑距离尽可能接近的节点和 RDMA 网卡上,进而帮助用户充分发挥 RDMA 网络的通信能力。

监控和运维

面向集群监控和运维,对于保证集群的稳定运行以及提高集群的安全性和可靠性非常必要。包括:

  • 监视关键指标:通过集群监控,您可以实时地了解集群的状态,比如 CPU、内存、磁盘空间的使用情况,流量情况等等,从而及时发现并解决潜在的问题。
  • 操作/故障回溯:通过集群日志和事件的搜集和查看,确定集群和应用的工作状态。当发生故障时,可以通过日志和事件进行回溯。
  • 提高安全性和可靠性:通过集群巡检,您可以确定 Worker 节点和应用的安全性,从而提高集群的安全性和可靠性。
  • 优化资源利用率:通过集群监控,您可以根据实际使用情况对各个 Pod 进行合理的调度,从而最大化地利用集群的资源。
功能说明

组件管理

  • 支持多种类型的组件:网络类、存储类、监控类、调度类、DNS 类、安全类、镜像类和 GPU 类。
  • 支持一键安装、卸载和升级组件。
事件中心支持对接火山引擎 日志服务,完成集群全局事件的采集、检索和查看。

日志中心

  • 支持对接火山引擎 日志服务,完成集群全局日志的采集、检索和查看,并进行图表分析。
  • 支持集群控制面组件(ETCD、Kubelet、APIServer、Controller、Scheduler)的日志采集和查看。
  • 支持 Ingress 组件的日志采集和查看。
  • 支持容器标准输出(Stdout、Stderr) 和指定路径的日志采集和查看。允许通过配置环境变量,实现日志采集。
云监控支持接入火山引擎云监控,实现集群、节点、容器组、容器、存储卷等资源的监控。详情请参见 云监控
云原生观测Kubernetes 监控是针对容器服务集群提供的一体化可观测性解决方案,在基础观测能力之上,提供了基于 eBPF 实现的代码零侵入指标采集方式,实现面向 Kubernetes 集群、资源、网络、应用和服务的指标和链路监控。详情请参见 开启云原生观测
集群审计支持通过 API Server 审计日志来记录用户在集群中的日常操作,帮助集群管理员对集群的操作行为进行安全审计,保证集群安全、稳定运行。

基线巡检

  • 支持对集群 Worker 节点进行基于 CIS Benchmark 基线的安全巡检,及时发现安全问题。
  • 支持手工巡检和周期性巡检,完成后允许查看巡检详情。

应用巡检

  • 支持对集群中的应用进行巡检,及时发现应用安全问题。
  • 支持手工巡检和周期性巡检,完成后允许查看巡检详情。

开发者服务

容器服务为您提供了多种类型的开发者服务。

功能说明
原生 YAML支持社区原生 Kubectl 工具和 YAML 配置方法。
OpenAPI提供 OpenAPI,方便开发者使用。更多信息,请参见 API 参考
SDK提供多种语言的 SDK,方便开发者使用,包括:Go、Java 和 Python。更多信息,请参见 SDK 参考
Terraform支持开源的 IT 基础架构自动化编排工具 Terraform,用于高效配置、管理云上基础资源。更多信息,请参见 通过 Terraform 使用容器服务

套件

容器服务通过套件方式,提供 AI、观测、计算等服务,帮助您扩展更多云原生业务。

功能说明
AIOps 套件一套集群运维管理组件,沉淀了火山引擎内部丰富的 Kubernetes 容器集群运维经验和解决方案,帮助用户便捷管理和运维集群业务。
成本套件基于 FinOps 的集群资源成本洞察和成本优化套件,能够帮助用户完成集群成本洞察和治理。
批量计算套件【公测】批量计算(Batch Computing)套件能够充分利用 VKE 集群的计算(包括云服务器类型节点、虚拟节点)、存储以及网络资源,为用户提供异构资源混合调度能力,多队列管理能力、队列资源共享调度能力等。
云原生 AI 套件【公测】部署 VKE 上用于支撑人工智能(AI)平台统一管理基础设施需求(包括大规模 AI 开发、训练、推理业务)的套件服务。

个人用户功能差异

容器服务支持个人用户使用产品功能,但部分功能暂未开放给个人用户,详细说明如下表所示。

功能个人用户支持说明

集群创建

  • 支持创建托管版集群。
  • 不支持通过集群模板创建集群。
弹性容器实例弹性容器实例(VCI)产品,暂不支持个人用户,因此 VKE 集群中所有 VCI 相关功能,均不支持个人用户。

网络存储

如下类型的网络存储,不支持个人用户:

  • 大数据文件存储 CloudFS
  • 文件存储 vePFS
Ingress个人用户无法使用 apig-controller 组件,因此不支持 APIG Ingress。
计算不支持高性能计算 GPU 云服务器类型的节点。

套件

个人用户不支持如下 VKE 套件:

  • 成本套件(FinOps)
  • AIOps 套件:不支持检查自愈,其余巡检和诊断能力均支持。
  • 云原生 AI 套件
  • 批量计算套件(Batch Computing)
节点池个人用户不支持托管节点池。

组件

容器服务托管的如下组件,不支持个人用户:

  • vci-virtual-kubelet
  • dns-autoscaler
  • apig-controller
  • apmplus-opentelemetry-collector
  • apmplus-server-agent
  • csi-cloudfs
  • csi-vepfs
  • finops-kube-collector
  • finops-kube-recommender
  • mgpu
  • rdma-device-plugin
  • batch-node-controller
  • batch-queue-controller
其他功能与上述 不支持个人用户 的功能不关联的其他功能,均支持个人用户。