Azure Kubernetes Service (AKS) Üzerinde Yüke Bağlı Otomatik Ölçeklendirme (Autoscaling)

Azure Kubernetes Service (AKS) Üzerinde Yüke Bağlı Otomatik Ölçeklendirme (Autoscaling)

Giriş:

Azure Kubernetes Service (AKS), dinamik ve ölçeklenebilir uygulama dağıtımları için ideal bir platform sunar. Bu platformda otomatik ölçeklendirme özelliği, uygulamanın ihtiyaç duyduğu kaynaklara göre otomatik olarak ayarlanmasını sağlar, böylece yüksek trafik durumlarında performansı korurken, düşük kullanım süreçlerinde maliyeti optimize eder. Bu makalede, AKS’de yüke bağlı otomatik ölçeklendirme ayarlarının nasıl yapılandırılacağı adım adım açıklanmaktadır.

Adım 1: Ölçeklendirme İçin Gerekli Kaynakların Belirlenmesi

AKS cluster’ınızda otomatik ölçeklendirme yapabilmek için öncelikle hangi kaynakların (CPU, bellek vb.) ölçeklendirme kriteri olarak kullanılacağını belirlemeniz gerekmektedir. Bu kriterler, Kubernetes Horizontal Pod Autoscaler (HPA) tarafından kullanılacak ve ölçeklendirme işlemleri bu parametrelere göre gerçekleştirilecektir.

Adım 2: Metric Server’ın Kurulması

AKS’de otomatik ölçeklendirme işlemleri için Metric Server’ın kurulu olması gerekmektedir. Metric Server, cluster’daki pod’ların kaynak kullanım verilerini toplar ve bu verileri HPA’nın kullanımına sunar. AKS’de Metric Server genellikle varsayılan olarak yüklenir, ancak yüklü olmadığı durumlarda aşağıdaki komut ile kurulumu gerçekleştirilebilir:

kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml

Adım 3: Horizontal Pod Autoscaler (HPA) Oluşturma

Yüklenen Metric Server ile uyumlu bir şekilde çalışacak HPA’yi oluşturmak için aşağıdaki YAML dosyasını kullanabilirsiniz. Bu örnekte, pod’lar CPU kullanımı yüzde 50’yi aştığında otomatik olarak ölçeklenir:

apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: my-app-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: my-app-deployment
  minReplicas: 1
  maxReplicas: 10
  targetCPUUtilizationPercentage: 50

Bu dosyayı kaydedin ve kubectl apply -f hpa.yaml komutu ile sisteme yükleyin.

Adım 4: Ölçeklendirme Politikalarının Gözlemlenmesi

Otomatik ölçeklendirme işlemi devreye girdiğinde, Kubernetes event’leri üzerinden bu işlemleri takip edebilirsiniz. Aşağıdaki komut ile HPA’nın etkinliklerini gözlemleyebilirsiniz:

kubectl get hpa my-app-hpa -w

Adım 5: Ölçeklendirme Ayarlarının İnce Ayarlanması

Uygulamanızın ihtiyaçlarına göre, HPA ayarlarını değiştirerek ölçeklendirme performansını optimize edebilirsiniz. Örneğin, targetCPUUtilizationPercentage değerini düşürerek daha agresif bir ölçeklendirme politikası uygulayabilir veya maksimum ve minimum replica sayılarını ayarlayarak kaynak kullanımını daha dengeli bir şekilde yönetebilirsiniz.

Sonuç:

Azure Kubernetes Service üzerinde yüke bağlı otomatik ölçeklendirme, uygulamalarınızın değişen yük koşullarına hızla uyum sağlamasını ve kaynak kullanımını etkin bir şekilde yönetmesini sağlar. Bu özellik, özellikle değişken trafik paternlerine sahip uygulamalar için maliyet etkinliği ve performansı artırır.

Exit mobile version