Adım 1: Gereksinimleri Kontrol Etme
Öncelikle, Kubernetes’i Linux üzerinde çalıştırabilmek için bazı ön koşullarımız var. Bu gereksinimlere göz atalım:
- Linux işletim sistemi (Ubuntu, CentOS, Debian vb.)
- Minimum 2 GB RAM ve 2 CPU çekirdeği (her bir node için)
- root erişimi (yönetici hakları)
- İnternet bağlantısı (Kubernetes bileşenlerinin güncel sürümlerini yükleyebilmek için)
Eğer bu gereksinimlere sahipseniz, devam edebiliriz.
Adım 2: Sistem Güncellemeleri
İlk olarak, sistemimizi güncelleyerek başlamalıyız. Bu, Kubernetes bileşenlerinin doğru çalışmasını sağlamak için önemlidir. Terminale aşağıdaki komutları yazın:
sudo apt update && sudo apt upgrade -y
Bu komut, tüm paketlerin güncel olup olmadığını kontrol eder ve gerekirse günceller.
Adım 3: Kubernetes için Gerekli Bağımlılıkları Yükleyin
Kubernetes’i kurmadan önce, bazı bağımlılıkları yüklememiz gerekiyor. Bu adımda, Docker ve Kubeadm gibi araçları sistemimize dahil edeceğiz. Docker, Kubernetes’in konteynerleri çalıştırmasını sağlayacak, kubeadm ise Kubernetes kümesini kurmak için kullanacağımız araçtır.
İlk olarak, Docker’ı yükleyelim:
sudo apt install docker.io -y
sudo systemctl enable docker
sudo systemctl start docker
Docker yüklendikten sonra, Kubernetes araçlarını yükleyebiliriz. Kubeadm, Kubelet ve Kubectl, Kubernetes’in temel bileşenleridir.
Kubernetes'in paketlerini yüklemek için aşağıdaki komutları kullanıyoruz:
sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt update
sudo apt install -y kubelet kubeadm kubectl
Bu komutlar, Kubernetes araçlarının sisteminize kurulmasını sağlayacaktır.
Adım 4: Swap Belleği Kapatma
Kubernetes, swap belleğini kullanmaz. Bu nedenle, swap belleğini kapatmamız gerekir. Aşağıdaki komutla swap’ı devre dışı bırakabiliriz:
sudo swapoff -a
Ayrıca, swap’ın her sistem yeniden başlatıldığında kapanması için aşağıdaki komutları kullanarak /etc/fstab dosyasındaki swap kısmını da kaldırmamız gerekiyor:
sudo nano /etc/fstab
Fstab dosyasındaki swap satırını bulup silin.
Adım 5: Kubeadm ile Kubernetes Kümesini Başlatmak
Şimdi ise Kubernetes kümesini başlatacağız. Bu işlem için kubeadm aracını kullanacağız. Kubernetes’in ana kontrol düğümünü oluşturmak için aşağıdaki komutu çalıştırıyoruz:
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Bu komut, Kubernetes kontrol düğümünü başlatacak ve kurulum için gerekli olan bilgileri verecektir. Burada dikkat etmeniz gereken bir şey var: pod-network-cidr değeri, ağ yapılandırmasını belirler. Bu örnekte Flannel ağını kullanacağımız için böyle bir ayar yapıyoruz.
Komut başarıyla tamamlandığında, Kubernetes kümenizin kurulumu tamamlanmış olacak. Şimdi, kontrol düğümüne erişebilmek için aşağıdaki komutları çalıştırmamız gerekiyor:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Bu komutlar, kubectl komutunu çalıştırabilmemiz için gerekli yapılandırmayı sağlar.
Adım 6: Ağ Eklentisi Kurma
Kubernetes’in ağ yapılandırmasını tamamlamak için bir ağ eklentisi yüklememiz gerekiyor. Flannel, Kubernetes ile uyumlu ve kolayca kurulabilen popüler bir ağ eklentisidir. Flannel'ı kurmak için aşağıdaki komutu kullanabilirsiniz:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Ağ eklentisini kurduktan sonra, Kubernetes kontrol düğümünün tüm podları başlatmaya başlaması gerekir. Bu biraz zaman alabilir, bu yüzden sabırlı olun.
Adım 7: Node Ekleme
Eğer Kubernetes kümenize başka düğümler (node) eklemek isterseniz, kubeadm join komutunu kullanarak bu düğümleri kümeye katabilirsiniz. kubeadm init komutunun çıktısında, node’ları kümeye eklemek için kullanmanız gereken join komutunu göreceksiniz.
Örneğin:
sudo kubeadm join : --token --discovery-token-ca-cert-hash
Bu komutu, eklemek istediğiniz her node üzerinde çalıştırarak onları Kubernetes kümenize dahil edebilirsiniz.
Adım 8: Kurulumun Kontrolü
Son olarak, her şeyin düzgün çalışıp çalışmadığını kontrol etmek için aşağıdaki komutla pod’ların durumunu kontrol edebilirsiniz:
kubectl get pods --all-namespaces
Bu komut, tüm pod’ların durumunu size gösterecek. Eğer pod’lar Running durumunda görünüyorsa, kurulumunuz başarıyla tamamlanmış demektir.
Ve işte bu kadar! Kubernetes’i Linux üzerinde başarılı bir şekilde kurmuş oldunuz.