Hostname Kontrolü: Makinanın hostname’I farklıysa mater için; hostnamectl set-hostname master Worker için; hostnamectl set-hostname worker1 Sunucu Saati Kontrolü: date (check date and time) timedatectl set-ntp yes/no (if u need local timezone aktif/pasif ayarı) timedatectl set-time 21:45:53 timedatectl (check date timezone etc) sudo timedatectl set-timezone your_time_zone Kubeadm Kurulumu: sudo swapoff -a -> tüm pod’larda uygula. Bu komut, Linux sistemlerindeki swap alanını devre dışı bırakmak için kullanılır. Swap alanı, bilgisayarın RAM'inin dolu olduğu durumlarda kullanılan bir sanal bellek alanıdır. Swap, RAM dolu olduğunda sistem performansını artırmak için kullanılır, ancak bu durumda genellikle disk üzerinde bir swap bölümü veya dosyası bulunur. sudo swapon --show -> bi çıktı gözükmemesi lazım. Linux sistemlerinde mevcut olan ve aktif olan swap alanlarını göstermek için kullanılır. nano /etc/fstab -> swap kontrolü systemctl disable --now ufw Firewall disable hale getirmek için systemctl status ufw Firewall’ın disable olduğunu görmek için. Containerd Kurulumu: İşlemleri tüm node’lar için yapıyoruz. $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker.gpg echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null $ sudo apt update $ sudo apt install containerd.io $ sudo systemctl daemon-reload $ sudo systemctl enable --now containerd $ sudo systemctl start containerd $ sudo mkdir -p /etc/containerd $ sudo su $ containerd config default | tee /etc/containerd/config.toml $ exit $ sudo sed -i 's/ SystemdCgroup = false/ /etc/containerd/config.toml $ sudo systemctl restart containerd SystemdCgroup = true/' cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf overlay br_netfilter EOF sudo modprobe overlay sudo modprobe br_netfilter 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 sudo sysctl --system lsmod | grep br_netfilter lsmod | grep overlay sysctl net.bridge.bridge-nf-call-iptables net.bridge.bridge-nf-callip6tables net.ipv4.ip_forward sudo systemctl restart containerd Kubeadm Kurulumu: sudo apt-get update sudo apt-get install -y apt-transport-https ca-certificates curl curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.27/deb/Release.key | sudo 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.27/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list sudo apt-get update sudo apt-get install -y kubelet kubeadm kubectl sudo apt-mark hold kubelet kubeadm kubectl Cluster Kurulumu: (master node) sudo kubeadm config images pull Birden fazla master olursa; sudo kubeadm init --pod-network-cidr=192.168.0.0/16 --control-plane-endpoint="WHEREVER YOUR ENDPOINT IS AS IN TERMS OF IP ADDRESS" --upload-certs Tek master olursa; sudo kubeadm init --pod-network-cidr=192.168.0.0/16 --apiserver-advertise-address=<ip> --controlplane-endpoint=<ip> mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config Calico: kubectl create -f https://raw.githubusercontent.com/projectcalico/calico/v3.25.1/manifests/tigeraoperator.yaml kubectl create -f https://raw.githubusercontent.com/projectcalico/calico/v3.25.1/manifests/customresources.yaml Nginx-Ingress: kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingressnginx/main/deploy/static/provider/baremetal/deploy.yaml