Kubernetes Nasıl Kurulur ve Cluster Yönetilir?

Kubernetes Nasıl Kurulur ve Cluster Yönetilir?

Kubernetes’i kurmak ve cluster yönetimini sağlamak, özellikle büyük ölçekli projeler için önemlidir. Bu yazıda adım adım kurulum ve yönetim süreci detaylı bir şekilde anlatılmıştır.

Al_Yapay_Zeka

Kubernetes, günümüzün en popüler container orkestrasyon platformlarından biri haline geldi. Pek çok işletme ve yazılım geliştirici, Kubernetes'i altyapılarını yönetmek ve uygulama dağıtımlarını daha verimli bir şekilde yapmak için kullanıyor. Peki, Kubernetes'i nasıl kurar ve cluster yönetimini nasıl sağlarsınız? İşte bu sorunun cevabını adım adım, eğlenceli bir şekilde anlatacağız.

Kubernetes Nedir ve Neden Kullanılır?



Kubernetes, Google tarafından geliştirilmiş bir açık kaynaklı container orkestrasyon sistemidir. Birçok mikro hizmetin yönetilmesini kolaylaştıran bu sistem, özellikle DevOps kültürüyle çalışan takımlar için vazgeçilmez bir araçtır. Kubernetes, yazılım uygulamalarını container’lar içinde çalıştırarak, hem yönetimi kolaylaştırır hem de ölçeklenebilirliği sağlar.

Peki, Kubernetes’i neden tercih etmeliyiz? Çünkü bu sistem, uygulama dağıtımlarını hızlandırır, kaynakları daha verimli kullanır ve her şeyin otomatik olarak çalışmasını sağlar. Ayrıca, Kubernetes sayesinde sistem kesintilerini en aza indirebilir ve yüksek kullanılabilirlik sağlarsınız.

Kubernetes Cluster'ı Kurmak İçin Adım Adım Rehber



Kubernetes kurulumuna başlamadan önce, birkaç ön koşul var. İlk olarak, bir Linux sunucusuna ihtiyacınız olacak. Ayrıca Docker da kurulu olmalı, çünkü Kubernetes container'ları yönetmek için Docker'ı kullanır.

Adım 1: Kubernetes'i ve Gerekli Bileşenleri Yükleyin

İlk adım, Kubernetes ve gerekli bileşenleri yüklemektir. Bunun için sisteminizde Kubernetes'in son sürümünü kullanabilirsiniz.

Aşağıdaki komutla Kubernetes'i yükleyebilirsiniz:


sudo apt-get update
sudo apt-get install -y apt-transport-https
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl


Bu adımlarla birlikte, Kubernetes bileşenlerini sisteminize yüklemiş olacaksınız.

Adım 2: Kubernetes Cluster'ı Başlatın

Cluster’ı başlatmak için `kubeadm` komutunu kullanabilirsiniz. Bu, cluster’ı başlatan ve yapılandıran bir araçtır.

İlk node’u (master node) başlatmak için şu komutu kullanın:


sudo kubeadm init --pod-network-cidr=10.244.0.0/16


Bu komut, Kubernetes master node’unu başlatır ve size bir token verir. Bu token, diğer node’ları cluster’a dahil etmek için kullanılacaktır.

Adım 3: kubectl Komut Satırını Yapılandırın

Master node’u başlattıktan sonra, `kubectl` komut satırını yapılandırmanız gerekir. Bu, cluster ile etkileşime geçmek için kullanacağınız komut satırıdır. Bunun için aşağıdaki komutu kullanabilirsiniz:


mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config


Bunları yaptıktan sonra, `kubectl` komutlarını kullanarak cluster’ınızı yönetebilirsiniz.

Adım 4: Pod Ağını Kurun

Kubernetes, container’lar arasında iletişim kurabilmek için bir ağ çözümüne ihtiyaç duyar. Bu ağ çözümlerinden biri Flannel’dır. Flannel, Kubernetes cluster’ınızda pod’lar arası iletişimi sağlamak için kullanılır.

Flannel ağ çözümünü yüklemek için şu komutu kullanabilirsiniz:


kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml


Bu adım, ağınızı yapılandırarak pod’larınızın iletişim kurabilmesini sağlar.

Adım 5: Worker Node'ları Cluster’a Dahil Etme

Cluster’ınızı başlattınız ve master node’unu kurdunuz. Şimdi sıra, worker node’ları eklemeye geldi. Her bir worker node’u, master node’a katılmak için verilen token’ı kullanarak cluster’a dahil edebilirsiniz.

Worker node’lara katılmak için aşağıdaki komutu kullanın (bu komut, `kubeadm init` komutunu çalıştırdıktan sonra verilen token ile birlikte kullanılacaktır):


sudo kubeadm join :6443 --token  --discovery-token-ca-cert-hash sha256:


Bu komutla birlikte, worker node cluster’a katılacak ve master node ile iletişim kurabilecektir.

Cluster Yönetimi ve İzleme



Cluster kurulumunu tamamladıktan sonra, Kubernetes’i yönetmek için birkaç önemli komut vardır. İşte bazı temel komutlar:

- Cluster Durumunu Görüntüleme:

  kubectl cluster-info
  


- Pod’ları Listeleme:

  kubectl get pods
  


- Service’ları Listeleme:

  kubectl get services
  


Kubernetes cluster’ınızda uygulamaları ve pod’ları izlemek için bu komutları kullanarak hızlıca durumu kontrol edebilirsiniz. Ayrıca, Helm gibi araçlar kullanarak uygulama dağıtımlarını daha da kolaylaştırabilirsiniz.

Sonuç



Kubernetes, uygulama dağıtımlarını yönetmek ve büyük ölçekli sistemler kurmak için mükemmel bir araçtır. Cluster’ı kurmak ve yönetmek başlangıçta karmaşık görünebilir, ancak doğru adımları takip ettiğinizde her şey kolayca yönetilebilir hale gelir. Bu yazıda, Kubernetes cluster kurulumu ve yönetimi hakkında temel bilgileri adım adım ele aldık. Kubernetes’i öğrenmeye başlamak, büyük projeler ve sistemler için harika bir adımdır.

İlgili Yazılar

Benzer konularda diğer yazılarımız

Docker ile Microservices Mimarisi: Başlangıç Rehberi ve En İyi Uygulamalar

Docker ile Microservices Mimarisi: Bir Başlangıç RehberiYazılım dünyasında, son yıllarda hızla popülerleşen iki kavram var: Docker ve Microservices. Bu ikisinin birleşimi, yazılım geliştirme dünyasında devrim yaratmak üzere. Eğer siz de modern yazılım...

Kubernetes Service Discovery Failure Hatası ve Çözüm Yolları

Kubernetes dünyasında yolculuğa başlamak heyecan verici olabilir, ancak bazen karşılaştığınız hatalar sizi duraklatabilir. İşte o anlardan biri: *Service Discovery Failure* hatası. Eğer siz de bu hata ile karşılaştıysanız, yalnız değilsiniz! Kubernetes...

Docker İçinde CI/CD Pipeline’ları: Verimli ve Hızlı Test Süreçleri İçin İpuçları

Bir yazılım geliştirme süreci hızla ilerliyor ve her adımda verimliliği artırmak, hataları azaltmak ve süreci hızlandırmak daha önemli hale geliyor. Peki, bu süreci gerçekten hızlandırmak için ne yapılabilir? Docker ve CI/CD (Sürekli Entegrasyon ve Sürekli...

Jenkins'te GitHub ve GitLab Entegrasyonu: İş Akışınızı Kolaylaştırın

**Yazılım geliştirme süreci, zaman zaman karmaşık ve yorucu olabilir. Bu süreçte en büyük yardımcılarımızdan biri, sürekli entegrasyon (CI) ve sürekli dağıtım (CD) araçlarıdır. Jenkins, bu alanda öne çıkan ve yaygın olarak kullanılan bir otomasyon sunucusudur....

Docker'ı Anlamak: Mikro Hizmet Mimarisi ile Verimlilik Nasıl Artar?

Dijital dünyada hızla değişen ihtiyaçlar, yazılım geliştirme süreçlerini de dönüştürüyor. Geleneksel monolitik uygulamalardan mikro hizmet mimarisine geçiş, geliştiriciler ve şirketler için büyük fırsatlar yaratıyor. Ancak bu geçişin en güçlü destekçisinin...

Docker ve Kubernetes ile Microservices Mimarisi: Başarılı Entegrasyonun 7 Sırrı

Microservices mimarisi, son yılların en dikkat çeken yazılım geliştirme trendlerinden biri haline geldi. Bir zamanlar monolitik yapılarla inşa edilen uygulamalar, artık mikro hizmetler olarak adlandırılan küçük ve bağımsız bileşenlere ayrılıyor. Bu değişim,...