架构
下图展示了 NVIDIA GPU 的 HAMi 核心运行路径:

Alauda Build of HAMi 包含以下核心组件:
- HAMi MutatingWebhook;
- HAMi scheduler extender;
- 在启用
Enable NVIDIA时内置的 NVIDIA device plugin; - 容器内的 HAMi-Core 资源控制。
HAMi MutatingWebhook 会检查提交的 Pod 是否使用了由 HAMi 管理的资源。对于由 HAMi 处理的 Pod,它会为其分配 HAMi scheduler,使该工作负载进入 HAMi 调度路径。
HAMi scheduler 会为每个 HAMi 工作负载选择合适的节点和设备。它会维护跨集群做出调度决策所需的设备状态。
device-plugin 层与后端相关。对于 NVIDIA GPU,内置的 NVIDIA device plugin 会向 Kubernetes 报告受支持的资源,读取 Pod 注解中的调度结果,并将所选设备映射到容器中。对于 Ascend NPU,启用 Enable Ascend 会开启调度器支持,但不会部署 Ascend device plugin。单独安装的 HAMi Ascend Device Plugin 提供 Ascend 设备暴露能力。
HAMi-Core 会在容器内部强制执行受支持资源的限制,并报告该运行路径提供的使用数据。
单独安装的 HAMi 组件
产品线还可以包含与核心集群插件分开安装和升级的组件:
Alauda Build of HAMi-WebUI提供可选的 HAMi 资源 WebUI,并查询平台 Prometheus 服务。Alauda Build of HAMi Ascend Device Plugin是一个运行所需的 Operator Bundle,用于为 HAMi 管理的整卡或 vNPU 分配暴露 Ascend 设备。
厂商驱动、容器运行时、CDI 配置、DCGM-Exporter 和 NPU Exporter 都不是 HAMi 组件。请在所选 HAMi 后端需要这些组件时,通过 NVIDIA GPU 文档 或 Ascend NPU 文档 进行安装和管理。