diff --git a/provisioning/cloud-init.yaml b/provisioning/cloud-init.yaml index 51a75f4..1ea3559 100644 --- a/provisioning/cloud-init.yaml +++ b/provisioning/cloud-init.yaml @@ -68,18 +68,23 @@ runcmd: - su ${username} -c 'ssh-keygen -t ed25519 -f /home/${username}/.ssh/id_ed25519 -q -N "" ' # SSH Passthrough for user git - usermod -s /usr/local/bin/gitea-shell git - # k3s - - curl -sfL https://get.k3s.io | sh -s - --disable=traefik + # Install kubectl + - curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" + - install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl + # Install k0s + - curl -sSLf https://get.k0s.sh | sudo sh + - k0s install controller --enable-worker + - systemctl enable --now k0scontroller # Wait for k3s to be ready - - timeout 300 bash -c 'until kubectl get nodes; do sleep 5; done' + - timeout 300 bash -c 'until k0s kubectl get nodes; do sleep 5; done' # Set up kubeconfig for user - mkdir -p /home/${username}/.kube - - cp /etc/rancher/k3s/k3s.yaml /home/${username}/.kube/config + - k0s kubeconfig admin > /home/${username}/.kube/config - chown -R ${username}:${username} /home/${username}/.kube - chmod 600 /home/${username}/.kube/config # Set up kubeconfig for git - mkdir -p /home/git/.kube - - cp /etc/rancher/k3s/k3s.yaml /home/git/.kube/config + - k0s kubeconfig admin > /home/git/.kube/config - chown -R git:git /home/git/.kube - chmod 600 /home/git/.kube/config # Dotfiles @@ -92,9 +97,4 @@ runcmd: ' # Install Flux - curl -s https://fluxcd.io/install.sh | bash - # Install Velero - - curl -LO https://github.com/vmware-tanzu/velero/releases/download/v1.15.1/velero-v1.15.1-linux-amd64.tar.gz - - tar -xzf velero-v1.15.1-linux-amd64.tar.gz - - mv velero-v1.15.1-linux-amd64/velero /usr/local/bin/ - - chmod +x /usr/local/bin/velero final_message: "The system is finally up, after $UPTIME seconds"