5. 支持
5.1. 资源获取
沐曦开发者社区汇集了完整的技术资源,包括技术文档、软件工具包等。您可以通过以下方式获取所需资源。
5.1.1. 文档获取
沐曦开发者社区提供完整的技术文档资源,包括云原生参考手册、API文档等。获取流程如下:
访问 沐曦开发者社区
在顶部导航栏选择「文档」
在左侧菜单中选择「如k8s系列文档」
选择所需版本(如「0.11.1」)
查看文档:
点击文档卡片在线预览
鼠标悬停卡片显示下载按钮
或在预览界面点击下载按钮
5.1.2. 软件获取
沐曦提供完整的云平台工具链和软件资源包。获取流程如下:
访问 沐曦开发者社区
在顶部导航栏选择「下载」
查找资源:
搜索框输入关键词(如「Cloud云平台工具包」)
或按分类浏览
下载资源:
最新版:点击「立即下载」
历史版本:点击资源包右侧「版本历史」
备注
下载文档和软件需要登录开发者社区账号,建议使用Chrome或Firefox等现代浏览器以获得最佳体验。
5.2. 驱动资源详解
在 GPU Operator 解决方案中,为了实现云原生环境下的高效部署与管理,GPU 驱动被解耦为两个核心的容器镜像资源,它们各自承载了不同的功能组件,共同构成了完整的 GPU 驱动环境。
5.2.1. 内核驱动镜像
此镜像是一个包含了内核态驱动相关组件的资源包。它为宿主机提供在内核层面驱动沐曦 GPU 硬件所需的核心文件。
包含的资源:
预编译内核模块:镜像内集成了为多个主流 Linux 发行版和内核版本预编译好的沐曦 GPU 内核驱动模块。
管理工具
mx-smi: 提供了功能强大的命令行工具,用于查询和监控 GPU 的状态、功耗、温度、显存使用率等关键指标。
命名规则与版本:
独立发布方案在 2.24.0.x 版本及之后被正式采用。
以
.run包形式发布,文件名通常为metax-k8s-driver-image.$version-$arch.run。加载后的镜像名通常为
cr.metax-tech.com/cloud/driver-image:<VERSION>-<ARCH>。
5.2.2. MXMACA® 容器镜像
此镜像是一个包含了用户态运行环境的资源包。它为最终运行的应用程序提供调用 GPU 进行计算所需的全部软件库和依赖。
包含的资源:
MXMACA® 运行时库: 包含了应用在用户空间调用 GPU 时所需的全部共享库(
.so文件),这些库负责与内核驱动通信、管理计算任务、分配显存等。系统核心依赖: 预装了运行 MXMACA® 库所必需的系统基础依赖包,如
libelf、libltdl、libnuma等,从而简化了应用镜像的构建过程。
命名规则与版本:
MXMACA® 容器镜像随 MXMACA® 资源包发布,其离线包的命名规则在不同版本间存在差异,用户在使用时请确认加载的镜像名,这对于识别和使用正确的资源至关重要。
离线压缩包的文件名中通常包含
container字段,例如maca-native-<VERSION>-<DISTRO>-<ARCH>.container.xz。加载后的镜像名通常为
cr.metax-tech.com/library/maca-native:<VERSION>-<DISTRO>-<ARCH>。
备注
镜像的名称通常也与具体的 GPU 产品型号相关联。在构建镜像时请务必注意选择与硬件匹配的版本。
MXN100
maca-n100:<version>
MXC500
maca-c500:<version>
MXC500/MXC600
maca-native:<version>
5.3. 常见问题
5.3.1. 卸载异常处理
若在卸载 GPU Operator 过程中遇到资源删除失败、Finalizer 锁死等异常情况,可通过以下手动干预步骤强制清理残留资源,确保集群状态正常。
5.3.1.1. 异常场景说明
当卸载命令(如 helm uninstall)卡住或提示资源被占用时,可能是由于以下原因导致:
Webhook 配置残留:验证 Webhook 未被正确删除,导致后续资源操作被阻断
Finalizer 锁死:ClusterOperator 资源的 Finalizer 未移除,阻止元数据删除
5.3.1.2. 手动清理步骤
删除残留的验证 Webhook 配置
验证 Webhook 用于在资源创建/更新时执行合法性检查,若卸载时未正确移除,可能影响其他组件运行。
kubectl delete validatingwebhookconfiguration upgrade-validating-webhook-configuration \ --ignore-not-found # 忽略“资源不存在”错误(避免无该资源时报错) --grace-period=60 # 等待 60 秒让资源优雅终止(可选,根据集群负载调整)
作用:强制删除名为
upgrade-validating-webhook-configuration的验证 Webhook,解除对资源操作的阻断注意:
--ignore-not-found确保命令在无残留时仍正常执行,避免误操作中断流程
移除 ClusterOperator 的 Finalizer 锁
Finalizer 是 Kubernetes 用于确保资源依赖被正确清理的机制,若卸载时未完成依赖清理,需手动移除锁标记。
kubectl patch ClusterOperator/cluster-operator \ --type json \ --patch='[{"op":"remove", "path":"/metadata/finalizers"}]'
作用:从
ClusterOperator资源的元数据中移除 Finalizer,允许 Kubernetes 直接删除该资源,避免无限期锁死原理:Finalizer 会阻塞资源删除,直到所有依赖(如 CRD、Pods)被清理完毕。若依赖已手动清除,可强制移除 Finalizer 以继续卸载
5.3.1.3. 后续验证
完成上述步骤后,建议执行以下检查确保异常已解决:
确认 Webhook 已删除:
kubectl get validatingwebhookconfiguration | grep upgrade-validating-webhook-configuration # 若输出为空,说明已成功删除
检查 ClusterOperator 状态:
kubectl get clusteroperators.gpu.metax-tech.com cluster-operator -o json | grep finalizers # 确保 "finalizers" 字段不存在或为空数组
重新执行卸载命令:
helm uninstall [RELEASE_NAME] -n metax-operator --wait # 替换为实际的 Helm 版本名称
5.3.1.4. 注意事项
谨慎操作:手动清理涉及集群核心资源,建议先备份集群状态或联系技术支持确认操作风险。
依赖清理:执行前需确保所有依赖 GPU Operator 的业务 Pod 已停止,避免删除过程中出现资源竞争。
版本适配:不同版本的 Operator 可能对应不同的 Webhook 或 ClusterOperator 名称,若命令执行失败,需核对实际资源名称(可通过
kubectl get all -n metax-operator查看)。