Documentation
Multi-Cluster Management
Coordinate resources and operations across multiple Kubernetes clusters.
NebuaCloud enables you to manage multiple Kubernetes clusters—whether they are public, private, or on-premises—from a single dashboard. This guide explains how to onboard clusters using real product flows: importing with kubeconfig, connecting public clusters, or creating on-prem/private clusters using the NebuaCloud agent.
Cluster Onboarding Options
- Import Existing Cluster: Import any Kubernetes cluster by uploading its kubeconfig file.
- Connect Public Cluster: Register a public cloud cluster by providing its kubeconfig or API access.
- Create On-Prem/Private Cluster: Deploy the NebuaCloud agent in your private datacenter or edge location to securely connect your cluster.
Why Multi-Cluster?
Managing multiple clusters allows you to:
- Isolate workloads by environment, team, or customer
- Support hybrid and edge deployments
- Centralize monitoring, policy, and access control
Importing a Cluster (kubeconfig)
- Go to Clusters > Add Cluster in the NebuaCloud dashboard.
- Select Import Existing Cluster.
- Upload your kubeconfig file.
- The cluster will appear in your dashboard for unified management.
Connecting a Public Cluster
- Go to Clusters > Add Cluster.
- Select Connect Public Cluster.
- Provide the required kubeconfig or API credentials.
- The cluster will be registered and managed centrally.
Creating/Connecting an On-Prem or Private Cluster
To connect a private or on-premises cluster, install the NebuaCloud agent directly on the target Linux hosts. The agent runs as nebua-agent.service under systemd, connects outbound to NebuaCloud, and owns local k3s lifecycle tasks such as bootstrap, health checks, kubeconfig sync, and recovery.
Container mode is no longer the recommended production path for private cluster onboarding. Host repair and k3s supervision are more reliable when the agent runs beside k3s.service on the node.
Agent Installation (Public/Private DC)
Run the hosted installer on the first control-plane node. The NebuaCloud dashboard should generate this command with the correct cluster ID and token.
curl -fsSL https://nebuacloud.com/install/nebua-agent.sh | sudo bash -s -- \
--cluster-id <cluster-id> \
--token '<agent-token>' \
--node-type control-plane \
--env production
For worker nodes, use the same cluster ID and token with --node-type worker:
curl -fsSL https://nebuacloud.com/install/nebua-agent.sh | sudo bash -s -- \
--cluster-id <cluster-id> \
--token '<agent-token>' \
--node-type worker \
--env production
Install the agent on the first control-plane node at minimum. For stronger node-level visibility and recovery, install it on every private cluster node and set --node-type appropriately.
The hosted installer downloads the prebuilt Nebua agents bundle from the public release repository. The target host only needs Linux with systemd, curl, tar, root access, and outbound HTTPS. It does not need Docker, Node.js, pnpm, git, or a monorepo checkout.
After installation, verify the service and cluster state:
sudo systemctl status nebua-agent --no-pager
sudo journalctl -u nebua-agent -f
sudo k3s kubectl get nodes
The installer writes configuration to /etc/nebua/nebua-agent.env, installs the service at /etc/systemd/system/nebua-agent.service, installs bundled Node under /usr/local/lib/nebua/bin/node, installs the runtime under /usr/local/lib/nebua/runtime, and starts nebua-agent.service.
Replace <cluster-id> and <agent-token> with the values assigned by the NebuaCloud dashboard. See Agent Installation for environment variables, update flow, and troubleshooting.
Centralized Management Features
Once clusters are connected, you can:
- Monitor health and workloads across all clusters
- Apply policies and RBAC centrally
- Deploy workloads to any cluster
- View logs and metrics in one place
Next Steps: