基础设施提供者
不可变基础设施通过可插拔提供者支持多个基础设施平台。每个提供者都会与特定的 IaaS 平台集成,以提供集群生命周期管理能力。
支持的提供者
控制平面端点
每个集群的 Kubernetes API server(kube-apiserver,端口 6443)都通过控制平面端点访问——该端点是位于控制平面节点前端的虚拟 IP(VIP)或负载均衡地址。不同提供者提供该端点的方式不同,这也决定了您在创建集群之前需要准备的内容。
Huawei Cloud Stack 是唯一会为您创建控制平面负载均衡器的 VM 提供者。对于 Huawei DCS 和 VMware vSphere,负载均衡器——包括其 VIP 分配和后端(real-server)维护——都在集群外部准备并由集群外部负责。在裸金属上,提供者可以选择部署集群内 VIP 组件(alive),也可以委托给外部 LB;有关完整模型,请参阅 裸金属提供者 概述。
Fleet Essentials 插件
Fleet Essentials 是一个核心插件,为集群管理提供共享的 Web UI 框架。基础设施提供者可以通过 UI 扩展锚点对其进行扩展,以添加平台特定的页面和工作流。
安装后,Fleet Essentials 可提供以下能力:
- 统一集群管理:通过单一界面管理跨所有平台的集群
- 基础设施资源管理:配置云凭据、IP 池和机器模板
- 集群生命周期操作:通过引导式工作流创建、查看、升级和销毁集群
- 节点池管理:使用声明式方式管理节点池,并支持扩缩容和升级
Fleet Essentials 与基础设施提供者协同工作,以提供平台特定的集群管理。实现这些 Fleet Essentials 扩展锚点的提供者可以添加自己的集群创建工作流和管理页面。
提供者扩展:
- DCS Provider:Alauda Container Platform DCS Infrastructure Provider
1.0.13及更高版本会在 Huawei DCS 上添加 DCS 专用 UI 页面和工作流。由池管理的持久磁盘场景需要 DCS providerv1.0.16或更高版本,并且在v1.0.16中,DCSIpHostnamePool.spec.pool[].persistentDisk配置仍然仅支持 YAML - HCS Provider:在 Huawei Cloud Stack 上提供基于 YAML 的集群生命周期管理。HCS provider
v1.0.1及更高版本通过HCSMachineConfigPool.spec.configs[].persistentDisks[]支持由池管理的持久磁盘 - vSphere Provider:VMware vSphere 基础设施提供者已正式可用;其用于集群创建和管理的 Fleet Essentials UI 扩展即将推出
- Bare Metal Provider:在物理服务器上提供仅 YAML 的集群生命周期管理。裸金属集群没有 Fleet Essentials UI;所有工作流都通过对
BaremetalCluster、BaremetalMachineTemplate、MachineInventoryPool以及上游 CAPI 资源执行kubectl apply来驱动
提供者架构
每个基础设施提供者都是一个独立的插件,它与 Cluster API 框架集成,以管理目标平台上的基础设施资源。
组件
- 基础设施提供者:管理 IaaS 特定资源(VM、网络、存储)
- Bootstrap Provider(Kubeadm):负责 Kubernetes 节点初始化和配置
- 控制平面提供者(Kubeadm):管理 Kubernetes 控制平面组件
提供者独立性
基础设施提供者与核心平台分别独立版本化。单个提供者版本可以与多个平台版本兼容,从而在部署和升级场景中提供更高的灵活性。