NVIDIA / NVIDIA/nvcf

Support isolated NVCF control planes in one Kubernetes cluster

Open
#1,481 2 comments 0 reactions 1 assignee View on GitHub

@rohancmr is already working on this.

Since Sep 4, 2026.

Dominant language
Go
Stars
218
Forks
72
Avg merge
1d 9h
Merged PRs (30d)
417

Description

Problem

The self-managed NVCF stack and NVCA deployment currently assume a single control plane per Kubernetes cluster. Resource names, namespaces, routes, migration state, and operator watches can overlap when a second control plane is installed.

Expected behavior

Operators should be able to install two control planes in one Kubernetes cluster using separate namespaces and a stable control-plane identifier. Each control plane must create, watch, update, and delete only its own resources while intentionally shared cluster-scoped prerequisites remain safe.

The legacy single-control-plane configuration must keep its existing names and behavior.

Acceptance criteria

  • Control-plane and compute-plane resources are derived from a validated control-plane identifier.
  • API routes, services, secrets, ConfigMaps, jobs, labels, migrations, and operator watches are isolated.
  • A control plane cannot reconcile resources owned by another control plane.
  • Preexisting mirrored secrets converge correctly during agent startup, including concurrent informer updates.
  • Installing, upgrading, restarting, and removing one control plane does not affect another.
  • Successful uninstall removes plane-specific namespaced and cluster-scoped hook resources.
  • Rendering, unit, integration, and local multi-control-plane lifecycle regressions cover both named and legacy modes.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.