Task: set up Canonical k8s substrate
Goal
Install and configure Canonical k8s inside the sandbox VM and register it as a Juju cloud so that a Juju controller can be bootstrapped against it.
Steps
Run the setup script:
$PROJECT_ROOT/development-sandbox/bin/setup-k8s.shThis is idempotent. Each step checks whether it has already been done. Wait for it to complete before proceeding.
Bootstrap a Juju controller. Use a descriptive controller name:
juju bootstrap local-k8s k8s-ctrlCreate a working model:
juju add-model testingVerify the substrate is ready:
juju status -m testing
Notes
kubectlis not available directly; usesudo k8s kubectlinstead.- The kubeconfig is at
/home/ubuntu/k8s.yaml. SetKUBECONFIG=/home/ubuntu/k8s.yamlif Juju commands need it explicitly. - The
local-k8sJuju cloud name is used by convention. Use it when bootstrapping. - k8s bootstrap and
wait-readycan take several minutes on first run.