VMware vSphere 提供程序

VMware vSphere Infrastructure Provider 可在 VMware vSphere 平台上启用不可变基础设施。此提供程序构建于 Cluster API Provider vSphere(CAPV)之上,并与 vCenter 集成,以便为 Kubernetes 集群配置和管理虚拟机、网络和存储。

概述

VMware vSphere 是 VMware 业界领先的虚拟化平台。vSphere Provider 可直接连接到 vCenter 来管理 VM 生命周期,并通过声明式 node-slot 分配扩展 CAPV,从而可以在创建集群之前预先定义主机名、静态 IP 地址和持久磁盘。

INFO

v1.0.16 端点和磁盘生命周期边界

本文档基于 VMware vSphere Provider v1.0.16 进行验证。此版本为 Kubernetes API 端点使用外部负载均衡器,不部署自建 VIP。machine-config-pool 持久磁盘遵循提供程序管理的 InUse → Released → reuse or reclaim 生命周期;请参见 VMware vSphere Infrastructure Preparation

主要特性

  • vCenter 集成:直接连接 vCenter,以克隆 VM 模板、管理 VM 生命周期,并将工作负载放置到目标数据中心、计算集群和数据存储上
  • Machine Configuration PoolsVSphereMachineConfigPool 定义带有固定主机名、静态 IP 和持久磁盘布局的每个节点槽位。已释放的槽位可由同一现有池中的替换 Machine 重用,但不同池对象之间不共享槽位和 VMDK
  • 静态 IP 分配:为每个节点槽位配置静态 IP、网关和 DNS,适用于不提供 DHCP 的企业网络环境
  • 多 NIC 支持:每个节点支持主 NIC 和附加 NIC,其中主 NIC 驱动 kubelet node-ip,附加 NIC 按声明顺序连接,用于管理、存储或服务网络
  • 多个数据中心和故障域:通过 VSphereFailureDomainVSphereDeploymentZone 将控制平面和工作节点分布到多个 vCenter 数据中心或计算集群,以实现高可用性
  • 灵活的持久磁盘:声明式数据磁盘,支持可选的格式化/挂载、用于 etcd 滚动更新的 wipeFilesystem 控制、在 /dev/disk/by-capv/<name> 公开的原始设备模式,以及延迟释放,以便替换 Machine 可在提供程序管理回收之前重用该槽位和 VMDK
  • 不可变模板滚动更新:控制平面和工作节点更新使用新的 VSphereMachineTemplateKubeadmConfigTemplate 资源,从而支持可复现的替换以及同次要版本模板恢复

支持的资源

下表列出了本文档工作流中使用的主要面向用户的资源。由控制器协调的资源(例如 VSphereVM)以及未在本文档工作流中使用的资源(例如 VSphereClusterIdentity,它是此处使用的基于 SecretidentityRef 的替代方案)为完整起见,已在 Provider APIs 参考中说明。

资源描述
VSphereCluster表示 vSphere 基础设施,包括 vCenter 端点、控制平面端点以及故障域选择器
VSphereMachine表示 vSphere 中的一个虚拟机实例
VSphereMachineTemplate用于创建 vSphere Machine 的不可变模板,包含 VM、CPU、内存、网络和磁盘规格
VSphereMachineConfigPool预定义节点槽位池,包含主机名、静态 IP 和持久磁盘布局
VSphereFailureDomain描述用作故障域的数据中心、计算集群、数据存储和网络拓扑
VSphereDeploymentZoneVSphereFailureDomain 绑定到 vCenter server 以及资源池等放置约束

文档