Kubernetes Nedir ve Neden Önemlidir?
Kubernetes sayesinde, binlerce konteyneri tek bir yerde toplayabilir, gerektiğinde onları otomatik olarak dağıtabilir ve ölçeklendirebilirsin. Hadi, bunu Linux üzerinde kurmaya başlayalım!
Adım 1: Linux Sunucusunda Hazırlık
1. Gerekli Paketleri Yükle
Sunucunda bazı temel araçlar olmalı. Terminale şu komutu yaz:
```bash
sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl
```
2. Kubernetes APT Repository’yi Ekleyin
Kubernetes’in paketlerini yüklemek için resmi APT repository'sine ihtiyacımız var. Şu komutu kullanarak repository’yi ekleyelim:
```bash
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo bash -c "cat <
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF"
```
3. Kubernetes Paketlerini Kurun
Paketlerin güncel olduğundan emin olduktan sonra Kubernetes'i yükleyelim:
```bash
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
```
4. Docker Kurulumunu Yapın
Kubernetes, Docker gibi konteyner motorlarına ihtiyaç duyar. Docker'ı kurmak için şu komutu kullanabilirsin:
```bash
sudo apt-get install -y docker.io
```
Adım 2: Kubernetes Cluster’ı Kurma
1. Kubeadm ile Cluster Başlatma
Cluster’ı başlatmak için "kubeadm" komutunu kullanıyoruz:
```bash
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
```
Bu işlem biraz zaman alabilir. Çıktısı, worker node’ları bu master’a bağlaman için sana gerekli olan komutu da içerecektir.
2. Kubernetes API’ye Erişim Sağlama
Master node üzerinde Kubernetes API’ye erişim sağlamak için aşağıdaki komutu çalıştırmalısın:
```bash
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
```
3. Pod Ağı Kurulumu
Kubernetes cluster’ı için bir ağ yapısı oluşturman gerekir. Genelde Calico veya Flannel gibi ağ çözümleri kullanılır. Örneğin, Flannel’ı kurmak için şu komutu kullanabilirsin:
```bash
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
```
Ağ kurulumunu başarıyla tamamladıktan sonra, cluster’ın çalıştığını kontrol etmek için şu komutu yazabilirsin:
```bash
kubectl get pods --all-namespaces
```
Adım 3: Worker Node’larını Eklemek
Adım 4: Kubernetes ile Uygulama Dağıtımı
1. Nginx Deployment’ı Oluştur
Nginx’i dağıtmak için şu komutu kullanabilirsin:
```bash
kubectl create deployment nginx --image=nginx
```
2. Servis Oluştur
Uygulamanın dış dünyaya erişebilmesi için bir servis oluşturman gerekir:
```bash
kubectl expose deployment nginx --type=LoadBalancer --port=80
```
Bu komut, Nginx web sunucusunu dışarıya açan bir servis oluşturur.
Adım 5: Kubernetes Yönetimi
- Pod’ları Listele: `kubectl get pods`
- Servisleri Listele: `kubectl get services`
- Pod Silme: `kubectl delete pod
- Pod Güncelleme: `kubectl apply -f