#cloud-config package_update: true package_upgrade: true packages: - apt-transport-https - ca-certificates - curl - containerd runcmd: # Disabilita swap (richiesto da kubelet) - swapoff -a - sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab # Carica moduli del kernel e imposta sysctl - modprobe overlay - modprobe br_netfilter - echo "net.bridge.bridge-nf-call-iptables = 1" >> /etc/sysctl.conf - echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf - sysctl -p # Installa Kubernetes - curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.29/deb/Release.key | gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg - echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.29/deb/ /' | tee /etc/apt/sources.list.d/kubernetes.list - apt-get update - apt-get install -y kubelet=${k8s_version} kubeadm=${k8s_version} kubectl=${k8s_version} - apt-mark hold kubelet kubeadm kubectl # Inizializza il cluster con kubeadm - kubeadm init --pod-network-cidr=${pod_network_cidr} --apiserver-advertise-address=${advertise_ip} # Configura kubectl per l'utente 'ubuntu' (o il tuo utente di default nel template) - mkdir -p /home/ubuntu/.kube - cp -i /etc/kubernetes/admin.conf /home/ubuntu/.kube/config - chown -R ubuntu:ubuntu /home/ubuntu/.kube