Ubuntu Server 20.04 Kubernetes Kurulumu (kubernetes ubuntu 20.04 LTS Installation)

Ubuntu Server 20.04 Kubernetes Kurulumu (kubernetes ubuntu 20.04 LTS Installation)

Kubernetes’ i kullanmak için bir cluster yapısı oluşurmamız ve kurulumu yapmamız gerekir. Bu kurulumda 3 tane vm ubuntu server 20.04 LTS kurulu makinalara k8s cluster’ ını adım adım kurmayı göstereceğim.

Öncelikle Tüm Nodelar da Yapılacak Adımlar

Öncelikle tüm nodelarımızda root olup güncellemeleri yapalım.

sudo su
apt update

Swap(takas) alanını k8s clusterımızda kapatmamız gerekecek

swapoff -a
nano /etc/fstab

makinaların hostname’ lerini ayarlayalım.

nano /etc/hostname

/etc/hosts dosyalarına nodeların ip ve hostnamelerini giriniz.

nano /etc/hosts

Nodelara statik ip vermek

Eğer node lara statik ip tanımlamadıysanız aşağıdaki gibi statik ip tanımlayın.

nano /etc/netplan/00-installer-config.yaml

--- 
network: 
  ethernets: 
    enp0s3: 
      addresses: 
        - 192.168.1.2/24
      gateway4: 192.168.1.1
      nameservers: 
        addresses: 
          - "8.8.8.8"
          - "8.8.4.4"
  version: 2
---
netplan apply

OpenSSH-Server kurulumu

apt install openssh-server -y

Docker kurulumu

apt update
apt install docker.io -y

kubeadm kubelet ve kubectl kurulumları

sudo apt-get update && sudo apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

kurulumları her node da da yaptıktan sonra master node ‘ a geçiyoruz.

Master Node için yapılması gerekenler

Şimdi kubernetes master nodemuzu ayarlayacağız aşağıdaki kodu çalıştırın.

kubeadm init --apiserver-advertise-address=192.168.1.2 --pod-network-cidr=192.168.0.0/16
kubeadm join
kubeadm join 192.168.1.2:6443 --token 1kvs4b.qetq7lyj2dhamfe8 \
    --discovery-token-ca-cert-hash sha256:9994c9e2fca048fafa3d375b57b61f6668120dafcc0c4ee97f10f473db68f739

önemli !! : yukarıdaki çıktıda “kubeadm join” ile başlayan komutu master hariç nodlarda çalıştırmanız gerekmektedir. Bu komutu çalıştıdıktan sonra node’ larınızı master node eklemiş olursunuz.

kurulum bittikten sonra aşağıdaki komutları root olmayan bir kullanıcıyla çalıştırın.

root@master-node:/home/master#
root@master-node:/home/master# su master
master@master-node:~$ mkdir -p $HOME/.kube
master@master-node:~$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
master@master-node:~$ sudo chown $(id -u):$(id -g) $HOME/.kube/config

kubectl çalışıp çalışmadığını kontrol etmek için aşağıdaki kodu çalıştırın.

kubectl get pods -o wide --all-namespaces

yukarıdaki çıktıda core dnsler hariç diğerlerinin çalıştığını göreceksiniz şimdi calico ‘ yu kuralım.

curl https://docs.projectcalico.org/manifests/calico.yaml -O
kubectl apply -f calico.yaml

kurulum tamalandıktan sonra aşağıdaki kodu çalıştırın ve bir süre sonra tüm status ların Running olduğunu göreceksiniz.

watch kubectl get pods -o wide --all-namespaces

Node ların listelenmesi

Eğer kurulumda herşey yolunda gittiyse aşağıdaki komutu çalıştırdıktan sonra kubernetes cluster’ ınızdaki tüm nodeları göreceksiniz.

kubectl get nodes

Yukarıdaki çıktıyı aldıysanız clusteriniz sorunsuz çalışıyor demektir.

3 Yorum

Berat Gul Yayın tarihi22:05 - 3 Ağustos 2020

Bravoo harika bir yazı Burak bey, olayın background ı için size nasil ulasabilirim ?

Kubernetes NodePort Servis Tipi (Kubernetes NodePort Service Type) – Bgul.net Yayın tarihi12:36 - 14 Ağustos 2020

[…] kubenetes kurulumu yazımda 3 tane node’ umuz vardı ve bunların ipleri sırasıyla 192.168.1.2, 192.168.1.3, […]

Bir Cevap Yazın