已关闭
helm配置文件优化 #142
ds_13571877104创建于  8月4日关闭于  8月28日
ds_13571877104
8月4日 创建

当前配置推理的参数存在两类不同的配置,一类是部分选项通过helm中提供的选项,例如enablePrefixCaching、maxNumBatchedTokens等,另一些则是通过extraArgs来添加,这两类配置之间当前缺乏明确的分界线,也就是到底什么配置是有选项的,什么配置是需要extraArgs的,以及是否存在默认添加的选项,这些配置的规则需要进一步明确

likedislike
openFuyao-botopenFuyao-bot成员
8月4日 添加了label:sig/sig-ai-inference
openFuyao-bot
openFuyao-bot成员
8月4日 评论:

欢迎来到 openFuyao 社区

Hey @ds_13571877104 , 感谢你对社区的贡献.

机器人使用手册

有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。

联系指引

有疑问可以联系 SIG: sig-ai-inference ,
维护者是: @foxbit, @regandy ,
审核者是: @ShiroChen, @piamposer-li, @qinwenzh .

likedislike
zhengqinwenZZZzhengqinwenZZZ成员
8月6日 添加了label:feature-enhancement
mazifan成员
8月6日 评论:

另外,是否也可以考虑允许用户使用已有的bash脚本来拉起容器?例如如下形式的配置文件:

pd:
  prefill:
    replicas: 1
    cardNum: 8
    startExec: -|
      #!/bin/bash
      do_something
      vllm serve --some-args

最终渲染成如下pod片段:

spec:
  containers:
  command:
    - /bin/bash
    - -c
  args: ${startExec}
likedislike
zhengqinwenZZZ
zhengqinwenZZZ成员
8月6日 评论:

该issue已在8/6 AI SIG例会上讨论,后续在PR中说明具体改动方案:

  • 需充分考虑inferNex用户手册参数列表、推理引擎社区推荐脚本参数内容以及其他推理服务化框架开源社区的实践进行设计
  • 需考虑extrargs和结构化参数冲突时的覆盖优先级和覆盖逻辑
  • 明确extrargs里面默认给出哪些参数示例,一般来说要求是启动推理引擎的常用参数
likedislike
zhengqinwenZZZzhengqinwenZZZ成员
8月6日 issue优先级由 无优先级 改变为 次要
pengkaijiepengkaijie
8月17日 关联了pull request:fix(helm): move vLLM engine tuning params to extraArgs and add conflict and divisibility validation
zhengqinwenZZZzhengqinwenZZZ成员
8月20日 将 pengkaijie 设为负责人
pengkaijie
pengkaijie
8月21日 评论:

helm参数配置优化方案

一 明确调整范围(Prefill、Decode、Agggregate)

InferNex 参数 当前默认值 对应 vLLM 参数 说明
enablePrefixCaching true --enable-prefix-caching 是否启用 Prefix Cache
tensorParallelSize 1 --tensor-parallel-size Tensor Parallel 并行度
pipelineParallelSize 1 --pipeline-parallel-size Pipeline Parallel 并行度
dataParallelSize 1 --data-parallel-size 全局 Data Parallel 并行度
dataParallelSizeLocal 1 --data-parallel-size-local 当前节点内的 DP Rank 数量
dataParallelRpcPort 12890 --data-parallel-rpc-port Data Parallel RPC 通信端口
maxModelLen 10000 --max-model-len 模型最大上下文长度
maxNumBatchedTokens 40960 --max-num-batched-tokens 单次调度最大 Token 数量
gpuMemoryUtilization 0.8 --gpu-memory-utilization vLLM 显存利用率
blockSize 128 --block-size KV Cache Block 的 Token 数量
extraArgs --disable-access-log-for-endpoints=/health,/metrics 直接透传 Prefill 节点额外的 vLLM CLI 参数

二 社区观察

1. llm-d

llm-d 将与部署拓扑和资源相关的参数设计为结构化字段,例如:

parallelism:
  tensor: 4
  data: 8
  dataLocal: 2
  workers: 4

仅由 vLLM 使用的模型和引擎调优参数,则配置在容器的 args 中:

containers:
  - name: vllm
    modelCommand: vllmServe
    args:
      - --max-model-len=32768
      - --gpu-memory-utilization=0.9
      - --enable-prefix-caching

llm-d 的参数划分原则可以概括为:

与部署拓扑和资源相关的参数采用结构化配置;模型和引擎调优参数通过容器 args 传递。
这一设计与 InferNex 当前计划的参数调整方向基本一致。

2. Dynamo

Dynamo 主要将以下内容结构化:

Kubernetes 组件
资源数量
副本数量
多节点配置
Pod 配置

而 TP、PP、DP 等推理引擎参数通常保留在 Worker CLI args 中,并由部署层校验部分 CLI 参数与 GPU 资源之间的一致性。
InferNex 已经直接使用 TP、PP、global DP 和 local DP 计算:

单 Pod NPU 卡数
LWS Pod 数量
DP 起始 Rank
DP 通信参数
KV Transfer 拓扑

因此,InferNex 继续将这些参数设计为结构化字段更合适;其他仅由 vLLM 消费的参数,则可以通过 extraArgs 透传。

参数 Dynamo 配置方式 InferNex 当前用途 InferNex 推荐
TP Worker args,部署层校验 GPU 资源 参与单 Pod 卡数和 KV 拓扑生成 结构化字段
PP Worker args,部署层校验 GPU 资源 参与单 Pod 卡数计算 结构化字段
global DP Worker args 参与 LWS Pod 数量计算 结构化字段
local DP Worker args 或运行参数 参与卡数、Pod 数量和 DP Rank 计算 结构化字段
DP RPC Port Worker 参数 用于生成多 DP 通信参数 结构化字段
--max-model-len Worker args 仅传递给 vLLM extraArgs
--max-num-batched-tokens Worker args 计划不再由 Chart 计算或校验 extraArgs
--gpu-memory-utilization Worker args 仅传递给 vLLM extraArgs

三 建议的结构化参数和 extraArgs

1. vLLM 拓扑结构化参数

原则:参与 Chart 的资源计算、部署拓扑生成或派生参数生成,并最终转换为对应的 vLLM CLI 参数。

以 Prefill 配置为例:

# vLLM 拓扑结构化字段,禁止在 extraArgs 中重复配置
tensorParallelSize: 1
pipelineParallelSize: 1
dataParallelSizeLocal: 1
dataParallelSize: 1
dataParallelRpcPort: 1289

这些参数同时参与 InferNex 的 NPU 资源、LWS Worker 数量、DP Rank 以及 KV Transfer 拓扑等配置,因此应保持单一配置来源。

2. 部署级结构化参数

原则:由 Chart 用于生成 Kubernetes/LWS 部署资源,但不会作为 vLLM CLI 参数直接传入。
例如:

replicas: 1

resources:
  requests: {}
  limits: {}

3. extraArgs

原则:仅由 vLLM 消费、且不参与 InferNex 资源计算和部署拓扑生成的模型配置及推理引擎调优参数,通过 extraArgs 直接传递给 vllm serve。
默认不主动覆盖 vLLM / vLLM-Ascend 的上游默认值:

# 仅由 vLLM 消费的模型配置和推理引擎调优参数,可通过 extraArgs
# 直接传递给 `vllm serve`。
#
# 未配置的参数使用对应版本 vLLM / vLLM-Ascend 的上游默认值。
#
# 示例:
# extraArgs:
#   - --max-model-len 32768
#   - --max-num-batched-tokens 8192
#   - --max-num-seqs 256
#   - --gpu-memory-utilization 0.9
#   - --block-size 128
#   - --dtype float16
#   - --enable-prefix-caching
#   - --trust-remote-code
extraArgs: []

4. 其它vllm自动管理参数

部分 vLLM 参数由 Chart 根据结构化配置、Pod 信息或 P/D 拓扑自动生成,用户无需配置,同时禁止通过 extraArgs 覆盖。

  • --served-model-name:根据模型配置统一生成;
  • --port:根据 Service 端口配置统一生成;
  • --data-parallel-start-rank:根据 LWS Worker Index 和 local DP 动态计算;
  • --data-parallel-address:根据 DP/LWS 拓扑生成;
  • --data-parallel-hybrid-lb:根据 DP 部署模式决定是否启用;
  • --kv-transfer-config:根据 P/D 角色及 KV Transfer 拓扑生成;
  • --kv-events-config:根据 KV Event / cache-indexer 等组件配置生成。

五 参数冲突怎么办?

对于已经由结构化字段配置,或由 Chart 自动生成的 vLLM 参数,禁止在 extraArgs 中重复配置。
例如:

tensorParallelSize: 4
extraArgs:
  - --tensor-parallel-size 8

此时不建议设计“结构化字段优先”或“extraArgs 优先”的覆盖规则,而应直接校验报错。
原因是:

  • 若 extraArgs 优先,可能导致 vLLM 实际启动参数与 Chart 用于 NPU 资源、LWS、DP Rank、KV Transfer 等计算的配置不一致;
  • 若结构化字段优先,则用户在 extraArgs 中填写的参数会被静默忽略,不利于问题定位。
    因此建议遵循:

单一参数只允许一个配置来源;检测到冲突时直接报错,不进行静默覆盖。

likedislike
QJWang
QJWang成员
8月24日 评论:

建议在后续提供如下关键信息:

  1. 全量用户参数配置表格(分大类,vllm 透传类配置无需全量列出,提供原始上游配置参考即可;其他的说明哪些属于结构化参数,哪些不属于;标明哪些是本次PR涉及变更的参数);次表格后续直接同步到InferNex用户使用指导手册。
  2. 对于区分结构化非结构化、直接透传等的设计区分原则;
  3. 对于当中涉及的两类check进行说明:i)对于即在结构化参数中配置,又在extraArg中透传的关联配置,对于可能存在的重复配置的冲突解决;ii) 对于TP\DP等并行策略配置,需要交叉节点实际资源(算力卡)进行校验 -- 可以在后续PR中逐步完善提交。

建议将上述内容在此Issue楼中补充完善后@zhengqinwenZZZ 打上Good First Issue标签,后续拆分2-3个PR逐个解决此Issue中的问题

likedislike
pengkaijie
pengkaijie
8月25日 评论:

InferNex Helm 全量用户参数变更及后续工作

目的:明确InferNex目前配置的主要参数项,以及为优化用户配置,后续需要变动的参数范围。

整理基线:InferNex charts/infernex/values.yaml中的参数

说明:此处罗列的是 InferNex 顶层 Chart 对用户暴露/支持的配置。vLLM-Ascend 自身大量 CLI 参数不逐项展开,统一通过 extraArgs 透传。建议可以参考vllm-ascend参数配置文档 vLLM Serve CLI Arguments了解相关详细情况。

相关工作:将针对本Issue分两次PR进行解决。PR1 — Helm 参数分类与配置入口优化;PR2 — Helm 参数合法性与关联校验。具体参数分类设计原则将在PR1中进行明确。关于参数是否可选,用户可以参考以下说明备注,也可以参考配置手册 AI推理集成部署 或对应yaml文件注释说明。后续也将针对本次修改调整用户配置手册,进行相关说明。

若有疑问可以继续在评论区提问关于哪一类的参数存在怎样的配置疑问。


标记说明

标记 含义
S 结构化参数:InferNex/Helm 需要理解其语义,并用于资源生成、拓扑、组件联动或校验
P 透传参数入口:InferNex 不应维护完整参数语义,主要直接传给上游组件
C 组件配置:属于 InferNex 集成组件自身的结构化配置,但不是 vLLM 启动参数
K8s Kubernetes/Helm 基础配置,如资源、环境变量、卷、Service 等
🔴 作为本次参数治理 PR 的重点变更对象
🟡 后续 PR 增加冲突检查或资源一致性校验
— 本 Issue 当前无需调整

接下来将对全量参数进行梳理,其中参数分为几大类:Inference Gateway参数,Global全局参数,Hermes-router参数,Infernex-backend参数,cache-indexer参数,eagle-eye参数,pd-orchestrator 参数。4.4 PD / Aggregated 推理引擎参数为本次issue重点需要考虑优化的部分

1. Inference Gateway 参数

参数路径 当前示例/默认 分类 变更标记 说明
inferenceGateway.enabled true C — 是否部署 inference gateway
inferenceGateway.name inference-gateway C — Gateway 名称
inferenceGateway.className istio C — GatewayClass
inferenceGateway.enable_http10 false C — 是否允许 HTTP/1.0/0.9 客户端
inferenceGateway.listeners[].name http C — listener 名称
inferenceGateway.listeners[].port 80 C — listener 端口
inferenceGateway.listeners[].protocol HTTP C — listener 协议
inferenceGateway.service.type NodePort K8s — Gateway Service 类型
inferenceGateway.service.nodePorts.http 30088 K8s — HTTP NodePort
inferenceGateway.istio.enabled true C — 是否启用 Istio 相关能力

2. Global 全局参数

参数路径 当前示例/默认 分类 变更标记 说明
global.image.pullPolicy IfNotPresent K8s — 镜像拉取策略
global.imagePullSecrets [] K8s — 私有镜像仓库 Secret
global.tracingEnabled false C — 是否启用 tracing(链路追踪)
global.tracingImage.repository cr.openfuyao.cn/openfuyao/eagle-eye-tracing K8s — tracing 镜像仓库
global.tracingImage.tag latest K8s — tracing 镜像版本
global.env 列表 K8s — 所有推理 Pod 共用环境变量
global.env[HF_HUB_OFFLINE] 0 K8s — HuggingFace 离线开关
global.env[PYTHONHASHSEED] 0 S/K8s — 与 cache-indexer BlockHash 规则存在联动,建议保留统一管理
global.env[VLLM_KV_EVENTS_USE_INT_BLOCK_HASHES] 1 S/K8s — 与 cache-indexer BlockHash 归一化保持一致
global.modelName Qwen/Qwen3-8B S — 用于 served-model-name、标签
global.modelPath "" S — 可选,本地模型路径
global.autoDownloadModel true S — 是否自动下载模型
global.cachePath /home/llm_cache S/K8s — 模型及编译缓存目录

3. Hermes-router 参数(独立组件)

3.1 开关与 InferenceExtension

参数路径 当前示例/默认 分类 变更标记 说明
hermes-router.enabled true C — Hermes-router 总开关
hermes-router.inferenceExtension.replicas 1 C/K8s — EPP 副本数
hermes-router.inferenceExtension.pluginsConfigFile default-plugins.yaml C — 插件配置文件
hermes-router.inferenceExtension.affinity {} K8s — Pod affinity

3.2 Routing

参数路径 示例 分类 变更标记 说明
routing.deploymentMode pd C — 路由部署模式
routing.profile kv-cache-aware C — 路由策略 profile
routing.pd.pdLabelName openfuyao.com/pdRole C — PD role label
routing.pd.pdGroupLabelName openfuyao.com/pdGroupID C — PD group label
routing.pd.prefillValue prefill C — Prefill label value
routing.pd.decodeValue decode C — Decode label value
routing.pd.leaderValue leader C — Leader label value
routing.tokenizer.model Qwen/Qwen3-8B C — 路由 tokenizer model
routing.tokenizer.tokenizerSource 可选 C — tokenizer 来源与模型不同时使用
routing.kvCacheAware.prefillKVUsageWeight 1.0 C — Prefill KV 使用率权重
routing.kvCacheAware.prefillPrefixWeight 1.0 C — Prefill prefix 权重
routing.kvCacheAware.prefillQueueWeight 1.0 C — Prefill queue 权重
routing.kvCacheAware.prefillInflightWeight 1.0 C — Prefill inflight 权重
routing.kvCacheAware.decodeKVUsageWeight 1.0 C — Decode KV 使用率权重
routing.kvCacheAware.decodeQueueWeight 1.0 C — Decode queue 权重
routing.kvCacheAware.decodeInflightWeight 1.0 C — Decode inflight 权重
routing.kvCacheAware.prefillScoreWeight 1.0 C — Prefill 总分权重
routing.kvCacheAware.decodeScoreWeight 1.0 C — Decode 总分权重
routing.requestTracking.persistence.enabled false C — 请求记录持久化开关
routing.requestTracking.persistence.flushThreshold 100 C — flush 阈值
routing.requestTracking.persistence.outputPath /tmp/hermes-inflight/completed.jsonl C — 输出路径
routing.cacheIndexer.address http://cache-indexer-service:8080 C — cache-indexer 地址

3.3 Tokenizer sidecar

参数路径 示例 分类 变更标记
inferenceExtension.tokenizer.enabled true C —
inferenceExtension.tokenizer.socketPath /var/run/tokenizer/tokenizer.sock C —
inferenceExtension.tokenizer.provider huggingface C —
inferenceExtension.tokenizer.extraArgs [] P —
inferenceExtension.tokenizer.extraEnv [] K8s —
inferenceExtension.tokenizer.volumeMounts 列表 K8s —
inferenceExtension.tokenizer.volumes 列表 K8s —

3.4 Prediction

参数路径 示例 分类 变更标记
prediction.enabled false C —
prediction.socketPath /var/run/hermes/prediction.sock C —
prediction.predictionMode active C —
prediction.timeout 1s C —
prediction.maxBatchSize 128 C —
prediction.ttftWeight 0.8 C —
prediction.tpotWeight 0.2 C —
prediction.kvWeight 1.0 C —
prediction.queueWeight 1.0 C —
prediction.prefixWeight 1.0 C —
prediction.inflightWeight 1.0 C —
prediction.targetModel "" C —
prediction.modelVersion "" C —
prediction.env 列表 K8s —
prediction.modelVolume.hostPath.path /home/llm_cache/hermes-models K8s —
prediction.modelVolume.hostPath.type Directory K8s —

3.5 Pool / Route / Provider

参数路径 示例 分类 变更标记
inferencePool.targetPorts[].number 8000 C —
inferencePool.modelServerType vllm C —
httpRoute.inferenceGatewayName inference-gateway C —
provider.name istio C —
provider.istio.destinationRule.trafficPolicy.tls.mode SIMPLE C —
provider.istio.destinationRule.trafficPolicy.tls.insecureSkipVerify true C —
provider.istio.retryConfig.enabled true C —
provider.istio.retryConfig.retryOn 字符串 C —
provider.istio.retryConfig.numRetries 3 C —

结论:Hermes-router 参数属于独立组件配置,不属于本次 vLLM 参数结构化/透传治理的核心范围。


4. Infernex-backend 参数

4.1 inference-backend 全局参数

参数路径 当前示例/默认 分类 变更标记 说明
inference-backend.images.inferenceEngine.repository quay.io/ascend/vllm-ascend K8s — 推理镜像
inference-backend.images.inferenceEngine.tag v0.18.0 K8s — 镜像版本
inference-backend.inferenceDevice huawei.com/Ascend910 S/K8s — 后续 TP/DP/cardCount 资源校验需要关联实际设备资源
inference-backend.volumeMounts.ascend.enable true K8s — 默认 Ascend volumeMounts 开关
inference-backend.volumes.ascend.enable true K8s — 默认 Ascend volumes 开关

4.2 inference-backend.services[] 服务级参数

参数路径 当前示例 分类 变更标记 说明
services[].name qwen3-8b-2p2d-01 S — 服务/资源命名基础
services[].enabled true S — 服务启用开关
services[].mode pd S — pd / aggregated,决定资源模板
services[].service.port 8000 K8s — 推理服务端口
services[].pdGroupID qwen3-8b-2p2d-01 S — PD 分组和路由联动
services[].resources.requests.cpu 4 K8s — CPU request
services[].resources.requests.memory 64Gi K8s — memory request
services[].resources.limits.cpu 8 K8s — CPU limit
services[].resources.limits.memory 128Gi K8s — memory limit

4.3 KV Transfer / Mooncake 参数

4.3.1 Connector

参数路径 示例 分类 变更标记 说明
kvTransferConfig.connectorConfig YAML 对象 S/C — InferNex 会自动填充 kv_role、kv_rank、engine_id、tp_size、dp_size 等节点相关字段,不应简单视为普通透传
connectorConfig.kv_connector MultiConnector C — Connector 类型(vLLM 上游 KVTransferConfig.kv_connector)
connectorConfig.kv_connector_extra_config 对象 C/P — Connector 上游私有配置(vLLM KVTransferConfig.kv_connector_extra_config),InferNex 仅透传

Connector 的上游配置项较多,可参考以下上游文档:
connector配置

4.3.2 Mooncake

参数路径 示例 分类 变更标记
kvTransferConfig.mooncake.use_store true C —
kvTransferConfig.mooncake.master.rpcPort 50051 C —
kvTransferConfig.mooncake.master.servicePort 30089 C/K8s —
kvTransferConfig.mooncake.master.httpPort 9003 C —
kvTransferConfig.mooncake.master.extraArgs 列表 P —
kvTransferConfig.mooncake.config YAML 文本 P/C —

4.4 PD / Aggregated 推理引擎参数

以下配置路径分别存在于:

  • services[].pd.prefill.*
  • services[].pd.decode.*
  • services[].aggregated.*

为避免重复,统一按 <engine> 表示 pd.prefill、pd.decode 或 aggregated。

参数路径 当前默认/示例 当前性质 建议分类 变更标记 建议
<engine>.replicas 1/2 Helm/LWS S — 必须结构化,决定 LWS 并行组数量
<engine>.cardCount 可选,默认推导 Helm/LWS S 🟡 必须结构化;后续与 TP/PP/DP Local 及实际设备资源交叉校验
<engine>.tensorParallelSize 1/2 Helm + vLLM S 🟡 必须保留结构化;参与卡数、LWS 和 vLLM 参数注入
<engine>.pipelineParallelSize 1 Helm + vLLM S 🟡 必须保留结构化;当前文档说明 PP 仅支持 1,同时参与卡数推导
<engine>.dataParallelSize 1 Helm + vLLM S 🟡 必须保留结构化;决定逻辑 DP rank 总数和 LWS worker 数
<engine>.dataParallelSizeLocal 1 Helm + vLLM S 🟡 必须保留结构化;决定单节点 DP rank 和卡数
<engine>.dataParallelRpcPort P:12890 / D:12777 Helm + vLLM S 🟡 多 DP 时 chart 自动注入,不能交给用户随意重复透传
<engine>.enablePrefixCaching P:true / D:false vLLM + cache 联动 S? / P? 🔴 建议迁移到 extraArgs,但其与cache-indexer开启相关,建议保留默认模式在extraArgs中设置
<engine>.maxModelLen 10000 vLLM P 🔴 建议迁移到 extraArgs,InferNex 无需依赖其语义生成拓扑
<engine>.maxNumBatchedTokens 40960 vLLM P 🔴 建议迁移到 extraArgs
<engine>.gpuMemoryUtilization 0.8 vLLM P 🔴 建议迁移到 extraArgs
<engine>.blockSize 128 vLLM P 🔴 建议迁移到 extraArgs
<engine>.env 列表 K8s K8s — 保留结构化
<engine>.volumeMounts 列表 K8s K8s — 保留结构化
<engine>.volumes 列表 K8s K8s — 保留结构化
<engine>.extraArgs 列表 vLLM CLI P 🔴 作为普通 vLLM 参数统一透传入口

4.4.1 PD ProxyServer

参数路径 示例 分类 变更标记 说明
pd.proxyServer.enabled true S/C — ProxyServer 总开关
pd.proxyServer.discoveryInterval 10 C — 服务发现间隔(秒)
pd.proxyServer.accessLog.enabled true C — 默认开启 HTTP 访问日志;false 时关闭全部访问日志
pd.proxyServer.accessLog.excludedEndpoints [/health, /metrics] C — 过滤对应端点的成功请求(4xx/5xx 仍会记录)

4.5 补充说明:vLLM / vLLM-Ascend 透传参数

4.5.1 不建议在 InferNex 中全量维护

vLLM 参数数量较多,并随上游版本持续变化。InferNex 不应为所有 vLLM 参数重复维护一套 Helm 结构化字段。

推荐统一使用:

inference-backend:
  services:
    - pd:
        prefill:
          extraArgs:
            - "--max-model-len 194560"
            - "--max-num-batched-tokens 8192"
            - "--gpu-memory-utilization 0.96"
            - "--block-size 128"

也应支持/兼容上游常见 --flag=value 形式,例如:

extraArgs:
  - "--max-model-len=194560"

4.5.2 上游参考


5. cache-indexer 参数(独立组件)

参数路径 当前示例 分类 变更标记 说明
cache-indexer.enabled true C — 组件开关
cache-indexer.resources.requests.cpu 100m K8s — CPU request
cache-indexer.resources.requests.memory 128Mi K8s — memory request
cache-indexer.resources.limits.cpu 1 K8s — CPU limit
cache-indexer.resources.limits.memory 2Gi K8s — memory limit
cache-indexer.blockKey.pythonHashSeed 0 C/S — 与 vLLM Pod 的 PYTHONHASHSEED 一致
cache-indexer.blockKey.prefixCachingHashAlgo sha256_cbor C/S — 与 vLLM --prefix-caching-hash-algo 一致
cache-indexer.blockKey.useIntBlockHashes true C/S — 与 VLLM_KV_EVENTS_USE_INT_BLOCK_HASHES 一致
cache-indexer.discovery.refreshInterval 10s C — 服务发现刷新间隔
cache-indexer.discovery.vllm.zmqPortName zmq-pub C — LWS+多DP时需考虑运行时端口偏移问题
cache-indexer.discovery.mooncakeMaster.httpPortName http C — Mooncake Master HTTP 端口名
cache-indexer.discovery.mooncakeMaster.httpPort 9003 C — 与 Mooncake Master httpPort 一致
cache-indexer.service.name cache-indexer-service K8s/C — Service 名称
cache-indexer.service.port 8080 K8s/C — Service 端口

结论:cache-indexer 参数属于独立组件配置,不属于本次 vLLM 参数结构化/透传治理的核心范围。


6. eagle-eye 参数(独立组件)

参数路径 示例 分类 变更标记 说明
eagle-eye.enabled true C — 组件开关
eagle-eye.network-performance-exporter.networkPerformanceExporter.metricsPort 8222 C/K8s — 网络性能指标端口
eagle-eye.network-performance-exporter.networkPerformanceExporter.collectInterval 15 C — 指标采集间隔(秒)
eagle-eye.tracing.enabled false C — 是否启用 tracing(链路追踪)
eagle-eye.tracing.jaeger.query.service.type NodePort K8s — Jaeger Query Service 类型
eagle-eye.tracing.jaeger.query.service.nodePort 30686 K8s — Jaeger Query NodePort

结论:eagle-eye 参数属于独立组件配置,不属于本次 vLLM 参数结构化/透传治理的核心范围。


7. pd-orchestrator 参数(独立组件)

7.1 elastic-scaler

参数路径 示例 分类 变更标记
pd-orchestrator.elastic-scaler.enabled true C —
elastic-scaler.elasticScaler.enabled true C —
elastic-scaler.name elastic-scaler C —
elastic-scaler.minReplicas 1 C —
elastic-scaler.maxReplicas 10 C —
elastic-scaler.targetRef.kind resourcescalinggroup C —
elastic-scaler.targetRef.name rsg C —
elastic-scaler.targetRef.apiVersion autoscaling.openfuyao.com/v1alpha1 C —
elastic-scaler.trigger.scalingAlgorithm apa C —
elastic-scaler.trigger.resource.metricsName cpu C —
elastic-scaler.trigger.resource.targetType Utilization C —
elastic-scaler.trigger.resource.targetValue 70 C —

7.2 resourcescalinggroup

参数路径 示例 分类 变更标记
resourcescalinggroup.enabled true C —
resourcescalinggroup.instanceConfig.enabled true C —
resourcescalinggroup.instanceConfig.name rsg C —
targetResources[].name prefill/decode C —
targetResources[].resourceRef.apiVersion leaderworkerset.x-k8s.io/v1 C —
targetResources[].resourceRef.kind LeaderWorkerSet C —
targetResources[].resourceRef.name 服务资源名 C —
scalingStrategy.type GroupReplication C —
groupConfig.groupName pd C —
scaleDown.metric.expr vllm:num_requests_running C —
scaleDown.metric.type Gauge C —
scaleDown.metric.window 2m C —
scaleDown.metric.aggregator avg C —
scaleDown.order ascending C —

结论:pd-orchestrator 参数属于独立组件配置,不属于本次 vLLM 参数结构化/透传治理的核心范围。

likedislike
pengkaijiepengkaijie
8月25日 关联了pull request:fix(helm-1): move vLLM engine options to extraArgs
pengkaijiepengkaijie
8月25日 关联了pull request:fix(examples): align access log and vLLM options
pengkaijiepengkaijie
8月27日 关联了pull request:docs(infernex): update vLLM extraArgs configuration guide
zhengqinwenZZZzhengqinwenZZZ成员
8月28日 issue状态由 开启 改变为 待测试
zhengqinwenZZZzhengqinwenZZZ成员
8月28日 关联了看板:openFuyao - v26.09问题单
zhengqinwenZZZzhengqinwenZZZ成员
8月28日 issue状态由 待测试 改变为 已完成
zhengqinwenZZZzhengqinwenZZZ成员
8月28日 关闭了 issue