تمكين المراقبة لمجموعات Kubernetes

توضح هذه المقالة كيفية تمكين المراقبة الكاملة لمجموعات Kubernetes باستخدام ميزات Azure Monitor التالية:

باستخدام مدخل Microsoft Azure، يمكنك تمكين جميع الميزات في نفس الوقت. يمكنك أيضا تمكينها بشكل فردي باستخدام Azure CLI أو قالب Azure Resource Manager أو Terraform أو نهج Azure. يتم وصف كل من هذه الأساليب في هذه المقالة.

هام

تنشئ مجموعات Kubernetes الكثير من بيانات السجل، والتي يمكن أن تؤدي إلى تكاليف كبيرة إذا لم تكن انتقائيا بشأن السجلات التي تجمعها. قبل تمكين المراقبة لنظام المجموعة، راجع المقالات التالية للتأكد من أن بيئتك محسنة للتكلفة وأنك تحد من مجموعة السجل الخاصة بك على البيانات التي تحتاجها فقط:

المجموعات المدعومة

توفر هذه المقالة إرشادات الإعداد للأنوع التالية من المجموعات. يتم ملاحظة أي اختلافات في العملية لكل نوع في الأقسام ذات الصلة.

المتطلبات الأساسية

الأذونات

المتطلبات الأساسية ل Prometheus المدارة

  • يجب أن يستخدم نظام المجموعة مصادقة الهوية المدارة.
  • يجب تسجيل موفري الموارد التاليين في اشتراك نظام مجموعة AKS ومساحة عمل Azure Monitor:
    • Microsoft.ContainerService
    • Microsoft.Insights
    • Microsoft.AlertsManagement
    • Microsoft.Monitor
  • يجب تسجيل موفري الموارد التاليين في اشتراك مساحة عمل Grafana:
    • Microsoft.Dashboard

متطلبات مجموعات Kubernetes الممكنة بواسطة Arc

  • المتطلبات الأساسية لملحقات نظام مجموعة Kubernetes التي تدعم Azure Arc.

إشعار

لا يدعم ملحق Kubernetes الممكن بواسطة Prometheus Arc المدار التكوينات التالية:

  • توزيعات Red Hat Openshift، بما في ذلك Azure Red Hat OpenShift (ARO)
  • عقد Windows

مساحات العمل

يصف الجدول التالي مساحات العمل المطلوبة لدعم Managed Prometheus و Container insights. يمكنك إنشاء كل مساحة عمل كجزء من عملية الإعداد أو استخدام مساحة عمل موجودة. راجع تصميم بنية مساحة عمل Log Analytics للحصول على إرشادات حول عدد مساحات العمل التي يجب إنشاؤها ومكان وضعها.

ميزة مساحة عمل ملاحظات
Prometheus المدار مساحة عمل Azure Monitor Contributor الإذن كاف لتمكين الملحق لإرسال البيانات إلى مساحة عمل Azure Monitor. ستحتاج إلى Owner إذن المستوى لربط مساحة عمل Azure Monitor لعرض المقاييس في Azure Managed Grafana. هذا مطلوب لأن المستخدم الذي ينفذ خطوة الإعداد، يحتاج إلى أن يكون قادرا على منح دور Azure Managed Grafana System Identity Monitoring Reader على مساحة عمل Azure Monitor للاستعلام عن المقاييس.
نتائج تحليلات الحاوية مساحة عمل Log Analytics يمكنك إرفاق مجموعة AKS بمساحة عمل Log Analytics في اشتراك Azure مختلف في نفس مستأجر Microsoft Entra، ولكن يجب عليك استخدام Azure CLI أو قالب Azure Resource Manager. لا يمكنك حاليا تنفيذ هذا التكوين باستخدام مدخل Microsoft Azure.

إذا كنت تقوم بتوصيل مجموعة AKS موجودة بمساحة عمل Log Analytics في اشتراك آخر، يجب تسجيل موفر موارد Microsoft.ContainerService في الاشتراك مع مساحة عمل Log Analytics. لمزيد من المعلومات، راجع تسجيل موفر الموارد.

للحصول على قائمة بأزواج التخطيط المدعومة لاستخدامها لمساحة العمل الافتراضية، راجع مخططات المنطقة المدعومة من قبل رؤى الحاوية.
Managed Grafana مساحة عمل Azure Managed Grafana اربط مساحة عمل Grafana بمساحة عمل Azure Monitor لجعل مقاييس Prometheus التي تم جمعها من مجموعتك متاحة للوحات معلومات Grafana.

تمكين Prometheus وGrafana

استخدم إحدى الطرق التالية لتمكين استخراج مقاييس Prometheus من مجموعتك وتمكين Managed Grafana من تصور المقاييس. راجع ربط مساحة عمل Grafana للحصول على خيارات لتوصيل مساحة عمل Azure Monitor ومساحة عمل Azure Managed Grafana.

إشعار

إذا كان لديك مورد Azure Monitor واحد مرتبط بخاصة، فلن يعمل تمكين Prometheus إذا كان نظام مجموعة AKS ومساحة عمل Azure Monitor في مناطق مختلفة. التكوين المطلوب للوظيفة الإضافية Prometheus غير متوفر عبر المنطقة بسبب قيد الارتباط الخاص. لحل هذه المشكلة، قم بإنشاء DCE جديد في موقع نظام مجموعة AKS وDCRA جديد (اقتران) في نفس منطقة نظام مجموعة AKS. إقران DCE الجديد بمجموعة AKS وتسمية الاقتران الجديد (DCRA) ك configurationAccessEndpoint. للحصول على إرشادات كاملة حول كيفية تكوين DCEs المقترنة بمساحة عمل Azure Monitor لاستخدام ارتباط خاص لاستيعاب البيانات، راجع تمكين الارتباط الخاص لمراقبة Kubernetes في Azure Monitor.

تمكين باستخدام CLI

إذا لم تحدد مساحة عمل Azure Monitor موجودة في الأوامر التالية، استخدام مساحة العمل الافتراضية لمجموعة الموارد. إذا لم تكن مساحة العمل الافتراضية موجودة بالفعل في منطقة نظام المجموعة، إنشاء مساحة مع اسم بالتنسيق DefaultAzureMonitorWorkspace-<mapped_region> في مجموعة موارد بالاسم DefaultRG-<cluster_region>.

المتطلبات الأساسية

  • مطلوب إصدار Az CLI من 2.49.0 أو أعلى.
  • يجب إلغاء تثبيت ملحق aks-preview من مجموعات AKS باستخدام الأمر az extension remove --name aks-preview.
  • يجب تثبيت ملحق ملحق k8s باستخدام الأمر az extension add --name k8s-extension.
  • مطلوب إصدار ملحق k8s 1.4.1 أو أعلى.

كتلة خدمة Azure Kubernetes

-enable-azure-monitor-metrics استخدم الخيار az aks create أو az aks update (اعتمادا على ما إذا كنت تقوم بإنشاء نظام مجموعة جديد أو تحديث نظام مجموعة موجود) لتثبيت الوظيفة الإضافية للمقاييس التي تتخلص من مقاييس Prometheus.

نماذج الأوامر

### Use default Azure Monitor workspace
az aks create/update --enable-azure-monitor-metrics --name <cluster-name> --resource-group <cluster-resource-group>

### Use existing Azure Monitor workspace
az aks create/update --enable-azure-monitor-metrics --name <cluster-name> --resource-group <cluster-resource-group> --azure-monitor-workspace-resource-id <workspace-name-resource-id>

### Use an existing Azure Monitor workspace and link with an existing Grafana workspace
az aks create/update --enable-azure-monitor-metrics --name <cluster-name> --resource-group <cluster-resource-group> --azure-monitor-workspace-resource-id <azure-monitor-workspace-name-resource-id> --grafana-resource-id  <grafana-workspace-name-resource-id>

### Use optional parameters
az aks create/update --enable-azure-monitor-metrics --name <cluster-name> --resource-group <cluster-resource-group> --ksm-metric-labels-allow-list "namespaces=[k8s-label-1,k8s-label-n]" --ksm-metric-annotations-allow-list "pods=[k8s-annotation-1,k8s-annotation-n]"

نظام مجموعة ممكن بواسطة Arc

### Use default Azure Monitor workspace
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics

## Use existing Azure Monitor workspace
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics --configuration-settings azure-monitor-workspace-resource-id=<workspace-name-resource-id>

### Use an existing Azure Monitor workspace and link with an existing Grafana workspace
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics --configuration-settings azure-monitor-workspace-resource-id=<workspace-name-resource-id> grafana-resource-id=<grafana-workspace-name-resource-id>

### Use optional parameters
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics --configuration-settings azure-monitor-workspace-resource-id=<workspace-name-resource-id> grafana-resource-id=<grafana-workspace-name-resource-id> AzureMonitorMetrics.KubeStateMetrics.MetricAnnotationsAllowList="pods=[k8s-annotation-1,k8s-annotation-n]" AzureMonitorMetrics.KubeStateMetrics.MetricLabelsAllowlist "namespaces=[k8s-label-1,k8s-label-n]"

يمكن لأي من الأوامر استخدام المعلمات الاختيارية التالية:

  • AKS: --ksm-metric-annotations-allow-list
    قوس: --AzureMonitorMetrics.KubeStateMetrics.MetricAnnotationsAllowList
    قائمة مفصولة بفواصل لمفاتيح التعليقات التوضيحية ل Kubernetes المستخدمة في مقياس kube_resource_annotations للمورد. على سبيل المثال، kube_pod_annotations هو مقياس التعليقات التوضيحية لمورد pods. بشكل افتراضي، يحتوي هذا المقياس على تسميات الاسم ومساحة الاسم فقط. لتضمين المزيد من التعليقات التوضيحية، قم بتوفير قائمة بأسماء الموارد في نموذج الجمع ومفاتيح التعليق التوضيحي Kubernetes التي تريد السماح بها. يمكن توفير واحد * لكل مورد للسماح بأي تعليقات توضيحية، ولكن هذا له آثار خطيرة على الأداء. على سبيل المثال، pods=[kubernetes.io/team,...],namespaces=[kubernetes.io/team],...
  • AKS: --ksm-metric-labels-allow-list
    قوس: --AzureMonitorMetrics.KubeStateMetrics.MetricLabelsAllowlist
    قائمة مفصولة بفواصل لمزيد من مفاتيح تسمية Kubernetes المستخدمة في مقياس kube_resource_labels kube_resource_labels للمورد. على سبيل المثال، kube_pod_labels هو مقياس التسميات لمورد pods. بشكل افتراضي، يحتوي هذا المقياس على تسميات الاسم ومساحة الاسم فقط. لتضمين المزيد من التسميات، قم بتوفير قائمة بأسماء الموارد في شكلها الجمع ومفاتيح تسميات Kubernetes التي تريد السماح بها يمكن توفير واحد * لكل مورد للسماح بأي تسميات، ولكن I هذا له آثار شديدة على الأداء. على سبيل المثال، pods=[app],namespaces=[k8s-label-1,k8s-label-n,...],...
  • AKS: --enable-windows-recording-rules يتيح لك تمكين مجموعات قواعد التسجيل المطلوبة للأداء السليم للوحات معلومات Windows.

تمكين رؤى الحاوية

استخدم إحدى الطرق التالية لتمكين نتائج تحليلات الحاوية على نظام المجموعة. بمجرد اكتمال ذلك، راجع تكوين جمع بيانات العامل لرؤى الحاوية لتخصيص التكوين الخاص بك للتأكد من أنك لا تجمع بيانات أكثر مما تحتاج إليه.

استخدم أحد الأوامر التالية لتمكين مراقبة مجموعات AKS وArc الممكنة. إذا لم تحدد مساحة عمل Log Analytics موجودة، استخدام مساحة العمل الافتراضية لمجموعة الموارد. إذا لم تكن مساحة العمل الافتراضية موجودة بالفعل في منطقة نظام المجموعة، إنشاء مساحة عمل باسم بالتنسيق DefaultWorkspace-<GUID>-<Region>.

المتطلبات الأساسية

  • الإصدار 2.43.0 من Azure CLI أو أعلى
  • مصادقة الهوية المدارة افتراضية في إصدار CLI 2.49.0 أو أعلى.
  • إصدار ملحق Azure k8s 1.3.7 أو أعلى
  • مصادقة الهوية المدارة هي الافتراضي في k8s-extension الإصدار 1.43.0 أو أعلى.
  • مصادقة الهوية المدارة غير مدعومة لمجموعات Kubernetes الممكنة بواسطة Arc مع ARO (Azure Red Hat Openshift) أو عقد Windows. استخدم المصادقة القديمة.
  • بالنسبة لإصدار CLI 2.54.0 أو أعلى، سيتم تكوين مخطط التسجيل إلى ContainerLogV2 باستخدام ConfigMap.

إشعار

يمكنك تمكين مخطط ContainerLogV2 لنظام مجموعة إما باستخدام قاعدة تجميع البيانات (DCR) الخاصة بالمجموعة أو ConfigMap. إذا تم تمكين كلا الإعدادين، فإن ConfigMap سيكون له الأسبقية. سيتم استيعاب سجلات Stdout وstderr فقط في جدول ContainerLog عند تعيين كل من DCR وConfigMap بشكل صريح على إيقاف التشغيل.

كتلة خدمة Azure Kubernetes

### Use default Log Analytics workspace
az aks enable-addons --addon monitoring --name <cluster-name> --resource-group <cluster-resource-group-name>

### Use existing Log Analytics workspace
az aks enable-addons --addon monitoring --name <cluster-name> --resource-group <cluster-resource-group-name> --workspace-resource-id <workspace-resource-id>

### Use legacy authentication
az aks enable-addons --addon monitoring --name <cluster-name> --resource-group <cluster-resource-group-name> --workspace-resource-id <workspace-resource-id> --enable-msi-auth-for-monitoring false

مثال

az aks enable-addons --addon monitoring --name "my-cluster" --resource-group "my-resource-group" --workspace-resource-id "/subscriptions/my-subscription/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace"

نظام مجموعة ممكن بواسطة Arc

### Use default Log Analytics workspace
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers

### Use existing Log Analytics workspace
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings logAnalyticsWorkspaceResourceID=<workspace-resource-id>

### Use managed identity authentication (default as k8s-extension version 1.43.0)
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.useAADAuth=true

### Use advanced configuration settings
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings  amalogs.resources.daemonset.limits.cpu=150m amalogs.resources.daemonset.limits.memory=600Mi amalogs.resources.deployment.limits.cpu=1 amalogs.resources.deployment.limits.memory=750Mi

### With custom mount path for container stdout & stderr logs
### Custom mount path not required for Azure Stack Edge version > 2318. Custom mount path must be /home/data/docker for Azure Stack Edge cluster with version <= 2318
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.logsettings.custommountpath=<customMountPath>

راجع قسم طلبات الموارد والحدود في مخطط Helm لإعدادات التكوين المتوفرة.

مثال

az k8s-extension create --name azuremonitor-containers --cluster-name "my-cluster" --resource-group "my-resource-group" --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings logAnalyticsWorkspaceResourceID="/subscriptions/my-subscription/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace"

نظام مجموعة ممكن بواسطة Arc مع وكيل للأمام

إذا تم تكوين نظام المجموعة باستخدام وكيل إعادة توجيه، تطبيق إعدادات الوكيل تلقائيا على الملحق. في حالة نظام مجموعة مع AMPLS + وكيل، يجب تجاهل تكوين الوكيل. إلحاق الملحق بإعداد التكوين amalogs.ignoreExtensionProxySettings=true.

az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.ignoreExtensionProxySettings=true

نظام مجموعة ممكن بواسطة Arc مع عقد ARO أو OpenShift أو Windows

مصادقة الهوية المدارة غير مدعومة لمجموعات Kubernetes التي تدعم Arc مع عقد ARO (Azure Red Hat OpenShift) أو OpenShift أو Windows. استخدم المصادقة القديمة amalogs.useAADAuth=false عن طريق تحديد كما في المثال التالي.

az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.useAADAuth=false

حذف مثيل الملحق

يحذف الأمر التالي نسخة الامتداد فقط؛ لكنه لا يحذف مساحة عمل Log Analytics. تترك البيانات الموجودة في مورد Log Analytics سليمة.

az k8s-extension delete --name azuremonitor-containers --cluster-type connectedClusters --cluster-name <cluster-name> --resource-group <resource-group>

تمكين المراقبة الكاملة باستخدام مدخل Microsoft Azure

نظام مجموعة AKS جديد (Prometheus و Container insights وGrafana)

عند إنشاء مجموعة AKS جديدة في مدخل Microsoft Azure، يمكنك تمكين Prometheus و Container insights وGrafana من علامة التبويب Monitoring. تأكد من تحديد خانات الاختيار Enable Container Logs وEnable Prometheus وEnable Grafana.

لقطة شاشة لعلامة تبويب المراقبة لمجموعة AKS الجديدة.

نظام المجموعة الحالي (Prometheus و Container insights وGrafana)

  1. انتقل إلى مجموعة أجهزة كمبيوتر AKS في مدخل Microsoft Azure.
  2. في قائمة الخدمة، ضمن Monitoring، حدد Insights>Configure monitoring.
  3. تم تمكين نتائج تحليلات الحاوية بالفعل. حدد خانتي الاختيار تمكين مقاييس Prometheus وتمكين Grafana . إذا كان لديك مساحة عمل Azure Monitor ومساحة عمل Grafana، تحديدهما لك.
  4. حدد الإعدادات المتقدمة إذا كنت تريد تحديد مساحات عمل بديلة أو إنشاء مساحات عمل جديدة. يسمح لك إعداد الإعدادات المسبقة للتكلفة بتعديل تفاصيل المجموعة الافتراضية لتقليل تكاليف المراقبة. راجع تمكين إعدادات تحسين التكلفة في نتائج تحليلات الحاوية للحصول على التفاصيل.
  5. حدد تكوين.

نظام المجموعة الموجود (Prometheus فقط)

  1. انتقل إلى مجموعة أجهزة كمبيوتر AKS في مدخل Microsoft Azure.
  2. في قائمة الخدمة، ضمن Monitoring، حدد Insights>Configure monitoring.
  3. حدد خانة الاختيار Enable Prometheus metrics .
  4. حدد الإعدادات المتقدمة إذا كنت تريد تحديد مساحات عمل بديلة أو إنشاء مساحات عمل جديدة. يسمح لك إعداد الإعدادات المسبقة للتكلفة بتعديل تفاصيل المجموعة الافتراضية لتقليل تكاليف المراقبة.
  5. حدد تكوين.

تمكين مجموعة مقاييس Windows (معاينة)

إشعار

لا يوجد حد لوحدة المعالجة المركزية/الذاكرة في windows-exporter-daemonset.yaml لذلك قد يزيد من توفير عقد Windows
لمزيد من التفاصيل، راجع حجز الموارد

أثناء توزيع أحمال العمل، قم بتعيين ذاكرة الموارد وحدود وحدة المعالجة المركزية على الحاويات. هذا يطرح أيضا من NodeAllocatable ويساعد المجدول على مستوى المجموعة في تحديد القرون التي سيتم وضعها على العقد. قد تؤدي جدولة الحجيرات بدون حدود إلى الإفراط في توفير عقد Windows وفي الحالات القصوى يمكن أن تتسبب في أن تصبح العقد غير صحية.

اعتبارا من الإصدار 6.4.0-main-02-22-2023-3ee44b9e من حاوية المكون الإضافي Managed Prometheus (prometheus_collector)، تم تمكين مجموعة مقاييس Windows لمجموعات AKS. يتيح الإعداد إلى الوظيفة الإضافية Azure Monitor Metrics لوحدات Windows DaemonSet بدء التشغيل على تجمعات العقد الخاصة بك. يتم دعم كل من Windows Server 2019 وWindows Server 2022. اتبع هذه الخطوات لتمكين pods من جمع المقاييس من تجمعات عقد Windows.

  1. تثبيت مصدر windows يدويا على عقد AKS للوصول إلى مقاييس Windows عن طريق نشر ملف YAML لمصدر windows-daemonset. تمكين المجمعين التاليين:

    • [defaults]
    • container
    • memory
    • process
    • cpu_info

    لمزيد من المجمعين، يرجى مراجعة مصدر Prometheus لمقاييس Windows.

    انشر ملف WINDOWS-exporter-daemonset YAML. لاحظ أنه إذا كان هناك أي تشوهات مطبقة في العقدة، فستحتاج إلى تطبيق التفاوتات المناسبة.

        kubectl apply -f windows-exporter-daemonset.yaml
    
  2. تطبيق ama-metrics-settings-configmap على مجموعتك. windowsexporter قم بتعيين و windowskubeproxy Booleans إلى true. لمزيد من المعلومات، راجع تكوين إعدادات الوظيفة الإضافية للمقاييس.

  3. تمكين قواعد التسجيل المطلوبة للوحات المعلومات الجاهزة:

    • إذا كان الإعداد باستخدام CLI، فضمن الخيار --enable-windows-recording-rules.
    • إذا كان الإعداد باستخدام قالب ARM أو Bicep أو Azure Policy، فقم بتعيين enableWindowsRecordingRules إلى true في ملف المعلمات.
    • إذا تم إعداد نظام المجموعة بالفعل، فاستخدم قالب ARM هذا وملف المعلمة هذا لإنشاء مجموعات القواعد. سيؤدي ذلك إلى إضافة قواعد التسجيل المطلوبة وليس عملية ARM على نظام المجموعة ولا يؤثر على حالة المراقبة الحالية للمجموعة.

تحقق من النشر

استخدم أداة سطر الأوامر kubectl للتحقق من نشر العامل بشكل صحيح.

Prometheus المدار

تحقق من نشر DaemonSet بشكل صحيح على تجمعات عقد Linux

kubectl get ds ama-metrics-node --namespace=kube-system

يجب أن يكون عدد pods مساويا لعدد عقد Linux على نظام المجموعة. يجب أن يشبه الإخراج المثال التالي:

User@aksuser:~$ kubectl get ds ama-metrics-node --namespace=kube-system
NAME               DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-metrics-node   1         1         1       1            1           <none>          10h

تحقق من نشر عقد Windows بشكل صحيح

kubectl get ds ama-metrics-win-node --namespace=kube-system

يجب أن يكون عدد pods مساويا لعدد عقد Windows على نظام المجموعة. يجب أن يشبه الإخراج المثال التالي:

User@aksuser:~$ kubectl get ds ama-metrics-node --namespace=kube-system
NAME                   DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-metrics-win-node   3         3         3       3            3           <none>          10h

تحقق من نشر مجموعتي النسخ المتماثلة ل Prometheus

kubectl get rs --namespace=kube-system

يجب أن يشبه الإخراج المثال التالي:

User@aksuser:~$kubectl get rs --namespace=kube-system
NAME                            DESIRED   CURRENT   READY   AGE
ama-metrics-5c974985b8          1         1         1       11h
ama-metrics-ksm-5fcf8dffcd      1         1         1       11h

نتائج تحليلات الحاوية

تحقق من نشر DaemonSets بشكل صحيح على تجمعات عقد Linux

kubectl get ds ama-logs --namespace=kube-system

يجب أن يكون عدد pods مساويا لعدد عقد Linux على نظام المجموعة. يجب أن يشبه الإخراج المثال التالي:

User@aksuser:~$ kubectl get ds ama-logs --namespace=kube-system
NAME       DESIRED   CURRENT   READY     UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-logs   2         2         2         2            2           <none>          1d

تحقق من نشر عقد Windows بشكل صحيح

kubectl get ds ama-logs-windows --namespace=kube-system

يجب أن يكون عدد pods مساويا لعدد عقد Windows على نظام المجموعة. يجب أن يشبه الإخراج المثال التالي:

User@aksuser:~$ kubectl get ds ama-logs-windows --namespace=kube-system
NAME                   DESIRED   CURRENT   READY     UP-TO-DATE   AVAILABLE   NODE SELECTOR     AGE
ama-logs-windows           2         2         2         2            2       <none>            1d

التحقق من نشر حل نتائج تحليلات الحاوية

kubectl get deployment ama-logs-rs --namespace=kube-system

يجب أن يشبه الإخراج المثال التالي:

User@aksuser:~$ kubectl get deployment ama-logs-rs --namespace=kube-system
NAME          READY   UP-TO-DATE   AVAILABLE   AGE
ama-logs-rs   1/1     1            1           24d

عرض التكوين باستخدام CLI

aks show استخدم الأمر لمعرفة ما إذا كان الحل ممكنا، ومعرف مورد مساحة عمل Log Analytics، ومعلومات موجزة حول نظام المجموعة.

az aks show --resource-group <resourceGroupofAKSCluster> --name <nameofAksCluster>

سيعيد الأمر معلومات بتنسيق JSON حول الحل. addonProfiles يجب أن يتضمن القسم معلومات حول omsagent كما في المثال التالي:

"addonProfiles": {
    "omsagent": {
        "config": {
            "logAnalyticsWorkspaceResourceID": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace",
            "useAADAuth": "true"
        },
        "enabled": true,
        "identity": null
    },
}

الموارد المتوفرة

عند تمكين المراقبة، يتم إنشاء الموارد التالية في اشتراكك:

اسم المورد نوع المورد مجموعة الموارد المنطقة/الموقع ‏‏الوصف
MSCI-<aksclusterregion>-<clustername> قاعدة تجميع البيانات مثل نظام المجموعة نفس مساحة عمل Log Analytics قاعدة تجميع البيانات هذه مخصصة لجمع السجل بواسطة عامل Azure Monitor، الذي يستخدم مساحة عمل Log Analytics كوجهة، ومرتبط بمورد نظام مجموعة AKS.
MSPROM-<aksclusterregion>-<clustername> قاعدة تجميع البيانات مثل نظام المجموعة نفس مساحة عمل Azure Monitor قاعدة جمع البيانات هذه هي لجمع مقاييس prometheus بواسطة addon للمقاييس، والتي تحتوي على مساحة عمل مراقبة Azure المختارة كوجهة، كما أنها مرتبطة بمورد نظام مجموعة AKS
MSPROM-<aksclusterregion>-<clustername> نقطة نهاية تجميع البيانات مثل نظام المجموعة نفس مساحة عمل Azure Monitor يتم استخدام نقطة نهاية جمع البيانات هذه بواسطة قاعدة جمع البيانات أعلاه لاستيعاب مقاييس Prometheus من إضافة المقاييس

عند إنشاء مساحة عمل Azure Monitor جديدة، يتم إنشاء الموارد الإضافية التالية كجزء منها

اسم المورد نوع المورد مجموعة الموارد المنطقة/الموقع ‏‏الوصف
<azuremonitor-workspace-name> قاعدة تجميع البيانات <MA_azuremonitor-workspace-name>_<azuremonitor-workspace-region>_managed نفس مساحة عمل Azure Monitor تم إنشاء DCR عند استخدام خادم OSS Prometheus للكتابة عن بعد إلى مساحة عمل Azure Monitor.
<azuremonitor-workspace-name> نقطة نهاية تجميع البيانات <MA_azuremonitor-workspace-name>_<azuremonitor-workspace-region>_managed نفس مساحة عمل Azure Monitor تم إنشاء DCE عند استخدام خادم OSS Prometheus للكتابة عن بعد إلى مساحة عمل Azure Monitor.

الاختلافات بين مجموعات Windows وLinux

تشمل الاختلافات الرئيسية في مراقبة نظام مجموعة Windows Server مقارنة بنظام مجموعة Linux ما يلي:

  • لا يحتوي Windows على مقياس الذاكرة RSS. ونتيجة لذلك، فإنه غير متوفر لعقد وحاويات Windows. مقياس مجموعة العمل متاح.
  • معلومات سعة تخزين القرص غير متوفرة لعُقد Windows.
  • تتم مراقبة بيئات الحجرة فقط، وليس بيئات Docker.
  • مع إصدار المعاينة، يتم دعم 30 حاوية Windows Server كحدٍ أقصى. لا ينطبق هذا القيد على حاويات Linux.

إشعار

دعم نتائج تحليلات الحاوية لنظام التشغيل Windows Server 2022 قيد المعاينة.

يقوم عامل Linux المضمن في حاويات (مجموعة النسخ المتماثلة) بإجراء استدعاءات واجهة برمجة التطبيقات لجميع عقد Windows على منفذ Kubelet الآمن (10250) داخل نظام المجموعة لجمع المقاييس المتعلقة بأداء العقدة والحاوية. يجب فتح منفذ Kubelet الآمن (:10250) في الشبكة الظاهرية لنظام المجموعة لكل من الوارد والصادر لمجموعة المقاييس المتعلقة بأداء الحاوية وعقدة Windows للعمل.

إذا كان لديك نظام مجموعة Kubernetes مع عقد Windows، فراجع مجموعة أمان الشبكة ونهج الشبكة وقم بتكوينها للتأكد من أن منفذ Kubelet الآمن (:10250) مفتوح لكل من الوارد والصادر في الشبكة الظاهرية لنظام المجموعة.

الخطوات التالية

  • إذا واجهت مشكلات أثناء محاولة إعداد الحل، فراجع دليل استكشاف الأخطاء وإصلاحها.
  • مع تمكين المراقبة لجمع استخدام الموارد والصحة بنظام مجموعة AKS وأحمال العمل التي تعمل عليها، تعرف على كيفية استخدام تفاصيل الحاوية.