Kubernetes Nedir?
Kubernetes Cluster, birden fazla fiziksel ya da sanal makineden oluşan ve Kubernetes’in yönettiği bir gruptur. Temelde, birden fazla sunucuyu bir araya getirip, üzerlerinde çalışan container'ları yönetirsiniz. Kubernetes’in bu kadar popüler olmasının nedeni, size büyük bir ölçekleme gücü sunarken aynı zamanda karmaşık altyapı işlerini basitleştirmesidir.
Kubernetes Cluster Kurulumu Adım Adım
# Adım 1: Gerekli Ortamı Hazırlayın
- Docker: Docker, Kubernetes ile birlikte container’ları çalıştırmak için kullanılır.
- Kubeadm: Kubernetes kümesi oluşturmak için kullanılan bir araçtır.
- Kubelet ve Kubectl: Kubelet, her bir node üzerinde Kubernetes’in çalışmasını sağlar. Kubectl ise Kubernetes API’sini yönetmenizi sağlayan bir komut satırı aracıdır.
Tüm bu araçları kurduğunuzdan emin olun. Docker’ın kurulumunu ve Kubeadm’i sisteminize yüklediğinizde, bir sonraki adıma geçebilirsiniz.
# Adım 2: Cluster Master Node'u Kurun
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
Yukarıdaki komutlar, Kubernetes’in gerekli bileşenlerini sisteminize kuracaktır. Şimdi, master node üzerinde Kubernetes’i başlatabiliriz.
# Adım 3: Cluster Başlatma
sudo kubeadm init
Bu komut, Kubernetes master node’unu başlatacak ve bir token verecektir. Bu token, worker node’ların bu master node’a bağlanabilmesi için gereklidir.
# Adım 4: Kubectl Yapılandırması
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Bu adım, kubectl komutlarının doğru bir şekilde çalışmasını sağlar.
# Adım 5: Pod Network Kurulumu
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
Bu komut, Calico ağ çözümünü Kubernetes cluster’ınıza yükleyecektir.
# Adım 6: Worker Node’ları Bağlama
kubeadm join :6443 --token --discovery-token-ca-cert-hash sha256:
Bu komut, worker node’un master node’a bağlanmasını sağlar. Bütün worker node’ları bağladıktan sonra, Kubernetes cluster’ınız hazır olacaktır.
Kubernetes Cluster'ınızı Test Edin
kubectl get nodes
Bu komut, tüm node’larınızın durumunu gösterecektir.