لوحات معلومات CloudWatch وContainer Insights
أنشئ لوحات معلومات تشغيلية متعددة الخدمات، ومكّن Container Insights لمقاييس الأداء على مستوى عناقيد ECS وEKS
لوحات معلومات CloudWatch وContainer Insights درس مجاني في Cloud & IT Cert Prep على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cloud & IT Cert Prep، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cloud & IT Cert Prep 4 دروس في المجموع.
نظرة عامة على لوحات معلومات CloudWatch
لوحات معلومات CloudWatch هي عروض مخصصة ومتعددة الأدوات لبنيتكم الأساسية في AWS، وتوفر رؤية تشغيلية موحدة. يمكن للوحة المعلومات عرض مقاييس من خدمات وحسابات AWS متعددة على شاشة واحدة، باستخدام الرسوم البيانية الخطية، وأدوات الأرقام، والعدادات، والتنبيهات، ونتائج استعلامات السجلات. لوحات المعلومات موارد عامة — إذ يمكن للوحة واحدة عرض مقاييس من أي منطقة. ويمكنكم مشاركة لوحات المعلومات بشكل عام أو تقييد الوصول إليها من خلال سياسات IAM.
أدوات لوحة المعلومات
تدعم لوحات معلومات CloudWatch عدة أنواع من الأدوات: الرسوم البيانية الخطية والمساحة المتراكمة للمقاييس المتسلسلة زمنياً، وأدوات الأرقام لعرض أحدث قيمة للمقياس (وهي مناسبة جداً لمؤشرات الأداء الرئيسية)، ومخططات الأشرطة للمقارنات، والعداد لمؤشرات السعة، وحالة التنبيه لعرض ملخص لحالات التنبيهات، وجدول السجلات لنتائج استعلامات Live Tail أو Insights، والنص للعناوين والوثائق. يساعد الجمع بين أنواع الأدوات في لوحة واحدة الفرق على تقييم حالة النظام بنظرة سريعة.
# 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"
}
}
]
}'لوحات المعلومات عبر الحسابات والمناطق
تدعم CloudWatch المراقبة عبر الحسابات باستخدام حسابات المراقبة والحسابات المصدر. يمكنكم تعيين حساب مراقبة مركزي، وربط الحسابات المصدر به، وإنشاء لوحات معلومات تستخرج المقاييس والسجلات من جميع الحسابات المرتبطة. وبذلك لا تعودون بحاجة إلى التبديل بين حسابات وحدة التحكم لمراقبة بيئة متعددة الحسابات. كما تُدعم الأدوات عبر المناطق ضمن الحساب نفسه بشكل أصلي، وذلك بتحديد المنطقة في تعريف JSON الخاص بلوحة المعلومات.
# 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) بث أحداث السجلات من مجموعة سجلات واحدة أو أكثر في وقت قريب من الفعلي، مباشرةً في وحدة تحكم CloudWatch أو عبر CLI — على نحو مشابه لتشغيل tail -f على ملف سجل. ويمكنكم تطبيق نمط تصفية لعرض الأحداث المطابقة فقط. ويُعد Live Tail أداة بالغة الأهمية أثناء عمليات النشر أو التحقيق في الحوادث، عندما تحتاجون إلى مراقبة ما يفعله التطبيق في الوقت الحالي دون تشغيل استعلامات Insights كاملة.
# 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؟
CloudWatch Container Insights هي ميزة في CloudWatch تجمع المقاييس والسجلات من أحمال العمل المُشغّلة في حاويات، وتُجمّعها وتلخّصها، عند تشغيلها على Amazon ECS (EC2 وFargate) وAmazon EKS (EC2 وFargate). وتوفر لوحات معلومات مُعدّة مسبقاً لعرض أداء العناقيد والخدمات والعُقد والـ pods، دون الحاجة إلى إضافة أدوات رصد إلى كل تطبيق يدوياً. تستخدم Container Insights وكيل CloudWatch أو موجّه سجلات EKS Fargate لجمع البيانات.
# 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
تجمع Container Insights المقاييس في مساحتَي الأسماء ECS/ContainerInsights وContainerInsights. وبالنسبة إلى EKS، تشمل هذه المقاييس: على مستوى الـ pod — pod_cpu_utilization وpod_memory_utilization وpod_network_rx_bytes؛ على مستوى العُقدة — node_cpu_utilization وnode_memory_utilization وnode_filesystem_utilization؛ على مستوى العنقود — cluster_failed_node_count وcluster_node_count. وتُوسَم جميع المقاييس بأبعاد العنقود ومساحة الأسماء والخدمة والـ pod، لإتاحة التصفية الدقيقة.
# 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لوحات معلومات Container Insights في وحدة التحكم
عند تمكين Container Insights، توفر وحدة تحكم CloudWatch تلقائياً عرضَي خريطة الحاويات ومراقبة الأداء المُعدّين مسبقاً. تعرض خريطة الحاويات مهام ECS أو pods الخاصة بـ EKS في صورة مخطط طوبولوجي مرئي — مع ترميز لوني وفقاً للحالة الصحية — مع إمكانية التعمق لعرض مقاييس الحاويات الفردية. ويوفر عرض مراقبة الأداء رسوماً بيانية متسلسلة زمنياً لأداء العنقود والعُقد والـ pods والحاويات، دون الحاجة إلى إعداد لوحة معلومات يدوياً.
أداء مهام ECS باستخدام Container Insights
بالنسبة إلى ECS على EC2، تثبّت Container Insights وكيل CloudWatch كخدمة daemon على كل مثيل حاوية. أما بالنسبة إلى ECS على Fargate، فتستخدم Container Insights جامع مقاييس sidecar المتوفر في إصدار منصة Fargate 1.4.0. ويمكنكم الوصول إلى مقاييس ECS حسب بُعد العنقود أو الخدمة أو المهمة أو الحاوية. ومن أنماط التنبيه الشائعة إصدار تنبيه عند اقتراب MemoryUtilized من قيمة MemoryReserved الخاصة بالمهمة، لاكتشاف حالات نفاد الذاكرة (OOM) المحتملة قبل أن تؤدي إلى إنهاء المهام.
# 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 وServiceLens
يدمج CloudWatch ServiceLens المقاييس والسجلات والتتبعات في خريطة خدمات موحدة. ويتطلب ذلك تمكين AWS X-Ray إلى جانب CloudWatch. ويعرض ServiceLens تدفقات الطلبات من طرف إلى طرف بين الخدمات، ويسلط الضوء على اختناقات زمن الاستجابة، ويعرض معدلات الأخطاء لكل خدمة. أما CloudWatch Application Signals (الخلف الأحدث له) فيضيف أدوات رصد تلقائياً إلى التطبيقات لعرض أهداف مستوى الخدمة (SLOs) ومؤشرات مستوى الخدمة (SLIs) دون إجراء تغييرات على التعليمات البرمجية، مما يتيح تتبع الموثوقية بما يتجاوز المقاييس الأولية.
أفضل ممارسات لوحات المعلومات
تتبع لوحات معلومات CloudWatch الفعالة أفضل الممارسات التالية: فصل لوحات المعلومات حسب الجمهور (تشغيلي أو تنفيذي أو خاص بالمطورين)، واستخدام أدوات حالة التنبيه كأول ما تراه الفرق أثناء المناوبة، وتثبيت لوحات المعلومات للوصول المتكرر، واستخدام المراجع الديناميكية مع CloudFormation للحفاظ على اتساق مراجع مقاييس لوحة المعلومات مع أسماء الموارد الفعلية. تجنبوا تحميل لوحة واحدة بكمية زائدة من المعلومات — فسهولة القراءة مهمة عند تشخيص حادثة تحت الضغط.
CloudWatch Contributor Insights
تحلل CloudWatch Contributor Insights بيانات السجلات المنظّمة لتحديد أهم N من المساهمين في مقياس ما بمرور الوقت. فعلى سبيل المثال، يمكنها إظهار عناوين IP التي تولّد أكبر عدد من أخطاء 5xx، أو مسارات API التي تتلقى أكبر حجم من الطلبات، أو معرّفات العملاء التي تواجه أكبر عدد من حالات تقييد DynamoDB. وتحدد القواعد حقل JSON المراد استخراجه والتجميع بناءً عليه. وتظهر النتائج في صورة رسوم بيانية متسلسلة زمنياً، يتم تحديثها باستمرار عند وصول بيانات سجلات جديدة.
# 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تحقق سريع
اختبر مدى فهمكم لمفاهيم AWS Solutions Architect (SAA-C03) الواردة في هذا الدرس.
مراجعة الدرس
تعلمتم في هذا الدرس أن لوحات معلومات CloudWatch تدعم أنواعاً متعددة من الأدوات ويمكنها تجميع المقاييس عبر الحسابات والمناطق، وأن Container Insights تجمع تلقائياً المقاييس على مستوى الـ pod والعقدة من ECS وEKS دون إضافة أدوات رصد يدوية، وأن Contributor Insights تحدد أهم المساهمين من بيانات السجلات المنظّمة. في الخطوة التالية، سنستكشف مسارات CloudTrail وسجل الأحداث للتدقيق على مستوى API.
الأسئلة الشائعة
هل درس «لوحات معلومات CloudWatch وContainer Insights» مجاني؟
نعم — نص درس «لوحات معلومات CloudWatch وContainer Insights» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cloud & IT Cert Prep، انتقل إلى CoddyKit PRO. تتضمن دورة Cloud & IT Cert Prep 4 دروس في المجموع.
ماذا ستتعلم في «لوحات معلومات CloudWatch وContainer Insights»؟
أنشئ لوحات معلومات تشغيلية متعددة الخدمات، ومكّن Container Insights لمقاييس الأداء على مستوى عناقيد ECS وEKS تتمرن على Cloud & IT Cert Prep مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Cloud & IT Cert Prep؟
لا تُشترط خبرة سابقة. Cloud & IT Cert Prep على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «لوحات معلومات CloudWatch وContainer Insights»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Cloud & IT Cert Prep هذا؟
نعم. كل درس في Cloud & IT Cert Prep يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- مقاييس CloudWatch ومساحات الأسماء والأبعاد
- إنذارات CloudWatch والإنذارات المركّبة
- سجلات CloudWatch وLog Insights
- لوحات معلومات CloudWatch وContainer Insights