Cluster Profiles
KSail’s --profile flag provides pre-built cluster profile templates that bundle opinionated combinations of CNI, CSI, policy engine, GitOps, and other settings into named starting points. This reduces time-to-first-cluster by eliminating manual assembly of configuration after cluster creation.
How --profile Works
Section titled “How --profile Works”When you pass --profile to ksail cluster init, KSail applies the profile’s defaults to the generated ksail.yaml. Individual flags (--cni, --csi, --gitops-engine, etc.) still override profile defaults when explicitly provided.
# Initialize with the default profile (same as omitting --profile)ksail cluster init --profile DefaultAvailable Profiles
Section titled “Available Profiles”Default
Section titled “Default”The Default profile preserves the current ksail cluster init behaviour — it is a no-op that uses the standard defaults for all fields:
- Distribution: Vanilla (Kind)
- CNI: Default (distribution-provided)
- CSI: Default (distribution-provided)
- GitOps Engine: None
- Policy Engine: None
ksail cluster init --profile Default# Equivalent to: ksail cluster initOverriding Profile Defaults
Section titled “Overriding Profile Defaults”Profiles set defaults — any explicitly provided flag takes precedence:
# Start from Default profile but switch to Cilium CNIksail cluster init --profile Default --cni Cilium
# Start from Default profile with K3s distributionksail cluster init --profile Default --distribution K3sCompatibility
Section titled “Compatibility”The --profile flag is compatible with all four distributions (Vanilla, K3s, Talos, VCluster). Unsupported combinations will produce a clear error during initialization.
Related
Section titled “Related”- Declarative Configuration — Full reference for
ksail.yaml - CLI Flags: cluster init — All available init flags