CloudWatch alarmları ve bildirimler

AWS'i İzleme ve Sorun Giderme

John Q. Martin

Principal Consultant

CloudWatch Alarms nedir

 

Temel kavramlar

  • Belirli bir sürede tek bir metriği izler
  • Metri̇k eşik değeri aşınca eylem tetikler

 

Altı temel CloudWatch alarm bileşeni metric threshold period evaluation periods datapoints to alarm and actions

AWS'i İzleme ve Sorun Giderme

Alarm durumları

Üç CloudWatch alarm durumu OK ALARM ve INSUFFICIENT_DATA

Metri̇k verisi geldikçe bir CloudWatch alarmının durumlar arasında nasıl geçtiğini gösteren diyagram

AWS'i İzleme ve Sorun Giderme

Alarm değerlendirmesi

 

  1. Belirli aralıklarla veri noktalarını topla
  2. Dönem üzerinde istatistik uygula (Average, Sum, Max, Min)
  3. Sonucu eşik ile karşılaştır
  4. İhlal eden değerlendirme dönemlerini say
  5. Alarm veri noktası eşiği sağlanırsa durumu değiştir

 

Metric: CPUUtilization > 80%
Period: 5 min | 
Eval Periods: 3 | 
Datapoints to Alarm: 2 of 3

Period 1: 85% (breach) | 
Period 2: 75% (ok) | 
Period 3: 90% (breach)
Result: ALARM — 2 of 3 breached
AWS'i İzleme ve Sorun Giderme

Değerlendirme stratejileri

 

Üç alarm değerlendirme stratejisi: ardışık, kısmi ve tek ihlal ile duyarlılık dengeleri

AWS'i İzleme ve Sorun Giderme

Alarm eylem türleri ve tetikleyiciler

 

Eylem tetikleyicileri

  • OK
  • ALARM
  • INSUFFICIENT_DATA

 

Eylem türleri

  • SNS Notification
  • Auto Scaling
  • EC2 Action (stop/terminate/reboot/recover)
  • Systems Manager
AWS'i İzleme ve Sorun Giderme

Eksik veri davranışı

 

Eksik veri davranışı seçenekleri notBreaching breaching ignore ve missing

AWS'i İzleme ve Sorun Giderme

Standart alarm oluşturma: AWS CLI

aws cloudwatch put-metric-alarm \
  --alarm-name HighCPUUtilization \
  --alarm-description "Alert when CPU exceeds 80%" \
  --metric-name CPUUtilization \
  --namespace AWS/EC2 \
  --statistic Average \
  --period 300 \
  --evaluation-periods 2 \
  --threshold 80 \
  --comparison-operator GreaterThanThreshold \
  --dimensions Name=InstanceId,Value=i-1234567890abcdef0 \
  --alarm-actions arn:aws:sns:us-east-1:123456789012:my-topic
AWS'i İzleme ve Sorun Giderme

Bileşik alarmlar: ne ve neden

Sorun

  • İlişkili birden çok alarm ayrı ayrı çalar = uyarı yorgunluğu

Çözüm

  • Alarmları mantıksal operatörlerle birleştir

AND OR ve NOT operatörleriyle alt alarmları birleştiren bileşik alarm mantığı

AWS'i İzleme ve Sorun Giderme

Bileşik alarm oluşturma: AWS CLI

aws cloudwatch put-composite-alarm \
  --alarm-name CriticalSystemHealth \
  --alarm-description "Critical when CPU and Memory both high" \
  --actions-enabled \
  --alarm-actions arn:aws:sns:us-east-1:123456789012:critical-alerts \
  --alarm-rule "ALARM(HighCPUAlarm) AND ALARM(HighMemoryAlarm)"
Karmaşık kural örneği
--alarm-rule "(ALARM(HighErrorRate) OR ALARM(HighLatency)) \
  AND NOT ALARM(MaintenanceMode)"
AWS'i İzleme ve Sorun Giderme

Eşik seçimi stratejisi

Dört eşik seçimi stratejisi baseline deviation capacity limits SLA targets ve rate of change

AWS'i İzleme ve Sorun Giderme

Çok katmanlı alarm stratejisi

 

Uyarı, kritik ve acil katmanları ayrı SNS konularına yönlenen çok katmanlı alarm yanıtı

Örnek: CPU Uyarı %75, Kritik %90, her biri farklı SNS konusuna

AWS'i İzleme ve Sorun Giderme

Anomali tespit alarmları

aws cloudwatch put-metric-alarm \
  --alarm-name AnomalousTraffic \
  --comparison-operator LessThanLowerOrGreaterThanUpperThreshold \
  --metrics '[
    {"Id":"m1","MetricStat":{"Metric":{"Namespace":"AWS/ApplicationELB",
      "MetricName":"RequestCount"},"Period":300,"Stat":"Average"}},
    {"Id":"e1","Expression":"ANOMALY_DETECTION_BAND(m1, 2)"}
  ]'
  • ML modeli normal metrik davranışını öğrenir
  • Dinamik eşik bandı oluşturur (yapılandırılabilir)
  • Günlük/haftalık desenlere uyum sağlar
  • Elle eşik ayarını azaltır
AWS'i İzleme ve Sorun Giderme

Kaynak alarmları: Lambda ve ALB

Lambda alarmları

Hata sayısı, throttles ve zaman aşımı sınırına yakın yüksek süreyi izleyen önerilen Lambda alarmları

ALB alarmları

Hedef yanıt süresi, sağlıksız ana makineler ve 5xx hata sayılarını izleyen önerilen ALB alarmları

AWS'i İzleme ve Sorun Giderme

Alarm yönetimi için önerilen uygulamalar

  • Adlandırma: <Service>-<Metric>-<Resource>-<Severity>
  • Açıklamalar: ne izleniyor, eşik, sorun giderme ipuçları, runbook bağlantıları
  • Etiketler: Environment, Team, Severity
  • Aylık gözden geçir: eşikleri ayarla, eskileri kaldır, eylemleri güncelle
aws cloudwatch set-alarm-state \
  --alarm-name MyAlarm \
  --state-value ALARM \
  --state-reason "Testing alarm notification"
AWS'i İzleme ve Sorun Giderme

Video özeti

  • Üç alarm durumu: OK, ALARM, INSUFFICIENT_DATA
  • Değerlendirme stratejileri: ardışık, kısmi, tek ihlal
  • Bileşik alarmlar çoklu alarmları AND, OR, NOT ile birleştirir
  • Dört eşik stratejisi: istatistiksel, kapasite, SLA, değişim hızı
  • Çok katmanlı uyarı: uyarı → kritik → acil
  • Lambda (errors, throttles, duration) ve ALB (5xx, latency) için kaynak alarmları
AWS'i İzleme ve Sorun Giderme

Hadi pratik yapalım!

AWS'i İzleme ve Sorun Giderme

Preparing Video For Download...