Skip to content

Recast KEP core model to a spoke-reconciled lifecycle#2

Open
roguepikachu wants to merge 1 commit into
anoop2811:kep-cluster-planesfrom
roguepikachu:kep-spoke-reconciled-lifecycle
Open

Recast KEP core model to a spoke-reconciled lifecycle#2
roguepikachu wants to merge 1 commit into
anoop2811:kep-cluster-planesfrom
roguepikachu:kep-spoke-reconciled-lifecycle

Conversation

@roguepikachu
Copy link
Copy Markdown

Summary

Recasts the Cluster Infrastructure KEP core model so the spoke is self-sufficient:

  • The hub owns a SpokeCluster per managed cluster: the fleet handle you list with kubectl get spokeclusters and the dispatcher that hands a blueprint revision to the spoke.
  • The spoke runs vela-cluster-core, which reconciles the dispatched ClusterBlueprint into a self-reconciling Cluster and keeps it converged locally, with or without the hub.
  • Status push-back is removed. The hub reads spoke state by querying on demand, so hub downtime never stops a spoke from reconciling.
  • The lifecycle phases are reframed to infraProvisioning (hub), planeProvisioning (spoke), and healthValidation (hub/both).

Sections changed

  • The Approach; CRDs Introduced (adds SpokeCluster, recasts Cluster)
  • What Lives Where (hub vs spoke responsibilities, single-pane-of-glass callout)
  • Relationship to Existing Multi-Cluster Architecture: Proposed Architecture, Design Principles, Controller Ownership Model, Migration Path, Controller Reconciliation, Controller Responsibilities Matrix
  • Core CRDs: adds a SpokeCluster summary, recasts the Cluster intro
  • Cluster Lifecycle Phases (renamed and rewritten)
  • Table of Contents anchors

Deferred (follow-up)

The downstream sections still describe the prior hub-centric flow and are not yet updated: the Cluster spec catalog (some fields, for example credential and rolloutStrategyRef, move to SpokeCluster), the provision/adopt CLI, rollouts, health, and the Use Cases. This is called out inline with a field-migration note on the Cluster CRD.

Test plan

  • Markdown renders and the TOC links resolve for the renamed and added headings
  • Review the model for consistency with the Phase 1 connect plan (GWCP-100435)

Rework the Cluster Infrastructure KEP core model so the spoke is
self-sufficient:

- Introduce SpokeCluster as the hub-side fleet handle and blueprint
  dispatcher (kubectl get spokeclusters).
- Recast Cluster as the spoke-side, self-reconciling object that
  vela-cluster-core builds from the dispatched ClusterBlueprint and keeps
  converged locally.
- Replace status push-back with hub-initiated, on-demand reads, so hub
  downtime never stops spoke reconciliation.
- Reframe the lifecycle phases to infraProvisioning (hub),
  planeProvisioning (spoke), and healthValidation (hub/both).
- Update The Approach, CRDs Introduced, What Lives Where, the controller
  ownership/reconciliation/responsibilities sections, the migration path,
  and the table of contents.

Downstream sections (the Cluster spec catalog, provision/adopt CLI,
rollouts, health, and use cases) still describe the prior hub-centric flow
and are flagged inline for a follow-up.
@roguepikachu roguepikachu requested a review from anoop2811 as a code owner May 29, 2026 17:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant