26 lines
1.0 KiB
YAML
26 lines
1.0 KiB
YAML
#cloud-config
|
|
runcmd:
|
|
- swapoff -a
|
|
- sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
|
|
- apt-get update -y
|
|
- apt-get install -y apt-transport-https ca-certificates curl containerd
|
|
- modprobe overlay
|
|
- modprobe br_netfilter
|
|
- |
|
|
cat <<EOF | tee /etc/sysctl.d/99-kubernetes-cri.conf
|
|
net.bridge.bridge-nf-call-iptables = 1
|
|
net.ipv4.ip_forward = 1
|
|
net.bridge.bridge-nf-call-ip6tables = 1
|
|
EOF
|
|
- sysctl --system
|
|
- 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 -y
|
|
%{ if is_control_plane ~}
|
|
- apt-get install -y kubelet=${k8s_version} kubeadm=${k8s_version} kubectl=${k8s_version}
|
|
- apt-mark hold kubelet kubeadm kubectl
|
|
%{ else ~}
|
|
- apt-get install -y kubelet=${k8s_version} kubeadm=${k8s_version}
|
|
- apt-mark hold kubelet kubeadm
|
|
%{ endif ~}
|