top of page

Fleet-First Kubernetes: Inside the NKP Management & Managed Cluster Model

  • Writer: Taylor Norris
    Taylor Norris
  • Jul 13
  • 5 min read

How Nutanix Kubernetes Platform turns Cluster API into a single control point for dozens of clusters — and the concepts every IT and K8s admin needs before they run nkp create cluster.


An architectural infographic diagram detailing the Nutanix Kubernetes Platform (NKP) as a Central Control Point. The top shows a central "NKP" logo branching into three main component sections: "Konvoy (Cluster Lifecycle)" detailing on-prem and multi-cloud integrations like Nutanix AHV, vSphere, AWS, and Google Cloud; "Kommander (Fleet Management)" showcasing a centralized management dashboard; and "Nutanix Image Builder (NIB)" showing an assembly line producing GPU-enabled, FIPS compliant, and standard machine images. The bottom half maps out the infrastructure flow, showing a "Management Cluster" running Cluster API controllers and operators that manage down to "Managed Clusters" and "Attached Clusters." To the right, a large "Cluster Fleet" spans multiple datacenters, cloud regions, and edge sites, with a small diagram explaining the "CAPI Pivot" from a bootstrap KIND cluster. The bottom right displays "Slicing the Fleet" into 3D transparent multi-tenant cubes labeled as Workspaces and Projects for Dev and Finance teams.

One cluster is a project. Twenty clusters across three datacenters, two clouds, and a handful of edge sites is an operations problem. The moment you have more than a single Kubernetes cluster, the hard questions stop being "how do I run a pod" and start being "how do I provision, patch, secure, and observe all of these the same way, without hiring a platform team for each one."


That gap is exactly what the Nutanix Kubernetes Platform (NKP) is built to close. NKP describes itself as a centralized control point for an organization's application infrastructure, built around the open-source Cluster API (CAPI) project. Instead of treating each cluster as a pet, NKP treats your clusters as a fleet: declarative, lifecycle-managed, and governed from one place. This post walks through the mental model: the components, the cluster types, the CAPI machinery underneath, and how you slice the fleet into teams — so the rest of NKP makes sense.


01 Three components: Konvoy, Kommander, and the Image Builder

NKP is composed of three cooperating parts. Knowing which one owns which job saves a lot of confusion later, because almost every NKP task lives in one of them.

  • Konvoy  The cluster lifecycle manager. Konvoy uses Cluster API plus other open-source tooling to provision conformant Kubernetes clusters with networking and storage on Nutanix AHV, vSphere, AWS, Azure, GCP, and pre-provisioned bare metal — in both connected and air-gapped environments. Its cluster manager bundles Cluster API, CSI, CNI, the Cluster Autoscaler, Cert Manager, and load balancers. On Nutanix infrastructure the CNI is Cilium; every other provider uses Calico.

  • Kommander  The fleet management layer. Kommander delivers centralized observability, governance, unified policy, and the NKP UI. It manages platform applications (monitoring, logging, backup, policy, ingress, SSO), and — on the Ultimate tier — attaches external clusters and manages application lifecycle via FluxCD.

  • Nutanix Image Builder (NIB)  Creates Cluster API-compliant machine images preloaded with everything a node needs to join a cluster, including options for GPU and FIPS builds.


The architecture diagram below is worth a slow read. Notice that the Management Cluster runs the managers (Cluster API controllers, FluxCD, Git operators, cert manager, multi-tenancy) and the platform/catalog apps, while the actual workloads live out on the Managed and Attached clusters to the right. Users reach it three ways — CLI, UI, and GitOps.


An architectural block diagram of a Nutanix Kubernetes Platform (NKP) Environment, illustrating how management components interact with workloads across various infrastructures.

On the left, three user access vectors point into the environment: a user icon labeled "CLI," a computer monitor labeled "UI," and a Git logo pointing bidirectionally labeled "GitOps."

The main body is divided into three primary sections:

Management Cluster (Center): Divided into two main sub-blocks. The top "Apps" block includes "Insights," a "Catalog" (Customer, Partner, Kafka, Zookeeper), "Platform" layer (Service Mesh, Serverless, Monitoring, Policy, Tracing, Dashboard, Logging, Backup), and a "Cluster" services layer (Lifecycle, SSO, Ingress, Load Balancing). The bottom "Managers" block contains application controllers (Core Controllers, FluxCD, Git Operator, Chart Museum, DexAuth, Multi-tenancy) and core cluster components (Kubernetes API with CSI and CNI, Cluster API, Cert Manager, and Cluster AutoScaler).

Target Clusters (Right): Connected by arrows from the Management Cluster, this column breaks down workload locations into "Managed Cluster(s)" running NKP components over infrastructure (Nutanix, vSphere, AWS, Azure, GCP); cloud-native managed stacks labeled "EKS/AKS"; and "Attached Cluster(s)" supporting GKE or "Any Conformant Distribution."

Infrastructure (Bottom Base): A foundational gray bar supporting the entire architecture, spanning Edge, AI-Optimized Infra, Private Cloud, MSPs, Public Cloud, and Physical hardware.



02 The three cluster types — and why the distinction matters

Almost every decision in NKP keys off what kind of cluster you're talking to. There are three, and they map cleanly onto license tiers.

Cluster type

Who manages its lifecycle

Availability

Management cluster

Itself — it is self-managed. Also manages other clusters in a multi-cluster setup.

All editions

Managed cluster ("NKP cluster")

The management cluster owns its infrastructure, lifecycle, and applications.

All editions

Attached cluster

Created outside NKP (e.g. GKE, EKS, any conformant K8s), then connected so NKP manages its applications only — not its lifecycle.

Ultimate only

The guidance is explicit: run your workloads on managed and attached clusters, and keep the management cluster for management. The one exception is a single-cluster environment, where everything runs on the one self-managed cluster you stood up.


A simplified architectural block diagram showing a hierarchical layout of a Kubernetes "Multi-Cluster Environment."

At the top center sits a primary block labeled "Management Cluster." A black branching arrow points downwards from it to two separate, purple-tinted categorized boxes representing target workload environments:

Managed Cluster (Left): This box contains three white nested blocks indicating specific cluster types: "NKP Cluster," "EKS Cluster," and "AKS Cluster."

Attached Cluster (Right): This box contains two white nested blocks indicating external integrations: "GKE Cluster" and "Any Certified Kubernetes."
A simplified block diagram illustrating variations of a "Single-Cluster Environment."

The layout features a light gray background containing two main purple-tinted operational boxes side by side:

One Instance (Left): A box containing a single white block labeled "NKP Cluster."

Several Instances (Right): A wider box containing two identical white blocks side-by-side, each labeled "NKP Cluster."


03 How a management cluster bootstraps itself (the CAPI pivot)

The most elegant — and initially confusing — trick in NKP is how a self-managed cluster comes to exist. Cluster API needs a Kubernetes cluster to run the controllers that create Kubernetes clusters. NKP solves the chicken-and-egg with a temporary bootstrap cluster (a local KIND cluster), then pivots the CAPI resources onto the new cluster so it can manage itself.

Why this matters: A self-managed cluster is simply one where the CAPI resources and controllers that describe it run on the cluster they manage. After the pivot, your management cluster reconciles its own control plane and worker nodes the same declarative way it will reconcile every cluster you create after it.

04 The CAPI primitives you'll actually touch

Because NKP is CAPI all the way down, a little vocabulary goes a long way when you're reading cluster state or planning an upgrade.

  • Machine — a declarative spec for one node (VM or bare-metal host). Machines are immutable: change anything beyond labels/annotations/status and the controller deletes the host and provisions a fresh one that matches the new spec. Delete a Machine and its infrastructure and node go with it.

  • MachineDeployment — manages Machines the way a Kubernetes Deployment manages Pods, rolling changes across two MachineSets (old and new) for safe, declarative node rollouts.

  • MachineHealthCheck (MHC) — detects unhealthy nodes and triggers remediation. The default maxUnhealthy is 40%, tunable for your self-healing appetite.

  • ClusterResourceSet — a CRD that groups and deploys the components a raw CAPI cluster lacks out of the box (CNI, CSI, and friends) after the Kubernetes API is up.


The payoff of immutability is that there's no configuration drift to chase: a node either matches its declared spec or it's replaced. That's the same philosophy that makes the fleet predictable at scale.


05 Slicing the fleet: Workspaces, Projects, and multi-tenancy

A fleet that you can't subdivide is just a big blast radius. NKP gives you two grouping constructs.


Workspaces

A screenshot of the Nutanix Kubernetes Platform (NKP) Ultimate user interface dashboard, displaying the "Workspaces" management page.

The interface is divided into a dark left-hand navigation sidebar and a main white content area:

Navigation Sidebar: Contains menu items including Dashboard, Clusters, Workspaces (currently selected), Administration (with dropdown items: Infrastructure Providers, Identity Providers, Access Control), and Settings (with dropdown items: Resource Alerts, Banners, Pulse, Licensing). The top header shows "NKP Ultimate," a "Global" scope selector, and the user profile "Adminuser01."

Main Content Area:

Header: Displays the title "Workspaces" alongside a blue "Create Workspace" button on the far right.

Cost Metric Cards: Three summary cards are aligned horizontally. The first is titled "Top 3 by % Change in Cost (Last 1 Day)" for 12 Jul 2026 – 13 Jul 2026, listing "Management Cluster Workspace" ($0.80) and "Default Workspace" ($0.57). The second is titled "Top 3 by % Change in Cost (Last 7 Days)" for 6 Jul 2026 – 13 Jul 2026, listing the same two workspaces and amounts. The third is titled "All Workspaces Cost," showing a total of $1.37 for both the last 1 day and last 7 days.

Workspaces Table: Titled "Viewing 2 Workspaces," it features columns for Name, Namespace, Description, Clusters, Projects, and Costs (Last 1 Day). The table lists two entries: "Default Workspace" (Namespace: kommander-default-workspace, 2 Clusters, 0 Projects, $0.57 cost) and "Management Cluster Workspace" (Namespace: kommander, 1 Cluster, 0 Projects, $0.80 cost).

A Workspace is a logical grouping of clusters that share configuration, with certain settings automatically federated to its members. Workspaces let you model the org the way it actually works: by department, product, business unit, or tenant, and let those teams manage their own clusters. Platform applications and defaults are configured at the workspace level.


Projects

A screenshot of the Nutanix Kubernetes Platform (NKP) Ultimate user interface dashboard, displaying the "Projects" management page.

The layout is divided into a dark left-hand navigation sidebar and a main white content view:

Navigation Sidebar: Displays options including Dashboard, Clusters, Projects (currently selected), Applications, Insights, and an Administration dropdown containing Infrastructure Providers and Access Control. The top header bar lists "NKP Ultimate," a context selector set to "my-edge-application," and a profile dropdown on the far right labeled "Edge."

Main Content Area:

Header: Displays the section title "Projects" alongside a blue "+ Create Project" button on the right.

Cost Metric Cards: Three summary cards are aligned horizontally in the center. The first card, "Costs: Last 1 Day" (12 Aug 2024 – 13 Aug 2024), shows "online-boutique" at $10.13. The second card, "Costs: Last 7 Days" (6 Aug 2024 – 13 Aug 2024), shows "online-boutique" at $10.11. The third card, "Costs: Totals," lists both the last 1 day ($10.13) and last 7 days ($10.11) totals.

Projects Table: Positioned below a search bar filtering by name or namespace. The table contains columns for Name, Namespace, Description, Clusters, Cluster Labels, Applications, and Costs (Last 1 Day). It lists one entry: "online-boutique" (Namespace: online-boutique, Description: Online boutique applicatio..., Clusters: us-durham, us-oakland, and a Cost of $10.13).

A Project lives inside a workspace and handles multi-cluster configuration management: ConfigMaps, Secrets, services, quotas, network policies, continuous deployments, and RBAC, all propagated as federated resources. When you create a Project, NKP creates a federated namespace that is pushed to every cluster matching the Project's labels.

Mental model: Workspace = a set of clusters (a tenant's slice of the fleet). Project = a set of namespaces and config federated across a labeled subset of those clusters.

This is how NKP supports genuine multi-tenancy: central IT or a business unit can share a pool of Kubernetes clusters across several teams, each isolated by namespace and policy, each receiving a consistent configuration from one source of truth.


06 One pane of glass

All of this surfaces in a single dashboard. From here an admin sees the management cluster's health, every managed and attached cluster grouped by workspace, error/warning counts across the fleet, and (on Pro/Ultimate) the AI Navigator assistant in the corner. It's the operational home base that the architecture above exists to power.


A screenshot of the main "Dashboard" view in the Nutanix Kubernetes Platform (NKP) Ultimate user interface.

The page features a clean layout divided into an upper welcome banner and three lower monitoring summary cards:

Welcome Banner: A light blue promotional banner at the top reads "Welcome to NKP Ultimate, Nutanix's solution for managing multiple Kubernetes clusters." It includes a brief description of multi-cluster and multi-tenant oversight, a blue "Get Started" button, a "Learn More About NKP" link, a "Do not show again" checkbox, and an illustration of two cargo container ships with a cloud icon over one of them. An "Actions" dropdown button is located in the header area above the banner on the right.

Management Cluster Card (Left): Shows an "Active" status indicator next to version "v1.29.6." It features three horizontal health metric bars: CPU Requests at 82% (green bar), Memory Limits at an over-allocated 161% (orange warning bar), and Disk Usage at 13% (yellow bar). A "View Details" link is situated at the bottom.

Clusters Card (Center): Titled "Clusters (3)" with toggle buttons for "Resources" and "Cost." It displays a brief breakdown: Clusters with Errors (0), Clusters with Warnings (3), and Total Clusters (3), with a "View All" link at the bottom.

Workspaces Card (Right): Titled "Workspaces (6)" showing "Costs Last 1 Day | Top % Change." It highlights the "Management Cluster Workspace" at $26.58 with a +97.32% red trend indicator, followed by "Default Workspace" (N/A) and "demo55" (N/A). A "View All" link sits at the bottom.

Key takeaways

  • Three components, three jobs: Konvoy does cluster lifecycle, Kommander does fleet management and the UI, NIB builds the node images.

  • Cluster type drives everything: management (self-managed), managed (NKP owns lifecycle + apps), attached (NKP owns apps only, Ultimate).

  • It's CAPI underneath: the bootstrap-and-pivot makes the management cluster self-managed; immutable Machines mean no config drift.

  • Workspaces group clusters; Projects federate namespaces and config across labeled subsets — that's your multi-tenancy and your consistency story.



Additional Links






Comments


bottom of page