Erste Schritte: Konfigurieren der Einblicke mit einem Skript in Azure IoT Einsatz (Preview)
Wichtig
Die von Azure Arc unterstützte Vorschauversion von „Azure IoT Einsatz“ befindet sich derzeit in der Vorschauphase. Sie sollten diese Vorschausoftware nicht in Produktionsumgebungen verwenden.
Sie müssen eine neue Installation von Azure IoT Einsatz bereitstellen, wenn ein allgemein verfügbares Release verfügbar wird. Sie werden kein Upgrade für eine Preview-Installation durchführen können.
Die zusätzlichen Nutzungsbestimmungen für Microsoft Azure-Vorschauen enthalten rechtliche Bedingungen. Sie gelten für diejenigen Azure-Features, die sich in der Beta- oder Vorschauversion befinden oder aber anderweitig noch nicht zur allgemeinen Verfügbarkeit freigegeben sind.
Observability bietet Einblick in jede Ebene Ihrer Azure IoT Operations-Konfiguration. Sie erhalten Einblicke in das tatsächliche Verhalten von Problemen, wodurch die Effektivität des Zuverlässigkeits-Engineerings von Standorten erhöht wird. Azure IoT Operations bietet Observability über benutzerdefinierte kuratierte Grafana-Dashboards, die in Azure gehostet werden. Diese Dashboards werden von dem Azure Monitor verwalteter Dienst für Prometheus und von Container Insights unterstützt. In diesem Artikel erfahren Sie, wie Sie die Dienste konfigurieren, die Sie für den Einblick benötigen.
Voraussetzungen
- Azure IoT-Einsatzvorschau ist installiert. Weitere Informationen finden Sie in der Schnellstartanleitung: Ausführen der Azure IoT Operations Preview in Github Codespaces mit K3s.
- Git zum Klonen des Repositorys.
Konfigurieren Ihres Abonnements
Führen Sie den folgenden Code aus, um Anbieter für das Abonnement zu registrieren, in dem sich Ihr Cluster befindet.
Hinweis
Dieser Schritt muss nur einmal pro Abonnement durchgeführt werden. Zum Registrieren von Ressourcenanbietern benötigen Sie die Berechtigung zum Ausführen des /register/action
-Vorgangs, welche in den Rollen „Mitwirkender“ und „Besitzer“ des Abonnements enthalten ist. Weitere Informationen finden Sie unter Azure-Ressourcenanbieter und -typen.
az account set -s <subscription-id>
az provider register -n "Microsoft.Insights"
az provider register -n "Microsoft.AlertsManagement"
Observability-Komponenten installieren
Die Schritte in diesem Abschnitt installieren freigegebene Überwachungsressourcen und konfigurieren Ihren Arc-aktivierten Cluster, um Observability-Signale an diese Ressourcen zu senden. Zu den freigegebenen Überwachungsressourcen gehören Azure Managed Grafana, Azure Monitor Workspace, Azure Managed Prometheus, Azure Log Analytics und Container Insights.
Gehen Sie in Ihrer Konsole zu dem lokalen Ordner, in den Sie das Azure IoT Operations Repo klonen möchten:
Hinweis
Das Repository enthält die Bereitstellungsdefinition von Azure IoT Operations und Beispiele, die die in diesem Artikel verwendeten Beispieldashboards enthalten.
Klonen Sie das Repository mithilfe des folgenden Befehls auf Ihren lokalen Computer:
git clone https://github.com/Azure/azure-iot-operations.git
Browsen Sie in Ihrer lokalen Kopie des Repositorys zum folgenden Pfad:
azure-iot-operations\tools\setup-3p-obs-infra
Führen Sie den folgenden Befehl aus, um die Einblick-Komponenten bereitzustellen. Verwenden Sie die Abonnement-ID und Ressourcengruppe Ihres Arc-fähigen Clusters, den Sie überwachen möchten.
Hinweis
Weitere optionale Parameter, die Sie festlegen können, finden Sie in der Bicep-Datei. Die optionalen Parameter können Elemente wie alternative Speicherorte für Clusterressourcen angeben.
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
Der vorherige Befehl gewährt dem Benutzer, der ihn ausführt, Administratorzugriff für die neu erstellte Grafana-Instanz. Wenn dieser Zugriff nicht ihren Vorstellungen entspricht, führen Sie stattdessen den folgenden Befehl aus. Sie müssen Berechtigungen manuell einrichten, bevor jeder auf die Grafana-Instanz zugreifen kann.
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
Um Berechtigungen manuell einzurichten, fügen Sie der Grafana-Instanz eine Rollenzuweisung für alle Benutzer hinzu, die Zugriff haben sollen. Weisen Sie je nach gewünschter Zugriffsebene eine der Grafana-Rollen (Grafana Admin, Grafana Editor, Grafana Viewer) zu.
Wenn die Bereitstellung erfolgreich ist, werden am Ende der Befehlsausgabe einige Informationen gedruckt. Die Informationen umfassen die Grafana-URL und die Ressourcen-IDs für die erstellten Log Analytics- und Azure Monitor-Ressourcen. Mit der Grafana-URL können Sie zu der Grafana-Instanz gehen, die Sie in Bereitstellen von Dashboards für Grafana konfigurieren. Mit den beiden Ressourcen-IDs können Sie andere Arc-aktivierte Cluster konfigurieren, indem Sie die Schritte unter Hinzufügen eines Arc-fähigen Clusters zu einer vorhandenen Observability-Infrastrukturausführen.
Konfigurieren der Prometheus-Metriksammlung
Kopieren Sie die folgende Konfiguration, und fügen Sie sie in eine neue Datei mit dem Namen ama-metrics-prometheus-config.yaml ein, und speichern Sie die Datei.
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
Führen Sie den folgenden Befehl aus, um die von Ihnen erstellte Konfigurationsdatei anzuwenden:
kubectl apply -f ama-metrics-prometheus-config.yaml
Bereitstellen von Dashboards in Grafana
Azure IoT Operations bietet eine Sammlung von Dashboards, die Ihnen viele der Visualisierungen bieten, die Sie benötigen, um die Integrität und Leistung Ihrer Azure IoT Operations-Bereitstellung zu verstehen.
Führen Sie die folgenden Schritte aus, um die von Azure IoT Operations kuratierten Grafana-Dashboards zu installieren.
Melden Sie sich bei der Grafana-Konsole an, und wählen Sie dann im oberen rechten Bereich der Grafana-Anwendung das + Symbol aus.
Wählen Sie Dashboard importieren aus, und folgen Sie den Anweisungen, um zu dem samples\grafana-dashboards -Pfad in Ihrer lokalen geklonten Kopie des Repositorys zu navigieren, und wählen Sie eine JSON-Dashboarddatei aus
Wenn die Anwendung dazu auffordert, wählen Sie Ihre verwaltete Prometheus-Datenquelle aus.
Wählen Sie Importieren aus