node-lifecycle

Add, drain, and remove k3s nodes and KubeStellar WEC clusters in a home lab.

11|9|Updated May 25, 2026
One-click install
npx skills add https://github.com/projectbluefin/lab --skill node-lifecycle-projectbluefin
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: node-lifecycle
Source: https://github.com/projectbluefin/lab/tree/main/docs/skills/node-lifecycle
Command: npx skills add https://github.com/projectbluefin/lab --skill node-lifecycle-projectbluefin

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Growing or shrinking a home Kubernetes cluster involves error-prone manual steps: joining k3s agents, registering remote clusters, draining nodes safely, and confirming that build capacity actually scales. This Skill provides the agent-executable runbook for the full node and cluster lifecycle in the Bluefin Server lab. ## Core Features & Use Cases - k3s node join: Install the k3s agent on a new PC as a persistent systemd service, verify scheduling, and apply storage labels and local-path configuration. - WEC cluster join: Register a separate cluster with KubeStellar via the register-wec Argo WorkflowTemplate or clusteradm, including zero-touch bootstrap token options. - Drain and removal: Safely drain nodes, delete nodes or ManagedClusters, and check PVCs, KubeVirt VMIs, and BuildStream workers first. - Use Case: You bought a second PC running Bluefin Server and want it to join your existing k3s cluster so BuildStream builds parallelize across both machines, then verify the build grid expanded. ## Quick Start Ask the agent to join a new PC to the k3s cluster and verify that BuildStream workers spread onto the new node.

Frequently Asked Questions about node-lifecycle

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a second node to a k3s cluster?▼

Install the k3s agent on the new machine with the get.k3s.io script, passing K3S_URL pointing to the server and the K3S_TOKEN from the server config. The k3s-agent systemd unit starts automatically and rejoins after reboot; verify with kubectl get nodes.

When should I join a node versus register a WEC cluster?▼

Use a shared-cluster node join when the new PC is at the same site, giving one scheduling domain with live migration and no extra control plane. Use a WEC join only for a separate cluster at another site or one that must stay autonomous offline.

How do I register a remote cluster with KubeStellar?▼

Submit the register-wec Argo WorkflowTemplate with the wec-name parameter, or run clusteradm join on the remote side with the hub token and apiserver endpoint, then accept on the hub. Remote clusters need external reachability via Gateway API TLSRoute or LoadBalancer.

What should I check before draining a Kubernetes node?▼

Check for local-path PVCs on the node since that data does not move, KubeVirt VMIs that must be migrated or stopped, and BuildStream workers whose loss shrinks the build grid. Then run kubectl drain with --ignore-daemonsets and --delete-emptydir-data.

How do I verify builds scale after adding cluster capacity?▼

Check that BuildBarn worker pods spread onto the new node with kubectl get pods -n buildbarn -o wide, then submit the dakota-build-pipeline workflow and compare wall time and parallel job count against the previous run.