Kubernetes Nedir?
Bir gün, büyük bir yazılım geliştirme ekibi olarak çalışıyorduk ve tüm mikro hizmetlerimizi yönetmek için bir çözüm arıyorduk. O zaman Kubernetes hayatımıza girdi. Çoğumuz için ilk başta karmaşık göründü, ancak bir kez öğrendiğinizde, tüm bulut uygulamalarınızı ve mikro hizmetlerinizi kolayca yönetebileceğinizi keşfettik. Şimdi, gelin Kubernetes’i birlikte kurmayı öğrenelim!
Kubernetes, aslında container (kapsayıcı) teknolojisinin bir tür yöneticisi. Bu, bir uygulamanın içinde bulunan yazılım ve hizmetlerin birbirleriyle etkileşimde bulunmasını sağlarken, aynı zamanda büyük, dağıtık bir sistemin daha verimli çalışmasına yardımcı olur. Kubernetes’i kullanarak, uygulama dağıtımınızı, yönetiminizi, ölçeklendirmenizi ve yük dengelemenizi çok daha verimli hale getirebilirsiniz. Bu rehberde, Linux üzerinde Kubernetes kurulumunu adım adım anlatacağım. Hazır mısınız? O zaman başlayalım!
1. Adım: Gerekli Yazılımları Yükleyin
İlk adımda, Kubernetes’i kurmadan önce birkaç önemli yazılımı yüklememiz gerekiyor. Bunlar:
- Docker: Kubernetes, Docker gibi container teknolojilerini kullanır. Bu nedenle Docker’ı sisteminize kurmalısınız.
- Kubeadm: Kubernetes cluster’ını (küme) oluşturacak olan yardımcı araç.
- Kubectl: Kubernetes ile iletişim kurmamızı sağlayan komut satırı aracı.
Öncelikle, Docker’ı yükleyelim.
sudo apt update
sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker
Docker başarıyla kurulduktan sonra, Kubernetes’i kurmaya devam edebiliriz.
sudo apt install -y apt-transport-https 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
2. Adım: Swap’ı Devre Dışı Bırakın
Kubernetes’in doğru çalışabilmesi için swap (bellek değişimi) özelliğini devre dışı bırakmamız gerekiyor. Bu, Kubernetes’in performansını artıracak ve hataların önüne geçecektir. Şu komut ile swap’ı devre dışı bırakabilirsiniz:
sudo swapoff -a
Ayrıca, swap’ı kalıcı olarak devre dışı bırakmak için `/etc/fstab` dosyasını düzenleyerek bu değişikliği kaydedebilirsiniz.
3. Adım: Kubeadm ile Kubernetes Cluster’ını Başlatın
Artık Kubernetes cluster’ınızı oluşturmak için hazırız. Kubernetes'i başlatmak için `kubeadm` komutunu kullanacağız. Bu işlem, küme kontrol düzeyini kurar.
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Bu komut çalıştığında, Kubernetes cluster’ınız başlatılacak ve terminalde size bir "kubeconfig" dosyasının yolu verilecektir. Bu dosya, Kubernetes ile etkileşimde bulunabilmeniz için gereklidir. O yüzden, komut sonrasında verilen talimatları dikkatlice izleyin.
4. Adım: Kubectl Komut Satırını Yapılandırın
Kubernetes ile etkileşim kurabilmek için kubectl komut satırını kullanacağız. İlk olarak, `kubectl` komutunun doğru şekilde çalışabilmesi için konfigürasyon dosyasını ayarlamamı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
Artık `kubectl` komutunu kullanarak Kubernetes cluster’ınızı yönetebilirsiniz!
5. Adım: Pod Ağı Kurun
Kubernetes cluster’ınızın düzgün çalışabilmesi için ağın yapılandırılması gerekmektedir. Bu adımda, ağ yapısını kuracağız. En popüler ağ çözümlerinden biri olan Flannel'ı kullanacağız.
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Bu komut, Flannel ağ yapılandırmasını Kubernetes cluster’ınıza yükleyecektir. Ağ kurulumunun tamamlanmasının ardından, Kubernetes’in pod’ları ve servisleri arasında veri iletimi sağlanacaktır.
6. Adım: Node’ları Ekleyin
Eğer birden fazla node (düğüm) eklemek istiyorsanız, `kubeadm join` komutunu kullanarak diğer makineleri de küme yapısına dahil edebilirsiniz. İlk node kurulumunda terminalde size bu komut verilecektir, bu komutu diğer makinelerde çalıştırarak kümenize yeni node’lar ekleyebilirsiniz.
7. Adım: Kubernetes Cluster’ınızı Kontrol Edin
Kubernetes cluster’ınız başarıyla kurulup yapılandırıldıktan sonra, her şeyin düzgün çalıştığını kontrol etmek için aşağıdaki komutu çalıştırabilirsiniz:
kubectl get nodes
Eğer her şey doğru yapılandırıldıysa, cluster’daki tüm node’lar burada listelenecektir.
Sonuç
Tebrikler! Artık Linux üzerinde çalışan bir Kubernetes cluster’ınız var! Kubernetes ile container yönetimi, uygulama dağıtımı ve ölçeklendirme gibi birçok avantajdan faydalanabilirsiniz. Yavaş yavaş Kubernetes dünyasına adım attınız ve bu harika araçla bulut altyapınızı çok daha verimli hale getirebilirsiniz.
Eğer bu rehberi takip ederek başarıyla kurulum yaptıysanız, şunu unutmayın: Kubernetes büyük bir güce sahip bir platformdur. Bu yüzden her zaman her aşamada dikkatli olmanızda fayda var.