
要点
- NVIDIA DSX AI Factory’s AI Cluster Runtime (AICR) packages Dynamo with its dependencies (GPU Operator, DRA, KAI Scheduler, Grove, Prometheus, agentgateway, etc.) as version-pinned, validated recipes.
- Dynamo 1.4.2 defaults to TCP on the request plane and ZMQ for KV-cache events; Frontend KV routing versus Gateway API Inference Extension (GAIE)/EPP encodes who owns ingress, timeouts, and retries.
- AICR’s flow—snapshot → recipe → bundle → deploy → validate—must pass before an application DynamoGraphDeployment lands, decoupling runtime from the serving graph.
On 30 October 2026, the NVIDIA Developer Blog published a platform-engineering piece on building a validated Kubernetes runtime for NVIDIA Dynamo with NVIDIA AI Cluster Runtime (AICR). It reads like Helmfile/GitOps instructions. The real claim is sharper: in the AI-factory stack, the bottleneck is sliding from how you declare a serving graph to whether the runtime under that graph can be pinned, reproduced, and checked. A DynamoGraphDeployment sits at the top; without aligned drivers, DRA, gang scheduling, node health, and metrics, model testing dissolves into infrastructure triage.
[1]AICR recipes are treated as reproducible artifacts: pinned component versions, compatibility constraints, validation expectations, plus environment facts such as node selectors and tolerations. For the AICR v1.0.0 Amazon EKS Dynamo inference recipe aimed at GB200/GB300 NVL72, the post lists Helm charts including GPU Operator v26.7.1, DRA GPU Driver 0.5.0, KAI Scheduler v0.16.9, Grove v0.1.0-alpha.13, Dynamo Platform 1.4.2, and Agent Gateway v1.5.0—a productized compatibility matrix, not a slogan to “just helm install.” From Dynamo 1.4, the default discovery path no longer installs NATS (opt-in remains). The request plane and KV-event plane are separate: requests default to TCP; vLLM workers publish raw KV events over local ZMQ; Dynamo’s worker runtime normalizes them onto the event plane used for routing.
[1]Two mechanisms are checkable. Routing ownership. Path 1: the Dynamo Frontend (DYN_ROUTER_MODE=kv) tokenizes, scores workers by prefix overlap and load, and dispatches—smallest topology for a model-specific endpoint. Path 2: agentgateway resolves HTTPRoute→InferencePool; Dynamo EPP selects via GAIE’s endpoint interface while the Gateway forwards; worker Frontend sidecars run --router-mode direct so they do not re-route—fit for shared Kubernetes ingress with centralized timeouts/retries/fallback. Validation gate. aicr validate in deployment and conformance phases checks GPU Operator/Dynamo health, DRA, gang scheduling, Prometheus metrics, and Gateway readiness; the application graph installs only after those pass. The post also notes predicted KV state drifts under eviction; AICR enables live events so both paths route on worker-reported state. Outlook: Dynamo 1.5 plans a native Rust EPP replacing the Go/CGO bridge to cut per-request EPP overhead.
Steelman one: recipes cut install friction, but “validated” still means vendor joint testing on named platforms and hardware—passing checks after you swap distros, driver branches, or a custom scheduler is not an SLA. Steelman two: GAIE/EPP adds CRDs and sidecars that may be heavy for teams that only need a model-specific Service; the Frontend path is smaller but leaves timeouts and fallback inside Dynamo, risking a split platform standard. Steelman three: performance validation is deliberately separate because it consumes GPUs—so a green recipe still does not certify throughput or latency contracts.
[1]For platform teams, the debate moves from “vLLM versus TensorRT-LLM” to who owns ingress and the KV event plane—and whether the runtime is audibly reproducible. For teams shipping long-lived agents, whether prefix hits and disaggregated prefill/decode can scale independently depends on that event plane and scheduling semantics actually being installed, not on how tidy the CRD YAML looks. Buying “Dynamo support” without a runtime recipe and validation gate repeats the old story: the graph is submitted, the node is unhealthy.
[1]Watch three things over the next six months: whether AICR recipes expand beyond the EKS/GB200 sample while keeping a readable pinned matrix; whether Dynamo 1.5’s Rust EPP becomes the default on shared ingress with measurable overhead cuts; and how many teams put aicr validate deployment/conformance reports into change gates rather than a one-off blog reproduce. If production Dynamo increasingly hinges on a checkable runtime rather than the ability to submit a graph, recipes like AICR stop being optional accelerators and become default procurement attachments.