云容器引擎部署HPKV指南 创建并挂载 HPFS 极速缓存 HPKV 需使用 HPFS 并行文件系统作为三级存储层,具体操作如下: 1. 创建文件系统 登录并行文件服务 HPFS 控制台,创建文件系统。文件系统需选择与 GPU 物理机规格相匹配的集群,否则将无法正常挂载。集群匹配关系的详细说明,请参见产品能力地图。 具体创建操作请参见创建文件系统。 2. 挂载文件系统至 GPU 物理机 将创建好的 HPFS 文件系统挂载至 GPU 物理机的 /mnt/hpfs 目录,以便推理服务读写缓存数据。 具体挂载操作请参见HPFSPOSIX 客户端挂载。 部署 HPKV 模板 完成基础资源准备后,需将 HPKV 的容器镜像与模板文件上传至容器镜像服务与模板市场,具体操作如下: 1. 获取 HPKV 模板文件 HPKV 模板文件为 .tgz 格式的压缩包。您可通过工单申请,在问题描述中填写:并行文件服务 HPFS,申请试用 HPKV 服务。 通过客户经理获取模板文件的下载链接,将 HPKV 模板文件下载至 GPU 物理机上挂载的 HPFS 文件系统目录中。 2. 开通并配置容器镜像服务 HPKV 部署需使用容器镜像服务存放相关镜像与模板文件。 1. 开通企业版 :登录容器镜像服务控制台,开通企业版实例。具体操作请参见开通企业版实例。 2. 创建命名空间 :在实例中创建用于存放 HPKV 镜像的命名空间。具体操作请参见容器镜像命名空间。 3. 创建镜像仓库 :在命名空间下创建镜像仓库,用于存放 HPKV 容器镜像。具体操作请参见容器镜像仓库。 4. 创建 Chart 仓库 :在实例中创建 Chart 仓库,用于存放 HPKV 模板文件(.tgz 包),注意仓库名称必须和模版文件的名称一致,具体操作请参见HelmChart命名空间、HelmChart镜像仓库。 3. 推送容器镜像至镜像仓库 1. 导入镜像 :将获取的容器镜像 tar 包下载至本地。通过客户经理获取容器镜像的下载链接,将容器镜像同样下载至 GPU 物理机上挂载的 HPFS 文件系统目录中。 2. 使用 Docker 命令导入: shell yum install y docker vim /etc/docker/daemon.json { "runtimes": { "nvidia": { "args": [], "path": "nvidiacontainerruntime" } }, "dataroot": "/data/dockerdata" } systemctl restart docker docker ps docker load i 3. 上传镜像 :登录镜像仓库,将导入的镜像推送至已创建的镜像仓库。具体操作请根据控制台指引操作或参见推送和拉取容器镜像。 4. 推送模板文件至 Chart 仓库 1. 登录 GPU 物理机节点:通过 SSH 登录已纳管的 GPU 物理机。 2. 推送模板 :将获取的 .tgz 模板文件推送至 Chart 仓库。具体操作请根据控制台指引操作或参见推送和拉取Helm Chart。 5. 下载模型文件 通过客户经理获取模型文件的下载链接,将模型文件同样下载至 GPU 物理机上挂载的 HPFS 文件系统目录中。 6. 使用模板发布应用 1. 查看模板:在容器平台的“模板市场”中,进入“我的模板”,即可看到已上传的 HPKV 模板。 2. 获取凭证 :在容器平台的“配置管理”中,进去“镜像拉取凭证”,创建镜像拉取凭证,具体操作请参见镜像拉取凭证。 3. 发布模板 :在模板包版本中点击“发布”按钮后,在右侧的弹窗中填写“实例名称”,选择待发布的“集群名称”和“命名空间”,按下面示例编辑“values”,点击“确认”完成发布。具体操作请参见模板市场。 shell image: repository: ds0001registryshanghai15.crsinternal.ctyun.cn/XXXXXX/XXXXXX pullPolicy: IfNotPresent imagePullSecrets: name: XXXXXX commandArgs: /opt/start.sh 64g true && exec env VLLMENABLECTKVCTrue VLLMCTKVCSDKPATH/usr/local/kvstore/lib/ VLLMCTKVCGRPCPORT50051 vllm serve /mnt/hpfs/modelscope/models/Qwen/Qwen2.532BInstruct dtypeauto blocksize64 servedmodelname Qwen2.532BInstruct enableautotoolchoice toolcallparser hermes pipelineparallelsize 1 tensorparallelsize 4 port 8000 cpuoffloadgb0 enforceeager gpumemoryutilization0.95 maxmodellen32768 maxnumbatchedtokens32768 disablelogrequests kvtransferconfig '{"kvconnector":"KVStoreConnectorV1", "kvrole":"kvboth"}' resources: limits: hugepages2Mi: 200Gi memory: 300Gi requests: hugepages2Mi: 200Gi memory: 300Gi service: type: NodePort port: 8000 nodePort: 31800 关键参数说明 参数 说明 kvtransferconfig 启用极速缓存 HPKV 功能,kvconnector 指定连接器类型,kvrole 设置为 kvboth 表示同时支持读写缓存,无需修改 repository 需要设置为容器镜像的下载地址,参见第3步 imagePullSecrets 需要设置为镜像拉取的凭证,参见第6步 “ /mnt/hpfs/modelscope/models/Qwen/Qwen2.532BInstruct” 需要设置为模型文件下载地址,参见第5步 7. 验证服务启动 通过 curl 命令发送推理请求,验证缓存是否生效: shell curl shell curl X POST H "ContentType: application/json" d '{ "model": "/home/user/models/Qwen/Qwen2.50.5BInstruct/", "prompt": "请介绍一下天翼云", "maxtokens": 100 }'