Algemene Installatiestappen voor CKA K8s Cluster

Deze pagina schetst de essentiële installatiestappen voor zowel master- als worker-nodes in een Kubernetes-cluster. Zet swap uit, laad de vereiste kernelmodules, stel de nodige systeemparameters in en installeer CRI-O runtime, Kubeadm en gerelateerde tools.

Zet Swap Uit

Schakel swap onmiddellijk uit met de volgende opdracht:

sudo swapoff -a

Om te zorgen dat swap uit blijft na een herstart, wijzig je het fstab-bestand:

sudo sed -i 's|^/swap.img|#/swap.img|g' /etc/fstab

Laad Modules

Laad de benodigde modules:

cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF

Voer vervolgens de volgende opdrachten uit:

sudo modprobe overlay
sudo modprobe br_netfilter

Sysctl Parameters

Stel de vereiste sysctl-parameters in die na herstarts behouden blijven:

cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables  = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward                 = 1
EOF

Pas de sysctl-parameters zonder te herstarten toe:

sudo sysctl --system

Installeer CRI-O Runtime

Werk de pakketlijst bij en installeer de vereiste pakketten:

sudo apt-get update -y
sudo apt-get install -y \
 software-properties-common \
 curl \
 apt-transport-https \
 ca-certificates

Voeg de CRI-O pakketrepository toe:

curl -fsSL https://pkgs.k8s.io/addons:/cri-o:/prerelease:/main/deb/Release.key |
    gpg --dearmor -o /etc/apt/keyrings/cri-o-apt-keyring.gpg
echo "deb [signed-by=/etc/apt/keyrings/cri-o-apt-keyring.gpg]
https://pkgs.k8s.io/addons:/cri-o:/prerelease:/main/deb/ /" |
    tee /etc/apt/sources.list.d/cri-o.list

Installeer vervolgens CRI-O:

sudo apt-get update -y
sudo apt-get install -y cri-o

Schakel de CRI-O-service in en start deze:

sudo systemctl daemon-reload
sudo systemctl enable crio --now
sudo systemctl start crio.service

Installeer Kubeadm

Voeg de Kubernetes-pakketondertekening sleutel toe:

curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.28/deb/Release.key |
  gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg

Voeg de Kubernetes-repository toe:

echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg]
https://pkgs.k8s.io/core:/stable:/v1.28/deb/ /" |
  sudo tee /etc/apt/sources.list.d/kubernetes.list

Werk de pakkettenlijst bij en installeer de benodigde Kubernetes-componenten:

sudo apt update
sudo apt install -y kubeadm=1.28.15-1.1 \
  kubelet=1.28.15-1.1 \
  kubectl=1.28.15-1.1

Schakel Auto-Update Diensten uit

Voorkom de automatische update van specifieke pakketten:

sudo apt-mark hold kubelet kubectl kubeadm cri-o

Laatste Configuratie

Installeer jq voor het verwerken van JSON-gegevens:

sudo apt install jq -y

Haal het lokale IP-adres op voor configuratie:

local_ip="$(ip --json a s | jq -r '.[] | if .ifname == "eth1" then .addr_info[] | if .family == "inet" then .local else empty end else empty end')"

Creëer of wijzig de Kubelet-configuratie:

cat > /etc/default/kubelet << EOF
KUBELET_EXTRA_ARGS=--node-ip=$local_ip
${ENVIRONMENT}
EOF

Herstart ten slotte de Kubelet-service:

sudo systemctl restart kubelet
sudo systemctl status kubelet


Laatst gewijzigd 2025.04.03: cka content C2-780 C2-781 (b5f908b)