Stappen voor het Opzetten van de Control Plane voor CKA K8s Cluster

Deze pagina beschrijft de stappen voor het opzetten van de control plane node in een Kubernetes-cluster. Het behandelt clusterinitialisatie, het verkrijgen van het joincommando voor werkknopen en het installeren van zowel de Calico-netwerkplugin als de Metrics-server.

Randvoorwaarden

  • 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.

Clusterinitialisatie

Om je Kubernetes-cluster te initialiseren, begin je met het ophalen van de vereiste containerafbeeldingen:

sudo kubeadm config images pull

Stel vervolgens omgevingsvariabelen in om het cluster te configureren:

export C2_NODE_NAME=$(hostname -s)
export C2_CONTROL_IP="$(ip --json a s | jq -r '.[] | if .ifname == "eth1" then .addr_info[] | if .family == "inet" then .local else empty end else empty end')"
export C2_POD_CIDR=172.18.0.0/16
export C2_SERVICE_CIDR=172.17.1.0/18
env | grep C2_

Initialiseer nu het Kubernetes-cluster met het volgende commando:

kubeadm init --apiserver-advertise-address=$C2_CONTROL_IP \
  --apiserver-cert-extra-sans=$C2_CONTROL_IP \
  --pod-network-cidr=$C2_POD_CIDR \
  --service-cidr=$C2_SERVICE_CIDR \
  --node-name "$C2_NODE_NAME" \
  --ignore-preflight-errors Swap

Kube Config

Als gebruiker vagrant, volg dit installatieproces.

Maak de benodigde Kube-configuratiemap aan en kopieer de adminconfiguratie:

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
cp -i $HOME/.kube/config /vagrant/tmp/kubeconfig

Bewaar Join Commando

Om het proces voor werkknopen die zich bij het cluster voegen te vereenvoudigen, sla je het joincommando op in de map /vagrant1.

kubeadm token create --print-join-command > /vagrant/tmp/join.sh

Installeer Calico Netwerkplugin

Download en installeer de Calico-netwerkplugin:

export CALICO_VERSION=v3.29.3
curl https://raw.githubusercontent.com/projectcalico/calico/${CALICO_VERSION}/manifests/calico.yaml -O
kubectl apply -f calico.yaml

Installeer Metrics-server

Pas ten slotte de Metrics-server-manifest toe:

kubectl apply -f https://raw.githubusercontent.com/techiescamp/kubeadm-scripts/main/manifests/metrics-server.yaml

  1. Vagrant is standaard ingesteld om de projectmap met de Vagrantfile binnen elke Vagrant-box te koppelen op het pad /vagrant. Dit maakt het mogelijk om eenvoudig bestanden te delen tussen de host en de Vagrant-boxen. ↩︎



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