10 Metal3 #
Metal3 是一个 CNCF 项目,它为 Kubernetes 提供裸机基础架构管理功能。
Metal3 提供 Kubernetes 原生资源来管理裸机服务器的生命周期,支持通过 Redfish 等带外协议进行管理。
同时,该组件已对 Cluster API (CAPI) 实现成熟支持,可通过被广泛采用的不依赖于供应商的 API,跨多个基础架构提供商管理硬件资源。Cluster API 将 Metal3 用作计算机对象的基础架构后端。
10.1 SUSE Edge 如何使用 Metal3? #
SUSE Edge 通过 Metal3 管理物理硬件(如服务器)的生命周期。该硬件需要支持
Metal3 兼容的带外管理协议(例如 Redfish)。当 SUSE Edge
管理群集置备或取消置备下游群集时,Metal3 会通过 Redfish 与服务器的基板管理控制器
(BMC) 进行交互,该交互通常包含以下操作:
挂载和卸载虚拟媒体。
服务器开机、关机和重置。
此方法非常适合用于目标硬件支持带外管理,且需要实现全自动化基础架构管理流程的场景。
Metal3 和 CAPI 提供声明式 API,可实现裸机服务器的资产盘点和状态管理,包括自动化的检查、清理以及置备/取消置备操作。
10.2 已知问题 #
目前暂不支持上游 IP 地址管理控制器,原因是其尚未与我们选定的网络配置工具兼容。但由于 CAPM3 要求
ipamCRD 必须存在,因此需要在metal3-ipam-system名称空间中部署ipam-controller-managerPod。相关的 IPAM 资源和 Metal3DataTemplate networkData 字段也不受支持。
目前仅支持通过 redfish-virtualmedia 进行部署。