Kubernetes Kurulumu

Caner AYSAN
2 min readNov 10, 2022

--

Kubernetes (sıklıkla “k8s” olarak kısaltılır), Docker gibi kapsayıcılı uygulamaları yönetebilir, ölçeklendirebilir ve dağıtabilir. Kubernetes kullanıcıları, ne tür bir kapsayıcı mimarisi istediklerini tanımlayabilir ve yazılım; kapsayıcılar birden fazla uygulama ve ana bilgisayarda olsa bile, mevcut işlem kaynaklarına dayalı olarak kapsayıcıları bu parametreler içinde çalışacak şekilde otomatik olarak zamanlar.

Kubernetes’in sağladığı yüksek düzeyde otomasyon, onu konteyner alanında farklı kılar. Kapsayıcı düzenleme için endüstri standardı haline gelen Kubernetes, ekiplerin bulutta yerel uygulamalara doğru ilerlerken mimarilerinde devrim yaratmasına izin verir.

Kubernetes’in Özellikleri Nelerdir?

Kubernetes, kullanıcıları için aşağıdakiler dahil birçok özellik sunar:

  • Otomatik kutu paketleme
  • IPv4/IPv6 dual-stack
  • Toplu yürütme
  • Yük dengeleyici
  • zamanlayıcı
  • Hizmet keşfi

Kubernetes ayrıca, uygulamalarınızın sağlıklı bir şekilde çalıştığını kontrol etme (ve hatta dağıtım sırasında herhangi bir şeyi olumsuz etkiliyorsa değişikliği tersine çevirme), tercih ettiğiniz depolama sistemini kurma, uygulamalarınızı ölçeklendirme, kendi kendini iyileştirme (container’ları otomatik olarak değiştirme) gibi bir dizi başka otomatik işlevi yerine getirir. Gerektiğinde yanıt vermeyenleri etkisiz hale getir, otomatik ölçeklendirme gerektiğinde, başarısız kapsayıcıları yeniden başlatabilir veya yeniden zamanlayabilir.

Kubernetes Kuurlum

firewall-cmd --permanent --add-port=6443/tcp
firewall-cmd --permanent --add-port=2379-2380/tcp
firewall-cmd --permanent --add-port=10250/tcp
firewall-cmd --permanent --add-port=10251/tcp
firewall-cmd --permanent --add-port=10252/tcp
firewall-cmd --permanent --add-port=10255/tcp
firewall-cmd --reload

İsteğe göre firewall kapatılabilir.

systemctl stop firewalld
systemctl disable firewalld

overlay ve br_netfilter modullerini sisteme ekliyoruz

modprobe overlay
modprobe br_netfilter
cat > /etc/sysctl.d/99-kubernetes-cri.conf <<EOF
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
EOF
sysctl --systemecho overlay >> /etc/modules-load.d/overlay.conf
echo br_netfilter >> /etc/modules-load.d/br_netfilter.conf
yum update -ysudo cat <<EOF>> /etc/hosts
192.168.50.100 master-node
192.168.50.101 node1 W-node1
192.168.50.102 node2 W-node2

EOF
swapoff -a
sed -i.bak -r 's/(.+ swap .+)/#\1/' /etc/fstab
freesetenforce 0
sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/sysconfig/selinux
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-cemkdir /etc/dockercat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}

EOF
mkdir -p /etc/systemd/system/docker.service.d
systemctl daemon-reload
systemctl enable docker
systemctl start docker
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=
https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=0
gpgkey=
https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*

EOF
yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetesyum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.reposystemctl enable --now kubeletsystemctl daemon-reload
systemctl restart kubelet

hata durumunda !!!

rm -rf /etc/containerd/config.toml
systemctl restart containerd
kubeadm init

Kubernetes Kurulumu Tamamlandı fakat init için gerekli parametreler testler sürecinde başka bir yazımızda anlatılacaktır.

Yardımcı Linkler :
https://bulutistan.com/blog/kubernetes-nedir/

--

--