基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
  • 知识卡片碎片时间过考点
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
    • AI 热点每日 AI 资讯与动向
AI 工作台
旧版
AIHT
内容
精选全部 AI 动态热点榜AI 日报收藏
分类
模型行业编程产品技术观点开源
更多
Agent 接入
返回首页开发者导航
AIHT
精选 / 资讯详情
8.0
热点
AI SCORE
开源项目2026-11-13 17:00

英伟达开源 GPU 集群管理平面,预览版限制明确

dev.to · AI#英伟达#Kubernetes#GPU
Editor brief · 编辑速览

NVKE 可在裸金属上为不同客户创建独立 Kubernetes 集群,结合 Temporal、SPIFFE/SPIRE 和硬件身份验证完成部署。预览版尚无管理平面升级及备份恢复流程,且默认缺少 TLS、启用的认证和授权控制。

文章思维导图
Knowledge map
拖拽缩放
AI deep read

AI 深度解读

NVKE 想把裸金属 GPU 集群的交付做成一条自动流水线:运营方提交请求,系统负责准备机器、安装 Kubernetes,再把独立集群交给客户。它来自 NVIDIA,以 Apache 2.0 开源,但仍处于预览阶段。

原文最有价值的部分,是把这条流水线的边界讲清了:集群能自动创建,不代表服务已经具备可交付的安全和运维能力。API 授权、管理面恢复、客户凭据和节点替换,仍有不少工作需要运营方补齐。对程序员来说,这也是一个观察异步任务设计与基础设施产品边界的具体案例。

独立集群能交付,管理集群由谁照顾

NVKE 是管理平面(management plane),服务对象是经营 GPU 基础设施的运营方。每个客户的工作负载集群都有自己的 Kubernetes 控制平面、etcd 和节点池,运营方统一维护负责创建它们的管理集群。

安装从 nvkectl 开始。它先借助一个临时种子集群搭建管理集群,再将管理平面安装上去。此后,运营方通过 NVKE API 或 nvkectl 请求创建集群,由系统编排节点供应、集群初始化及后续生命周期操作。

NVKE 产品分工:NICo 供应机器,管理平面编排集群

机器供应依赖 NVIDIA Infra Controller,简称 NICo。预览阶段,NICo 是唯一兼容的基础设施提供方;部署启用后还支持 LaunchLayer。管理面通过 Cluster API 的 NICo provider,也就是 CAPNICo,对接机器发现、固件、网络和主机供应。

网络使用 OVN-Kubernetes。GPU 软件栈则由 AICR recipe bundle 接手,把 GPU Operator、驱动、内核配置与 Kubernetes 锁定成版本组合,生成 GitOps bundles。NVKR 负责构建机器供应与集群管理所用的产物。

这套分工能减少逐台装机的重复劳动,但依赖链也很明确:创建租户集群、增删节点和升级都要经过 NICo。软件物料清单会通过一次 GitOps 部署,将 controller、NICo、Temporal、Postgres、SPIRE 和 CAPNICo 放进管理集群,管理集群故障会阻断供应流程。

更大的缺口在管理集群自身。它不会升级、扩缩容或替换自己的节点,预览版也没有提供管理平面的版本升级流程,以及管理集群和状态的备份恢复流程。

能管理客户集群,不等于能维护管理系统自身。

一次创建请求,怎样避免入库成功却没有任务

NVKE 的工程细节里,最值得应用开发者借鉴的是数据库发件箱(transactional outbox)。

项目采用 Go workspace,共 13 个模块,其中 3 个运行于生产环境:以 Helm chart 部署的 controller、以 Debian package 安装并由 systemd 运行的节点 agent,以及部署在 controller 旁边的 Cluster API infrastructure provider。

一个 controller 进程同时承载 REST API、Temporal worker 和 Kubernetes reconcilers。创建请求进入 /api/clusters 后,处理器在同一个 PostgreSQL 事务里写入集群记录和 workflow_outbox 表。

集群请求经过数据库发件箱、Temporal 与 kubeadm 的执行路径

它解决的是常见的双写问题:如果先写数据库,再调用任务系统,中途崩溃就可能留下一个永远没人处理的集群记录。把业务记录和待执行任务一起提交,可以保证已提交的集群记录有对应任务。

随后,处理器轮询 outbox,启动对应的 Temporal workflow,再将该行标记为已处理。工作流创建 Cluster API 资源,由基础设施 provider 供应或接管节点,controller 再通过 gRPC 调用 nvke-agent,推动集群进入 Ready。

节点 agent 只监听请求,由 controller 主动连接。它运行 kubeadm init、kubeadm join,安装 CNI、初始化 kubelet,并处理 drain、重启与拆除。节点通过 SPIFFE/SPIRE,结合 TPM 或 join token 证明身份。

这个设计说明了任务如何可靠进入执行链,却不能单凭描述就认定所有步骤只执行一次。原文没有展开重复启动、重试和幂等处理的细节,也没有给出吞吐量或故障恢复实测。对 Node 后端开发者,这是一种可借鉴的一致性设计,不是一份完整的可靠性证明。

默认配置离多租户服务还差哪些环节

原文引用的文档与配图时间为 2026 年 11 月 9 日,讨论的是当时的预览状态。限制页比功能介绍更值得先读。

NVKE API 在每个管理节点的 30080 端口提供明文 HTTP,安装后默认关闭认证,而且完全不执行授权。进入允许网络的调用方可以访问所有端点;即使加上认证,持有 token 也不代表权限已按客户划分。

预览版 API 默认使用明文 HTTP,且安装后关闭认证

认证回答「你是谁」,授权回答「你能删除哪个客户的集群」。运营方需要在 API 前面补 TLS 和授权层。

租户集群的凭据还有另一层限制:客户拿到的是 admin kubeconfig,enableOidc 不会自动把客户的身份提供方接入工作负载集群。由于 NVKE 不轮换集群 CA,已经交出的管理员 kubeconfig 无法通过 NVKE 撤销。

节点池也不是修改配置就会自动收敛。配置变化后,运行中的节点只会被标记 condition,不会自动 drain 或删除;labels 和 taints 在创建时确定,仅在节点加入时应用。nvkectl 只升级控制平面,节点池的 Kubernetes 版本需要通过原始 API 调用修改。

NVSentinel 可以监测硬件故障,在修复前执行考虑工作负载的 cordon、drain,再调用 NVKE lifecycle APIs 触发节点替换。但清理过时节点、QCOW2 供应所需的 imager 与脚本,仍要由运营方准备。

加密同样需要分层看。NVKE 支持按集群启用 etcd 静态加密;托管流水线构建的全盘加密节点镜像则使用 LUKS2,每次镜像构建生成一个卷密钥,所有从该镜像创建的节点共享它。持有原始镜像和文档中 bootstrap passphrase 的人,可以恢复这个密钥。文档明确将此类镜像限定为评估用途。

默认遥测管道 NKTP 只在内存保存数据,还允许匿名用户以管理员身份访问 Grafana。它适合演示的默认值,不能直接承担持久监控需求。

我的判断

NVKE 说得对的一点,是把集群工厂拆成了可追踪的执行链,并公开了预览版的缺口。对于已有裸金属 Kubernetes 运维体系的团队,机器供应、身份校验和集群编排能够形成一条可继续建设的路径。

它的前提也很重:团队已经能运行 NICo,并愿意维护 Kubernetes、Temporal、PostgreSQL、SPIRE 和物理服务器。一般业务团队如果只是需要运行 GPU 工作负载,接入这套管理面是否划算,原文没有提供答案。

独立控制平面、etcd 和节点池提供了明确的集群边界,但原文没有给出它与共享集群加 namespace 方案在成本、隔离效果、交付速度上的对照数据。作者整理的是架构与限制文档,没有展示压测或恢复演练,因此对运维收益的判断仍属于经验分析。

还有一个建议需要打问号:作者提出把 admin kubeconfig 当作会过期的应急凭据,但前文同时指出它无法撤销。原文没有说明过期机制如何实现,不能据此认为 NVKE 已提供短期管理员凭据能力。更稳妥的方向是另行建立客户 OIDC 访问与集群内权限体系,再明确管理员凭据的保管方式。

恢复能力也不能靠「保存文件」替代。bootstrap kubeconfig 和 etcd 加密密钥文件必须安全保存,后者是唯一不在节点上的副本;管理节点 bootstrap 还需要运营方自己的 SPIRE CA 文件,否则会回退到自签名 CA,导致节点无法完成证明和加入。

保存恢复材料只是起点,恢复流程能实际跑通才算具备恢复能力。

能拿来做什么

  • 给 Node 服务设计长时间异步操作时,可以借鉴 /api/clusters 的 outbox 路径,把业务记录与任务记录放进同一事务,同时补上重试、幂等和任务状态查询。
  • 评估 NVKE 时,先把限制页转成试点验收项,实际验证 API 授权、管理面恢复、凭据管理和节点替换,别只验证集群能否进入 Ready。
  • 接入集群管理 API 的前端应区分请求已受理、集群 Ready 和仍需人工处理的节点 condition,避免把一次成功响应展示成整个流程已经完成。
  • 准备用它承载客户数据时,应先重建或替换评估用加密镜像路径,配置可持久保存的遥测后端,并关闭 Grafana 匿名管理员入口。
Original source

本文由 AI 通读原文后重新编写,观点部分为站内判断,细节以原文为准,来源 dev.to · AI,原文版权归原作者所有。

阅读原文
上一篇
新闻音频切片:词级对齐实测对比
下一篇
用 Claude 先理清配置器规则,再写三维代码

资讯速览

dev.to · AI · 2026-11-13 17:00

AI 评分 8.0 / 10

相关标签

#英伟达#Kubernetes#GPU

继续阅读

  • 给 Agent 加一道独立决策层
  • 新闻音频切片:词级对齐实测对比
  • 用 Claude 先理清配置器规则,再写三维代码
  • llama.cpp:跨硬件部署本地模型推理
  • Qwen Code 预览版整合多入口编程智能体