بدء الاستخدام: تكوين إمكانية المراقبة في Azure IoT Operations Preview

هام

معاينة عمليات Azure IoT - التي تم تمكينها بواسطة Azure Arc قيد المعاينة حاليا. يجب عدم استخدام برنامج المعاينة هذا في بيئات الإنتاج.

للحصول على الشروط القانونية التي تنطبق على ميزات Azure الموجودة في الإصدار التجريبي، أو المعاينة، أو التي لم يتم إصدارها بعد في التوفر العام، راجع شروط الاستخدام التكميلية لمعاينات Microsoft Azure.

توفر إمكانية المراقبة إمكانية الرؤية في كل طبقة من تكوين عمليات Azure IoT. فهو يمنحك نظرة ثاقبة على السلوك الفعلي للمشكلات، ما يزيد من فعالية هندسة موثوقية الموقع. توفر عمليات Azure IoT إمكانية المراقبة من خلال لوحات معلومات Grafana المنسقة المخصصة المستضافة في Azure. يتم تشغيل لوحات المعلومات هذه بواسطة خدمة Azure Monitor المدارة ل Prometheus و Container Insights. توضح لك هذه المقالة كيفية تكوين الخدمات التي تحتاجها لقابلية الملاحظة.

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

تكوين اشتراكك

قم بتشغيل التعليمات البرمجية التالية لتسجيل موفري الاشتراك حيث يوجد نظام المجموعة الخاص بك:

az account set -s <subscription-id>
az provider register -n "Microsoft.Insights"
az provider register -n "Microsoft.AlertsManagement"

تثبيت مكونات إمكانية المراقبة

تقوم الخطوات الواردة في هذا القسم بتثبيت موارد المراقبة المشتركة وتكوين نظام المجموعة الممكن بواسطة Arc لإرسال إشارات إمكانية المراقبة إلى هذه الموارد. تتضمن موارد المراقبة المشتركة Azure Managed Grafana ومساحة عمل Azure Monitor وAzure Managed Prometheus وAzure Log Analytics و Container Insights.

  1. في وحدة التحكم الخاصة بك، انتقل إلى مجلد محلي حيث تريد استنساخ مستودع عمليات Azure IoT:

    إشعار

    يحتوي المستودع على تعريف النشر لعمليات Azure IoT والعينات التي تتضمن نماذج لوحات المعلومات المستخدمة في هذه المقالة.

  2. استنساخ المستودع إلى جهازك المحلي، باستخدام الأمر التالي:

    git clone https://github.com/Azure/azure-iot-operations.git
    
  3. انتقل إلى المسار التالي في النسخة المحلية من المستودع:

    azure-iot-operations\tools\setup-3p-obs-infra

  4. لنشر مكونات إمكانية المراقبة، قم بتشغيل الأمر التالي. استخدم معرف الاشتراك ومجموعة الموارد للمجموعة التي تدعم Arc التي تريد مراقبتها.

    إشعار

    لاكتشاف معلمات اختيارية أخرى يمكنك تعيينها، راجع ملف bicep. يمكن للمعلمات الاختيارية تحديد أشياء مثل المواقع البديلة لموارد نظام المجموعة.

    az deployment group create \
          --subscription <subscription-id> \
          --resource-group <cluster-resource-group> \
          --template-file observability-full.bicep \
          --parameters grafanaAdminId=$(az ad user show --id $(az account show --query user.name --output tsv) --query=id --output tsv) \
                        clusterName=<cluster-name> \
                        sharedResourceGroup=<shared-resource-group> \
                        sharedResourceLocation=<shared-resource-location> \
          --query=properties.outputs
    

    يمنح الأمر السابق وصول المسؤول لمثيل Grafana الذي تم إنشاؤه حديثا للمستخدم الذي يقوم بتشغيله. إذا لم يكن هذا الوصول هو ما تريده، فقم بتشغيل الأمر التالي بدلا من ذلك. تحتاج إلى إعداد الأذونات يدويا قبل أن يتمكن أي شخص من الوصول إلى مثيل Grafana.

    az deployment group create \
        --subscription <subscription-id> \
        --resource-group <cluster-resource-group> \
        --template-file observability-full.bicep \
        --parameters clusterName=<cluster-name> \
                      sharedResourceGroup=<shared-resource-group> \
                      sharedResourceLocation=<shared-resource-location> \
        --query=properties.outputs
    

    لإعداد الأذونات يدويا، أضف تعيين دور إلى مثيل Grafana لأي مستخدمين يجب أن يكون لديهم حق الوصول. تعيين أحد أدوار Grafana (Grafana مسؤول، محرر Grafana، Grafana Viewer) اعتمادا على مستوى الوصول المطلوب.

إذا نجح النشر، تتم طباعة بعض أجزاء المعلومات في نهاية إخراج الأمر. تتضمن المعلومات عنوان URL ل Grafana ومعرفات الموارد لكل من موارد Log Analytics وAzure Monitor التي تم إنشاؤها. يسمح لك عنوان URL ل Grafana بالانتقال إلى مثيل Grafana الذي تقوم بتكوينه في نشر لوحات المعلومات إلى Grafana. تمكنك معرفات المورد من تكوين مجموعات أخرى ممكنة بواسطة Arc باتباع الخطوات الواردة في إضافة نظام مجموعة ممكن بواسطة Arc إلى البنية الأساسية الحالية لقابلية المراقبة.

تكوين مجموعة مقاييس Prometheus

  1. انسخ التكوين التالي والصقه في ملف جديد يسمى ama-metrics-prometheus-config.yaml، واحفظ الملف:

    apiVersion: v1
    data:
      prometheus-config: |2-
            scrape_configs:
            - job_name: e4k
              scrape_interval: 1m
              static_configs:
              - targets:
                - aio-mq-diagnostics-service.azure-iot-operations.svc.cluster.local:9600
            - job_name: nats
              scrape_interval: 1m
              static_configs:
              - targets:
                - aio-dp-msg-store-0.aio-dp-msg-store-headless.azure-iot-operations.svc.cluster.local:7777
            - job_name: otel
              scrape_interval: 1m
              static_configs:
              - targets:
                - aio-otel-collector.azure-iot-operations.svc.cluster.local:8889
            - job_name: aio-annotated-pod-metrics
              kubernetes_sd_configs:
              - role: pod
              relabel_configs:
              - action: drop
                regex: true
                source_labels:
                - __meta_kubernetes_pod_container_init
              - action: keep
                regex: true
                source_labels:
                - __meta_kubernetes_pod_annotation_prometheus_io_scrape
              - action: replace
                regex: ([^:]+)(?::\\d+)?;(\\d+)
                replacement: $1:$2
                source_labels:
                - __address__
                - __meta_kubernetes_pod_annotation_prometheus_io_port
                target_label: __address__
              - action: replace
                source_labels:
                - __meta_kubernetes_namespace
                target_label: kubernetes_namespace
              - action: keep
                regex: 'azure-iot-operations'
                source_labels:
                - kubernetes_namespace
              scrape_interval: 1m
    kind: ConfigMap
    metadata:
      name: ama-metrics-prometheus-config
      namespace: kube-system
    
  2. لتطبيق ملف التكوين الذي أنشأته، قم بتشغيل الأمر التالي:

    kubectl apply -f ama-metrics-prometheus-config.yaml

نشر لوحات المعلومات إلى Grafana

توفر عمليات Azure IoT مجموعة من لوحات المعلومات المصممة لمنحك العديد من المرئيات التي تحتاجها لفهم صحة وأداء توزيع عمليات Azure IoT.

أكمل الخطوات التالية لتثبيت لوحات معلومات Grafana المنسقة لعمليات Azure IoT.

  1. سجل الدخول إلى وحدة تحكم Grafana، ثم في المنطقة العلوية اليسرى من تطبيق Grafana، حدد الأيقونة +

  2. حدد Import dashboard، واتبع المطالبات للاستعراض وصولا إلى مسار samples\grafana-dashboards في النسخة المحلية المستنسخة من المستودع، وحدد ملف لوحة معلومات JSON

  3. عند مطالبة التطبيق، حدد مصدر بيانات Prometheus المدار

  4. حدد استيراد.