获取验证码
详解VCF9.1.1环境下使用PAIS3.0部署自有开源大模型完整端到端流程;支持从HuggingFace下载GGUF量化模型,推送到本地Harbor镜像仓库;依托vSphere Supervisor VPC网络,借助ESXi DirectPath I/O GPU直通,在VKS集群上运行推理服务;PAIS3.0内置Infinity、vLLM、llamaCPP三大推理引擎;支持OIDC(Keycloak)或者PAIS本地用户账号,生成API‑Token对外暴露OpenAI兼容推理接口;需要kubectl修改PAISConfiguration资源添加FQDN注解开启API‑Token;文章同时提供整套YAML离线部署清单,可完全不依赖vCenter UI完成部署。
有VMware全系列产品官方资源和定制版资源需求的可以移步:
PAIS3.0可在VCF9.1.1私有云内部署HuggingFace开源GGUF大模型;流程包含下载模型→推送到本地Harbor仓库→配置GPU直通VM‑Class→部署PAIS服务,修改CRD配置FQDN与API‑Token开关;内置三大推理引擎,llamaCPP如需GPU加速必须替换CUDA镜像;最终输出OpenAI兼容HTTPS端点;支持UI操作与YAML离线清单两种部署路径。
| 项目 | 详情 |
|---|---|
| 文章作者 | William Lam(Broadcom VCF杰出平台架构师) |
| 发布时间 | 2026‑09‑10 |
| 版本底座 | VCF9.1.1,PAIS3.0 |
| 底层依赖 | vSphere Supervisor + VPC网络(CTGW/DTGW);VKS集群;NVIDIA GPU(DirectPath I/O直通);本地Harbor镜像仓库 |
| 客户端工具 | VCF Consumption CLI、docker、huggingface‑hf‑cli |
| 内置三大推理引擎 | Infinity‑0.0.76(CPU);vLLM‑v0.20.0(GPU);llamaCPP‑server‑b9309(CPU,GPU需替换CUDA镜像) |
| 认证方式 | OIDC‑PKCE(Keycloak) / PAIS3.0新增本地用户账号,支持生成API‑Token |
| 对外接口 | OpenAI兼容REST接口,HTTPS,自签名TLS证书 |
| GPU Operator默认版本 | 25.10.1,最高可覆盖至26.3.1,需要修改PAISConfiguration CRD,UI不暴露配置项 |
vSphere Supervisor已部署,使用CTGW或DTGW的VPC网络;
Supervisor上启用PAIS Supervisor Service;
本地工作站安装:VCF Consumption CLI、docker、hf‑cli;
ESXi主机配备NVIDIA GPU,开启DirectPath I/O;
本地Harbor镜像仓库,提供模型存储;POC测试可以使用VIS Fling设备;
DNS可解析PAIS服务对外FQDN域名。
步骤1:HF‑CLI下载GGUF模型
示例下载Gemma4‑26B‑GGUF、Qwen3.8‑27B‑GGUF量化权重,仅下载Q4_K_M等量化文件,保存本地目录。
步骤2:VCF‑pais‑cli推送模型至Harbor仓库
使用vcf pais models push命令上传模型文件,指定modelName、modelStore仓库地址、tag版本;生成完整模型URI,后续部署模型端点使用该地址,格式示例:vis.vcf.lab:9443/models/unsloth/qwen3.8‑27b‑gguf:v1.0。
步骤3:ESXi主机开启NVIDIA GPU DirectPath I/O直通
vSphere WebUI编辑ESXi主机PCI设备,把目标NVIDIA GPU开启PCI直通,用于后续VM‑Class分配给VKS工作节点。
步骤4:创建PAIS专属Namespace和GPU‑VM‑Class
新建Namespace例如pais,分配存储策略;
新建VM‑Class,预留内存,绑定上一步直通GPU设备;示例nvidia‑a2000‑rtx(8vCPU,32GB预留内存);
PAIS控制平面可使用best‑effort‑medium通用VM‑Class。
步骤5:vCenter Local‑Consumption‑UI部署PAIS服务(Model Runtime Only)
选择Model Runtime Only部署模式,指定存储类、控制平面VM‑Class;
认证选择Local User Accounts,添加本地账号密码;UI已知缺陷:Issuer Base‑URL必须填写合法HTTPS地址;YAML部署时该字段可留空;
GPU配置选择passthrough直通模式;若需要GPU模型,必须选择GPU选项,否则GPU‑Operator不会部署;
确认配置提交部署,等待PAIS服务状态变为Ready。
步骤6:kubectl修改PAISConfiguration CRD配置FQDN与API‑Token能力
创建vcf context连接Supervisor;执行kubectl ‑n pais edit paisconfiguration default;
添加注解paisconfigurations.pais.vmware.com/cname填入DNS内的PAIS FQDN;
开启apiTokens配置,设置默认过期时间expirationDefault:720h,最大expirationMax:8760h;
刷新vSphere UI,FQDN字段更新完成。
步骤7:登录PAIS WebUI生成本地用户API‑Token
浏览器访问PAIS FQDN,使用本地账号登录;右上角用户菜单进入API Tokens页面,生成并保存token,用于OpenAI接口调用鉴权。
步骤8:新建Model Endpoint部署大模型推理端点
填入Harbor完整模型URI,选择仓库secret pais‑pais‑reg‑creds;填写Routing Name、Display Name;
选择Model Type与Model‑Engine;llamaCPP做GPU推理需要开启高级配置替换CUDA镜像;
选择GPU直通的VM‑Class;提交部署;
通过vcf context切换到VKS集群,使用kubectl get pods‑A、查看gpu‑operator与模型pod日志,确认模型加载完成;
使用curl调用OpenAI兼容接口做连通验证。
Infinity(0.0.76):仅CPU推理引擎;
vLLM(v0.20.0):原生GPU推理引擎,开箱即用支持NVIDIA;
llamaCPP(server‑b9309):默认仅CPU;如需GPU加速,高级配置替换为CUDA版本llama‑cpp镜像;否则只能CPU跑GGUF模型;
☑ PAIS UI部署本地用户模式,Issuer Base‑URL为UI缺陷,必须填HTTPS,YAML部署不受限。
☑ llamaCPP想要GPU,不能直接使用默认镜像,必须手动指定CUDA容器镜像。
☑ GPU‑Operator版本UI不可配置,需要修改PAISConfiguration CRD,默认25.10.1,最高支持26.3.1。
☑ 模型下载推送至Harbor是离线环境关键;不要让PAIS直接从HuggingFace公网拉取模型。
☑ 必须给PAIS配置FQDN;IP地址无法被AI‑Assistant for VCF等上层组件使用。
☑ 查看模型pod日志可以看到GGUF模型tensor警告(unused tensor)属于模型版本兼容警告,不代表部署失败;看到model loaded即代表加载成功。
☑ 默认llama‑cpp服务CORS允许全部源,生产环境需要收紧安全策略。
curl -k -X GET "https://model.vcf.lab/api/v1/compatibility/openai/v1/models" \ ‑H "Authorization: Bearer $PAIS_API_KEY" \ ‑H "Content‑Type: application/json"
paisconfiguration‑local‑user.yaml:PAIS服务CRD,本地用户模式;
llamacpp‑qwen3.8‑27b‑gguf‑modelendpoint.yml:Qwen3.8‑27B llamaCPP GPU端点;
llamacpp‑gemma4‑27b‑gguf‑modelendpoint.yml:Gemma4‑26B;
vllm‑qwen2.5‑14b‑modelendpoint.yml:vLLM示例。
Q1:llamaCPP部署后GPU没有被使用? A:默认镜像为CPU版本,高级配置替换CUDA的llama‑cpp容器镜像;同时VM‑Class绑定直通GPU,PAIS打开GPU passthrough选项。
Q2:PAIS本地用户模式为什么要修改PAISConfiguration CRD? A:UI部署本地用户不会自动开启API‑Token生成,必须修改CRD增加apiTokens配置段。
Q3:可以跳过Harbor直接让PAIS从HuggingFace下载模型吗? A:网络可达技术上可行;air‑gapped离线环境必须推送到本地Harbor仓库。
Q4:日志输出大量unused tensor警告代表模型损坏吗? A:不是,GGUF模型版本与引擎版本之间tensor字段不匹配,忽略警告;出现model loaded表示加载成功。
Q5:PAIS可以配合AI‑Assistant for VCF吗? A:可以,但PAIS必须配置FQDN域名,不能使用裸IP。
SamFW配套William Lam博文,介绍VCF9.1.1环境下PAIS3.0完整部署自有开源大模型;工作流为hf‑cli下载GGUF量化模型,vcf‑pais‑cli上传至本地Harbor镜像仓库;ESXi开启NVIDIA GPU DirectPath I/O直通,创建绑定GPU的VM‑Class;部署PAIS服务,通过修改PAISConfiguration CRD添加FQDN注解、开启本地用户API‑Token;PAIS内置Infinity、vLLM、llamaCPP三大推理引擎,llamaCPP要GPU加速必须手动替换CUDA容器镜像;部署完成后对外提供标准OpenAI兼容HTTPS推理接口;整套支持vCenter UI图形部署,也提供完整YAML资源清单用于纯离线自动化;部署关键约束:必须配置FQDN,llamaCPP默认镜像仅CPU;日志中unused tensor属于GGUF兼容警告,不等于部署故障;该能力实现企业私有云内部运行开源大模型,数据不出企业内网。