Files
2026-07-13 12:24:33 +08:00

51 lines
2.0 KiB
YAML

# CacheBlendEngine used by the e2e_gpu CacheBlend integration spec.
#
# NewCBEFromFixture decodes this YAML into a typed CacheBlendEngine and
# overrides metadata.name / metadata.namespace. The spec then overrides the
# two env-driven, deployment-specific bits before applying:
#
# - spec.image (CACHEBLEND_ENGINE_IMAGE; the lmcache
# blend server image — public by default)
# - spec.injection.payloadImage (CACHEBLEND_PAYLOAD_IMAGE; the PRIVATE
# cacheblend-plugin init-container image)
#
# spec.injection.imagePullSecrets references the docker-registry Secret the
# spec creates in this namespace from CACHEBLEND_REGISTRY_USER/TOKEN. The
# mutating webhook appends it to the vLLM pod so the payload init container
# can pull the private image.
apiVersion: lmcache.lmcache.ai/v1alpha1
kind: CacheBlendEngine
metadata:
name: cb-integration
spec:
# The lmcache blend server image. Public; pinned to the same image the
# vLLM workload uses so a fresh GPU node pulls it only once. Nightly to stay
# in the CacheBlend compatibility window with the latest-nightly payload.
image:
repository: lmcache/vllm-openai
tag: latest-nightly
pullPolicy: IfNotPresent
# L1 cache is REQUIRED. 8 GiB is plenty for the small smoke model.
l1:
sizeGB: 8
injection:
# The PRIVATE cacheblend-plugin init-container image. The spec overrides
# repository/tag from CACHEBLEND_PAYLOAD_IMAGE; these are the defaults.
payloadImage:
repository: tensormesh/cacheblend-plugin
tag: latest-nightly
pullPolicy: IfNotPresent
# Pull secret for the private payload image. Created by the spec in this
# namespace (name must match the spec's pullSecretName constant).
imagePullSecrets:
- name: cacheblend-registry
# Place the engine on the GPU worker so the vLLM pod (same nodeSelector)
# co-schedules — CacheBlend's CUDA-IPC KV handoff requires colocation.
nodeSelector:
nvidia.com/gpu.present: "true"
logLevel: INFO