Realm manifest¶
apiVersion: v1beta1
kind: Realm
metadata:
name: main
labels: {}
spec:
namespace: kukeon-main
registryCredentials:
- username: myuser
password: mypass
serverAddress: registry.example.com
status:
state: Ready
cgroupPath: /kukeon/main
See Concepts → Realm for what a realm is.
spec¶
spec.namespace (string, optional)¶
The containerd namespace this realm uses for its images, containers, and tasks. Defaults to the realm's name; override when you need a namespace that differs from the realm name (e.g., for historical compatibility with kuke-system.kukeon.io).
spec.registryCredentials (array, optional)¶
Authentication for image registries. Scoped to the realm — two realms can use different credentials for the same registry.
| Field | Type | Required | Description |
|---|---|---|---|
username |
string | yes | Registry username |
password |
string | yes | Registry password or token |
serverAddress |
string | no | Registry server (e.g., docker.io, ghcr.io). If omitted, applies to the registry in the image reference. |
status¶
| Field | Type | Description |
|---|---|---|
state |
Pending, Creating, Ready, Deleting, Failed, Unknown |
Lifecycle state |
cgroupPath |
string | Absolute cgroup path: /kukeon/<realm> |
subtreeControllers |
array of string | Cgroup-v2 controller set actually delegated on this realm's cgroup.subtree_control after the host-root filter (e.g. cpu, memory, io, pids) |
createdAt |
RFC3339 timestamp | Wall-clock time of the first persist for this realm. Set once and never moves. |
updatedAt |
RFC3339 timestamp | Wall-clock time of the most recent persist. |
readyAt |
RFC3339 timestamp | Wall-clock time of the first State==Ready persist. Set-once: never overwritten on subsequent Ready transitions or flaps. |
reason |
string | Short reason code summarizing why state is in its current value. Empty when none has been recorded. |
message |
string | Human-readable detail backing reason; especially valuable on state: Failed. |
cgroupReady |
bool | Whether cgroupPath actually exists on the host filesystem as of the last status write — separates intent from observation. |
containerdNamespaceReady |
bool | Whether the containerd namespace recorded in spec.namespace was actually present as of the last status write. |
status is populated by Kukeon; anything you set when applying is overwritten on reconcile.
Minimal¶
Equivalent to sudo kuke create realm mytenant — Kukeon fills in spec.namespace from the name.