Scaling Policies

• Hedef Takipli Ölçekleme (Target Tracking Scaling)

  • Kurulumu kolaydır

  • Örnek: ASG içindeki ortalama CPU kullanımının %40 civarında kalmasını istiyorum

• Basit / Adımlı Ölçekleme (Simple / Step Scaling)

  • Bir CloudWatch alarmı tetiklendiğinde (örneğin CPU > %70), 2 instance eklenir

  • Bir CloudWatch alarmı tetiklendiğinde (örneğin CPU < %30), 1 instance kaldırılır

• Zamanlanmış Ölçekleme (Scheduled Scaling)

  • Bilinen kullanım desenlerine göre önceden ölçeklemeyi planlamaktır

  • Örnek: Her Cuma saat 17:00’de minimum kapasiteyi 10’a yükselt

• Tahminsel Ölçekleme (Predictive Scaling)

Sürekli olarak metrikleri takip eder ve tahmin yaparak ölçekleme sağlar

Örnek diyagramı

Takip Edilmesi İyi Olan Metrikler

  • CPUUtilization: Instance’larınız genelindeki ortalama CPU kullanımı

  • RequestCountPerTarget: Her bir EC2 instance başına istek sayısının dengede kalmasını sağlamak için

  • Average Network In / Out: Uygulamanız ağ trafiğine bağımlıysa gelen/giden veri trafiği ortalaması

  • Özel bir metrik (custom metric): CloudWatch kullanarak sizin tarafınızdan gönderilen herhangi bir özel metrik

RequestCountPerTarget üzerinden yapılan bir ASG Örneği

Scaling Cooldowns

  • Bir ölçekleme (scaling) işlemi gerçekleştikten sonra, cooldown süresi başlar (varsayılan: 300 saniye)

  • Cooldown süresi boyunca, ASG (Auto Scaling Group) yeni instance başlatmaz veya mevcutları sonlandırmaz (bunun amacı metriklerin dengelenmesini sağlamaktır)

  • Tavsiye: Önceden yapılandırılmış (kullanıma hazır) bir AMI kullanarak yapılandırma süresini azaltabilir, böylece istekleri daha hızlı karşılayabilir ve cooldown süresini kısaltabilirsiniz.

Diyagram ile gösterimi

Bilgi:

  • Default poliçelere göre ilk yokedilecek instance, Launch Template'i en eski olan instance'dır

  • Impair Statüsündeyken (EC2 instancelar Auto-Scaling'e geçmeye çalışma süresi) Instancelar Health Checkt'ten başarılı geçmez şeklinde görünür.

Last updated