GKE Nedir ve Neden Kullanmalısınız?
Google Cloud Kubernetes Engine (GKE), Kubernetes’in Google Cloud ortamında yönetilen bir versiyonudur. Kubernetes, konteyner tabanlı uygulamaları yönetmek için dünya çapında en çok kullanılan araçlardan biridir. Eğer yazılım geliştirme süreçlerinizi hızlandırmak, uygulamalarınızı ölçeklendirmek ve sürdürülebilir bir altyapıya sahip olmak istiyorsanız, GKE tam size göre. Hem geliştiriciler hem de sistem yöneticileri için devrim niteliğinde bir araç!
GKE'nin avantajları saymakla bitmez. Hızla büyüyen ve değişen uygulamalarla başa çıkabilmek için GKE, yönetilen bir platform sunar. Yani altyapıyı Google sizin için yönetir. Bu, uygulamanızı geliştirirken tek amacınızın koda odaklanabileceğiniz anlamına gelir. GKE sayesinde, konteynerlerinizi otomatik olarak dağıtabilir, güncelleyebilir ve yönetebilirsiniz.
Başlangıç İçin GKE'yi Nasıl Kurarsınız?
GKE'yi kullanmaya başlamak için Google Cloud hesabınızın olması gerektiğini biliyor musunuz? Hadi, şimdi kurulum adımlarını birlikte keşfedelim!
1. Google Cloud'a Giriş Yapın
İlk adım, Google Cloud hesabınızı oluşturmak. Eğer hesabınız yoksa, [Google Cloud'a kaydolun](https://cloud.google.com). GKE’yi kullanmaya başlamak için bir projeniz olması gerekiyor. Hesabınıza giriş yaptıktan sonra, yeni bir proje oluşturun.
2. GKE API'sini Etkinleştirin
Projenizi oluşturduktan sonra, GKE'yi kullanabilmek için Kubernetes API'sini etkinleştirmeniz gerekir. Google Cloud Console üzerinden "Kubernetes Engine" sekmesine gidin ve API'yi etkinleştirin.
3. Google Cloud SDK ve gcloud Komut Satırı Araçlarını Kurun
Google Cloud SDK’yı [buradan indirin](https://cloud.google.com/sdk). SDK'yı kurduktan sonra, terminal veya komut satırını açarak aşağıdaki komutla giriş yapın:
gcloud auth login Bu komut sizi Google Cloud hesabınıza bağlar.
4. Bir GKE Kümesi Oluşturun
Küme oluşturmak için şu komutu kullanabilirsiniz:
gcloud container clusters create "my-cluster" --zone "us-central1-a" --num-nodes 3 Bu komut, "my-cluster" adında bir Kubernetes kümesi oluşturur. Ayrıca, bu kümede 3 düğüm (node) çalıştırılacak.
5. kubectl ile Bağlantı Kurun
GKE kümesine bağlanabilmek için kubectl komut satırı aracını kullanmanız gerekir. Kümenize bağlanmak için şu komutu kullanabilirsiniz:
gcloud container clusters get-credentials "my-cluster" --zone "us-central1-a" --project "your-project-id" Bu, kümenize bağlanmanızı sağlar.
Uygulamanızı GKE'ye Dağıtmak
Şimdi, GKE üzerinde uygulamanızı çalıştırma zamanı. GKE, uygulamanızı container'lara (kapsayıcılara) yerleştirmenizi ve bunları Kubernetes üzerinde yönetmenizi sağlar. İşte basit bir örnek: Bir web uygulamasını GKE’ye dağıtalım.
1. Dockerfile Yazın
Docker, uygulamanızı konteyner haline getirmenizi sağlar. Aşağıda basit bir Dockerfile örneği bulabilirsiniz:
FROM node:14
WORKDIR /app
COPY . .
RUN npm install
EXPOSE 8080
CMD ["node", "index.js"] Bu Dockerfile, Node.js uygulamanızı kapsayıcı haline getirir.
2. Kubernetes Yaml Dosyası Oluşturun
Kubernetes'e uygulamanızı nasıl dağıtacağınızı anlatan bir YAML dosyası oluşturmalısınız. Örnek bir Deployment YAML dosyası şu şekilde olabilir:
apiVersion: apps/v1
kind: Deployment
metadata:
name: web-app
spec:
replicas: 2
selector:
matchLabels:
app: web-app
template:
metadata:
labels:
app: web-app
spec:
containers:
- name: web-app
image: gcr.io/my-project-id/web-app:latest
ports:
- containerPort: 8080 3. Uygulamanızı Kubernetes'e Dağıtın
Artık uygulamanızı dağıtmak için kubectl komutlarını kullanabilirsiniz. YAML dosyanızı aşağıdaki komutla uygulamaya alabilirsiniz:
kubectl apply -f deployment.yaml Bu komut, Kubernetes kümenize uygulamanızı dağıtacak.
GKE ile Ölçekleme ve Güncelleme
Google Cloud Kubernetes Engine, uygulamanızın ölçeklenmesini ve güncellenmesini kolaylaştırır. GKE’nin sunduğu otomatik ölçeklendirme özelliklerini kullanarak, trafiğe göre node sayınızı artırabilir ya da azaltabilirsiniz.
Örneğin, aşağıdaki komutla Kubernetes uygulamanızın replikalarını artırabilirsiniz:
kubectl scale deployment web-app --replicas=5 Bu komut, web-app adlı uygulamanızın 5 replikasına sahip olmasını sağlar.
Sonuç
Google Cloud Kubernetes Engine ile çalışmak, mikroservis tabanlı uygulamalarınızı yönetmenin en verimli yollarından biridir. GKE sayesinde sadece uygulamalarınızı dağıtmakla kalmaz, aynı zamanda ölçeklendirme, güncelleme ve güvenlik konularını da kolayca yönetebilirsiniz.
GKE, hızla büyüyen projeler için güvenilir ve ölçeklenebilir bir altyapı sunar. Google’ın güçlü bulut altyapısı sayesinde, tüm bu işlemleri çok daha az çaba harcayarak gerçekleştirebilirsiniz.