AWS Solutions Architect · Ders

CloudWatch Panoları ve Container Insights

Birden fazla hizmeti kapsayan operasyon panoları oluşturun ve ECS ile EKS küme düzeyindeki performans ölçümleri için Container Insights'ı etkinleştirin.

4. ders / 413 adım

CloudWatch Panoları ve Container Insights, CoddyKit'te ücretsiz bir AWS Solutions Architect dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AWS Solutions Architect öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AWS Solutions Architect kursu toplamda 4 dersten oluşur.

CloudWatch Panolarına Genel Bakış

CloudWatch Panoları, AWS altyapınızın birleşik bir operasyonel görünümünü sunan, özelleştirilebilir ve birden çok pencere öğesi içeren görünümlerdir. Bir pano, çizgi grafiklerini, sayı pencere öğelerini, göstergeleri, alarmları ve günlük sorgusu sonuçlarını kullanarak birden çok AWS hizmetinden ve hesabından gelen metrikleri tek bir ekranda görüntüleyebilir. Panolar küresel kaynaklardır; bir pano herhangi bir Bölgedeki metrikleri gösterebilir. Panoları herkese açık olarak paylaşabilir veya IAM politikaları aracılığıyla erişimi kısıtlayabilirsiniz.

Pano Pencere Öğeleri

CloudWatch panoları çeşitli pencere öğesi türlerini destekler: zaman serisi metrikleri için Çizgi ve Yığılmış alan grafikleri, en son metrik değerini göstermek için Sayı pencere öğeleri (KPI'lar için idealdir), karşılaştırmalar için Çubuk grafikleri, kapasite göstergeleri için Gösterge, alarm durumlarının özetini göstermek için Alarm durumu, Live Tail veya Insights sorgusu sonuçları için Günlük tablosu ve etiketlerle belgeler için Metin. Pencere öğesi türlerini tek bir panoda birleştirmek, ekiplerin sistem durumunu bir bakışta değerlendirmesine yardımcı olur.

# Create a dashboard via CLI (body must be escaped JSON)
aws cloudwatch put-dashboard \
  --dashboard-name ProductionOverview \
  --dashboard-body '{
    "widgets": [
      {
        "type": "metric",
        "properties": {
          "metrics": [["AWS/EC2","CPUUtilization","AutoScalingGroupName","my-asg"]],
          "period": 60,
          "stat": "Average",
          "title": "ASG CPU Utilization"
        }
      }
    ]
  }'

Hesaplar ve Bölgeler Arası Panolar

CloudWatch, izleme hesaplarını ve kaynak hesaplarını kullanarak hesaplar arası gözlemlenebilirliği destekler. Merkezi bir izleme hesabı belirleyebilir, kaynak hesaplarını bu hesaba bağlayabilir ve bağlantılı tüm hesaplardan metrikleri ve günlükleri alan panolar oluşturabilirsiniz. Böylece çok hesaplı bir ortamı gözlemlemek için konsol hesapları arasında geçiş yapmanız gerekmez. Aynı hesap içindeki Bölgeler arası pencere öğeleri, pano JSON tanımında Bölge belirtilerek yerel olarak desteklenir.

# Enable cross-account sharing in a source account
aws cloudwatch put-dashboard \
  --dashboard-name MultiRegionView \
  --dashboard-body '{
    "widgets": [
      {
        "type": "metric",
        "properties": {
          "metrics": [
            ["AWS/RDS","DatabaseConnections","DBInstanceIdentifier","prod-db",{"region":"us-east-1"}],
            ["AWS/RDS","DatabaseConnections","DBInstanceIdentifier","prod-db-eu",{"region":"eu-west-1"}]
          ],
          "title": "DB Connections: us-east-1 vs eu-west-1"
        }
      }
    ]
  }'

CloudWatch Live Tail

CloudWatch Live Tail (2023'te kullanıma sunulmuştur), günlük olaylarını bir veya daha fazla günlük grubundan neredeyse gerçek zamanlı olarak doğrudan CloudWatch konsolunda veya CLI'da akış şeklinde görüntülemenizi sağlar; bu işlem, bir günlük dosyasında tail -f çalıştırmaya benzer. Yalnızca eşleşen olayları görmek için bir filtre kalıbı uygulayabilirsiniz. Live Tail, tam Insights sorguları çalıştırmadan bir uygulamanın o anda ne yaptığını gözlemlemeniz gereken dağıtımlar veya olay incelemeleri sırasında çok değerlidir.

# Start a Live Tail session for a Lambda function's logs
aws logs start-live-tail \
  --log-group-identifiers '/aws/lambda/my-function' \
  --log-event-filter-pattern 'ERROR'

# The output streams log events in real time until you cancel (Ctrl+C)

Container Insights Nedir?

CloudWatch Container Insights, Amazon ECS (EC2 ve Fargate) ve Amazon EKS (EC2 ve Fargate) üzerinde çalışan kapsayıcılı iş yüklerinden metrikleri ve günlükleri toplayan, birleştiren ve özetleyen bir CloudWatch özelliğidir. Her uygulamayı manuel olarak ölçümlemek zorunda kalmadan küme, hizmet, düğüm ve pod düzeyinde performans için önceden oluşturulmuş panolar sunar. Container Insights, verileri toplamak için CloudWatch Agent'ı veya EKS Fargate günlük yönlendiricisini kullanır.

# Enable Container Insights on an ECS cluster
aws ecs update-cluster-settings \
  --cluster my-ecs-cluster \
  --settings name=containerInsights,value=enabled

# Enable Container Insights on EKS (via CloudWatch Agent DaemonSet)
eksctl utils update-cluster-logging \
  --cluster my-eks-cluster \
  --enable-types all \
  --region us-east-1

Container Insights Metrikleri

Container Insights, ECS/ContainerInsights ve ContainerInsights ad alanlarında metrikler toplar. EKS için bunlar şunları içerir: pod düzeyi — pod_cpu_utilization, pod_memory_utilization, pod_network_rx_bytes; düğüm düzeyi — node_cpu_utilization, node_memory_utilization, node_filesystem_utilization; küme düzeyi — cluster_failed_node_count, cluster_node_count. Hassas filtreleme yapılabilmesi için tüm metrikler küme, ad alanı, hizmet ve pod boyutlarıyla etiketlenir.

# Query pod memory utilization for a specific namespace
aws cloudwatch get-metric-statistics \
  --namespace ContainerInsights \
  --metric-name pod_memory_utilization \
  --dimensions \
    Name=ClusterName,Value=my-cluster \
    Name=Namespace,Value=production \
  --statistic Average \
  --period 60 \
  --start-time 2024-01-01T00:00:00Z \
  --end-time 2024-01-01T01:00:00Z

Konsolda Container Insights Panoları

Container Insights etkinleştirildiğinde CloudWatch konsolu otomatik olarak önceden oluşturulmuş Kapsayıcı Haritası ve Performans İzleme görünümlerini sunar. Kapsayıcı Haritası, ECS görevlerinizi veya EKS pod'larınızı sağlık durumuna göre renklerle kodlanmış görsel bir topoloji olarak gösterir ve tek tek kapsayıcı metriklerine ayrıntılı inceleme olanağı sağlar. Performans İzleme görünümü, manuel pano yapılandırması gerektirmeden küme, düğüm, pod ve kapsayıcı performansına ilişkin zaman serisi grafiklerini sunar.

Container Insights ile ECS Görev Performansı

EC2 üzerindeki ECS için Container Insights, CloudWatch Agent'ı her kapsayıcı örneğine bir daemon hizmeti olarak yükler. Fargate üzerindeki ECS için Container Insights, Fargate platform sürümü 1.4.0 yan kapsayıcı metrik toplayıcısını kullanır. ECS metriklerine küme, hizmet, görev veya kapsayıcı boyutuna göre erişirsiniz. Yaygın bir alarm kalıbı, görevleri sonlandırmadan önce olası OOM koşullarını yakalamak için MemoryUtilized değerinin görevin MemoryReserved değerine yaklaşması durumunda alarm oluşturmaktır.

# Get memory reservation and utilisation for a service
aws cloudwatch get-metric-statistics \
  --namespace ECS/ContainerInsights \
  --metric-name MemoryUtilized \
  --dimensions Name=ClusterName,Value=my-cluster Name=ServiceName,Value=api-service \
  --statistic Average \
  --period 300 \
  --start-time $(date -u -d '1 hour ago' +%Y-%m-%dT%H:%M:%SZ) \
  --end-time $(date -u +%Y-%m-%dT%H:%M:%SZ)

Application Signals ve ServiceLens

CloudWatch ServiceLens, metrikleri, günlükleri ve izlemeleri birleşik bir hizmet haritasında bütünleştirir. CloudWatch ile birlikte AWS X-Ray'in etkinleştirilmesi gerekir. ServiceLens, hizmetler arasındaki uçtan uca istek akışlarını görselleştirir, gecikme darboğazlarını öne çıkarır ve hizmet başına hata oranlarını gösterir. CloudWatch Application Signals (daha yeni halefi), kod değişikliği gerektirmeden SLO'ları ve SLI'ları ortaya çıkarmak için uygulamaları otomatik olarak ölçümler; böylece yalnızca ham metriklerin ötesinde güvenilirliği izlemenizi sağlar.

Pano En İyi Uygulamaları

Etkili CloudWatch panoları şu en iyi uygulamaları izler: panoları hedef kitleye göre ayırın (operasyon, yönetici ve geliştirici), nöbet sırasında ekiplerin gördüğü ilk öğe olarak alarm durumu pencere öğelerini kullanın, sık erişim için panoları sabitleyin ve pano metrik referanslarını gerçek kaynak adlarıyla tutarlı kılmak için CloudFormation ile dinamik başvurular kullanın. Tek bir panoyu aşırı yüklemekten kaçının; baskı altında bir olayı teşhis ederken okunabilirlik önemlidir.

CloudWatch Contributor Insights

CloudWatch Contributor Insights, zaman içinde bir metriğe en fazla katkıda bulunan ilk N katkıyı belirlemek için yapılandırılmış günlük verilerini analiz eder. Örneğin en fazla 5xx hatası üreten IP adreslerini, en yüksek istek hacmine sahip API yollarını veya en fazla DynamoDB kısıtlamasına neden olan müşteri kimliklerini gösterebilir. Kurallar, çıkarılacak ve üzerinde toplama yapılacak JSON alanını tanımlar. Sonuçlar, yeni günlük verileri geldikçe sürekli güncellenen zaman serisi grafikleri olarak görünür.

# Enable Contributor Insights on a DynamoDB table
aws dynamodb enable-kinesis-streaming-destination \
  --table-name my-table

# Or enable CloudWatch Contributor Insights via the console:
# CloudWatch -> Contributor Insights -> Create rule
# Log group: /aws/dynamodb/tables
# Contributor field: $.TableName
# Aggregation: COUNT by $.requestID

Hızlı Kontrol

Bu dersteki AWS Çözüm Mimarı (SAA-C03) kavramlarını anlayıp anlamadığınızı test edin.

Ders Özeti

Bu derste şunları öğrendiniz: CloudWatch Panoları birden çok pencere öğesi türünü destekler ve hesaplar ile Bölgeler arasındaki metrikleri birleştirebilir; Container Insights, manuel ölçümleme gerektirmeden ECS ve EKS'ten pod ve düğüm düzeyindeki metrikleri otomatik olarak toplar; Contributor Insights ise yapılandırılmış günlük verilerindeki en büyük katkıları belirler. Sırada, API düzeyinde denetim için CloudTrail İzlerini ve Olay Geçmişini inceleyeceğiz.

Başlamak ücretsiz

Yapay zeka eğitmeniyle AWS Solutions Architect öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
30
Dersler
120

Sıkça Sorulan Sorular

“CloudWatch Panoları ve Container Insights” dersi ücretsiz mi?

Evet — “CloudWatch Panoları ve Container Insights” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AWS Solutions Architect kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AWS Solutions Architect kursu toplamda 4 dersten oluşur.

“CloudWatch Panoları ve Container Insights” dersinde ne öğreneceğim?

Birden fazla hizmeti kapsayan operasyon panoları oluşturun ve ECS ile EKS küme düzeyindeki performans ölçümleri için Container Insights'ı etkinleştirin. AWS Solutions Architect ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

AWS Solutions Architect öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te AWS Solutions Architect, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“CloudWatch Panoları ve Container Insights” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu AWS Solutions Architect dersinde kod yazıp çalıştırabilir miyim?

Evet. Her AWS Solutions Architect dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. CloudWatch Ölçümleri, Ad Alanları ve Boyutlar
  2. CloudWatch Alarmları ve Bileşik Alarmlar
  3. CloudWatch Günlükleri ve Log Insights
  4. CloudWatch Panoları ve Container Insights
← AWS Solutions Architect Sayfasına Dön