Login
Bitte Passwort eingeben.
!!! JavaScript und Cookies müssen aktiviert sein !!!
Beschreibung
diese Kurzbeschreibung soll die Schritte darstellen, wie Sie ein Kubernetes (k8s) Cluster Lab für Testzwecke Aufbrauen Können.
Systemvorrausetzung – 3 VMs
- Debian 11 - minimal Installation
- 2 vCPU, 2GB RAM und 20GB vHDD
- Internet Zugriff und ein User mit Admin Rechten
Master > kadmin
Worker > wadmin
HINWEIS: Für den Test wurde eine VM mit Debian 11 in der minimal Installation bereitgestellt.
(Siehe Quelle des Tutorials).
------- Anpassung(en) Pro Maschine
Pro Maschine
hostnamectl set-hostname "master"
hostnamectl set-hostname "workera"
hostnamectl set-hostname "workerb"
hostnamectl set-hostname "rancher"
(Bsp. rancher)
nano /etc/hosts
#127.0.1.1 vm07.netz vm07
127.0.1.1 rancher.netz rancher
# Master
192.168.1.135 master.netz master
# Worker
192.168.1.136 workera.netz workera
192.168.1.137 workerb.netz workerb
192.168.1.138 rancher.netz rancher
swapoff -a
sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
------- Kernel Anpassung
sudo modprobe br_netfilter
echo 'net.bridge.bridge-nf-call-ip6tables = 1' | sudo tee -a /etc/sysctl.conf
echo 'net.bridge.bridge-nf-call-iptables = 1' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
------- Installation der Paketquellen
sudo apt install gnupg gnupg2 lsb-release curl apt-transport-https ca-certificates software-properties-common -y
sudo apt install docker.io -y
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/cgoogle.gpg
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
apt-get update
-------- Installation der Tools
sudo apt install kubeadm kubelet kubectl kubernetes-cni -y
---------------- Fehlende Gruppe beim Preflight
containerd config default | sudo tee /etc/containerd/config.toml >/dev/null 2>&1
nano /etc/containerd/config.toml
‘[plugins.”io.containerd.grpc.v1.cri”.containerd.runtimes.runc.options]’ and add SystemdCgroup = true
sudo systemctl restart containerd
sudo systemctl enable containerd
-------- Cluster erstellen - MASTER
sudo kubeadm reset
sudo kubeadm init
--------- Fehlerbeseitigung für 8080 was refused
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
-------- Join the Master - Pro Worker
kubeadm join 192.168.1.135:6443 --token zp87hj.ta2l6o7xjx1ex8xz --discovery-token-ca-cert-hash sha256:048ea75ebc058d8d0c8f478f1cb43f909f0aec860742f3bf9696d7ea25bd31f0
--------- Node Kontrolle
Kontrolle: kubectl get nodes
Ausgabe:
NAME STATUS ROLES AGE VERSION
master NotReady control-plane 40m v1.25.3
workera NotReady <none> 13m v1.25.3
workerb NotReady <none> 13m v1.25.3
---------- Status von NotReady auf Ready setzen
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
NAME STATUS ROLES AGE VERSION
master Ready control-plane 64m v1.25.3
workera Ready <none> 37m v1.25.3
workerb Ready <none> 37m v1.25.3
---------- kubectl Commands
kubectl version
kubectl get nodes
kubectl get pod
kubectl get service
kubectl get namespace
kubectl cluster-info
kubectl get pods --all-namespaces
kubectl get pods --all-namespaces -o wide