Freigeben über


Bereitstellen von Azure IoT-Vorgängen in einem Kubernetes-Cluster mit ARC-Unterstützung

Erfahren Sie, wie Sie Azure IoT Einsatz über das Azure-Portal in einem Kubernetes-Cluster bereitstellen.

In diesem Artikel besprechen wir Azure IoT Einsatz-Bereitstellungen und -Instanzen. Dies sind zwei verschiedene Konzepte:

  • Eine Azure IoT Einsatz-Bereitstellung beschreibt alle Komponenten und Ressourcen, die das Azure IoT Einsatz-Szenario ermöglichen. Zu diesen Komponenten und Ressourcen gehören:

    • Eine Azure IoT Einsatz-Instanz
    • Arc-Erweiterungen
    • Benutzerdefinierte Standorte
    • Ressourcen, die Sie in Ihrer Azure IoT Einsatz-Lösung konfigurieren können, z. B. Ressourcen und Ressourcenendpunkten.
  • Eine Azure IoT Einsatz-Instanz ist die übergeordnete Ressource, die die Suite von Diensten bündelt, die in Was ist Azure IoT Einsatz? definiert werden, wie MQTT-Broker, Datenflüsse und Connector für OPC UA.

Wenn von der Bereitstellung von Azure IoT Einsatz die Rede ist, sind alle Komponenten gemeint, die eine Bereitstellung ausmachen. Sobald die Bereitstellung vorhanden ist, können Sie die Instanzanzeigen, verwalten und aktualisieren.

Voraussetzungen

Cloudressourcen:

Entwicklungsressourcen:

  • Installation der Azure CLI auf Ihrem Entwicklungscomputer. Für dieses Szenario ist mindestens die Version 2.64.0 der Azure CLI erforderlich. Verwenden Sie az --version, um Ihre Version zu überprüfen. Bei Bedarf können Sie sie mithilfe von az upgrade aktualisieren. Weitere Informationen finden Sie unter Installieren der Azure CLI.

  • Die Azure IoT Einsatz-Erweiterung für die Azure CLI. Verwenden Sie den folgenden Befehl, um die Erweiterung hinzuzufügen oder auf die neueste Version zu aktualisieren:

    az extension add --upgrade --name azure-iot-ops
    

Ein Clusterhost:

Bereitstellen

Die Bereitstellungsoberfläche des Azure-Portals ist ein Hilfstool, das einen Bereitstellungsbefehl basierend auf Ihren Ressourcen und der Konfiguration generiert. Der letzte Schritt besteht darin, einen Azure CLI-Befehl auszuführen, daher benötigen Sie weiterhin die im vorherigen Abschnitt beschriebenen Azure CLI-Voraussetzungen.

  1. Suchen Sie im Azure-Portal nach Azure IoT Einsatz, und wählen Sie diese Option aus.

  2. Klicken Sie auf Erstellen.

  3. Geben Sie auf der Registerkarte Grundeinstellungen die folgenden Informationen an:

    Parameter Wert
    Abonnement Wählen Sie das Abonnement aus, das Ihren Arc-fähigen Cluster enthält.
    Ressourcengruppe Wählen Sie die Ressourcengruppe aus, die Ihren Arc-fähigen Cluster enthält.
    Clustername Wählen Sie den Cluster aus, in dem Azure IoT Einsatz bereitgestellt werden soll.
    Name des benutzerdefinierten Standorts Optionaler: Ersetzen Sie den Standardnamen für den benutzerdefinierten Speicherort.

    Screenshot der ersten Registerkarte für die Bereitstellung von Azure IoT Einsatz über das Portal

  4. Klicken Sie auf Weiter: Konfiguration aus.

  5. Geben Sie auf der Registerkarte Konfiguration die folgenden Informationen an:

    Parameter Wert
    Azure IoT Einsatz-Name Optionaler: Ersetzen Sie den Standardnamen für die Azure IoT Einsatz-Instanz.
    MQTT-Brokerkonfiguration Optional: Bearbeiten Sie die Standardeinstellungen für den MQTT-Broker. Im Azure-Portal ist es möglich, Kardinalitäts- und Speicherprofileinstellungen zu konfigurieren. Informationen zum Konfigurieren anderer Einstellungen, einschließlich datenträgergestützter Nachrichtenpuffer und erweiterter MQTT-Clientoptionen, finden Sie unter Azure CLI-Unterstützung für die erweiterte MQTT-Brokerkonfiguration.
    Konfiguration des Datenflussprofils Optional: Bearbeiten Sie die Standardeinstellungen für Datenflüsse. Weitere Informationen finden Sie unter Konfigurieren des Datenflussprofils.

    Screenshot: Die zweite Registerkarte für die Bereitstellung von Azure IoT Einsatz über das Portal

  6. Wählen Sie Weiter: Abhängigkeitsverwaltung aus.

  7. Wählen Sie auf der Registerkarte Abhängigkeitsverwaltung eine vorhandene Schemaregistrierung aus, oder führen Sie die folgenden Schritte aus, um eine zu erstellen:

    1. Wählen Sie Neu erstellen.

    2. Geben Sie einen Schemaregistrierungsnamen und einen Schemaregistrierungs-Namespace an.

    3. Wählen Sie Azure-Speichercontainer auswählen aus.

    4. Wählen Sie ein Speicherkonto aus der Liste der hierarchischen namespacefähigen Konten aus, oder wählen Sie Erstellen aus, um ein Konto zu erstellen.

      Für die Schemaregistrierung ist ein Azure Storage-Konto mit hierarchischem Namespace und aktiviertem Zugriff auf öffentliche Netzwerke erforderlich. Wählen Sie beim Erstellen eines neuen Speicherkontos den Speicherkontotyp Allgemeines Speicherkontos v2 aus, und legen Sie Hierarchischer Namespace auf Aktiviert fest.

    5. Wählen Sie einen Container in Ihrem Speicherkonto aus, oder wählen Sie Container aus, um einen zu erstellen.

    6. Wählen Sie Übernehmen aus, um die Schemaregistrierungskonfigurationen zu bestätigen.

  8. Wählen Sie auf der Registerkarte Abhängigkeitsverwaltung entweder Testeinstellungen oder Sichere Einstellungen als Bereitstellungsoption aus. Wenn Sie nicht sicher sind, welche Option für Ihr Szenario geeignet ist, lesen Sie den Leitfaden in Bereitstellungsdetails > Wählen Sie Ihre Features.

    Führen Sie je nach Ihrer Auswahl die folgenden Schritte aus, um entweder:

Bereitstellen mit Testeinstellungen

Verwenden Sie diese Schritte, wenn Sie auf der Registerkarte Abhängigkeitsverwaltung die Option Testeinstellungen ausgewählt haben.

  1. Wählen Sie Weiter: Automatisierung aus.

  2. Führen Sie die einzelnen Azure CLI-Befehle auf der Registerkarte Automatisierung in einem Terminal aus:

    1. Melden Sie sich interaktiv mit einem Browser bei Azure CLI an, auch wenn Sie sich bereits zuvor angemeldet haben. Wenn Sie sich nicht interaktiv anmelden, wird möglicherweise eine Fehlermeldung angezeigt, die besagt: Ihr Gerät muss für den Zugriff auf Ihre Ressource verwaltet werden.

      az login
      
    2. Installieren Sie die aktuelle CLI-Erweiterung von Azure IoT Einsatz.

      az upgrade
      az extension add --upgrade --name azure-iot-ops
      
    3. Erstellen Sie eine Schemaregistrierung, die von Azure IoT Einsatz-Komponenten verwendet wird. Kopieren Sie den bereitgestellten Befehl az iot ops schema registry create, und führen Sie ihn aus.

      Wenn Sie sich für die Verwendung einer vorhandenen Schemaregistrierung entschieden haben, wird dieser Befehl auf der Registerkarte Automatisierung nicht angezeigt.

    4. Bereiten Sie den Cluster für die Bereitstellung von Azure IoT Einsatz vor. Kopieren Sie den bereitgestellten Befehl az iot ops init, und führen Sie ihn aus.

      Tipp

      Der Befehl init muss nur einmal pro Cluster ausgeführt werden. Wenn Sie einen Cluster wiederverwenden, für den Azure IoT Einsatz Version 0.8.0 bereits bereitgestellt wurde, können Sie diesen Schritt überspringen.

      Wenn Sie die optionalen Vorbereitungsschritte zum Einrichten Ihres eigenen ZS-Ausstellers durchgeführt haben, fügen Sie im Befehl init das --user-trust-Flag hinzu.

      Die Ausführung dieses Befehls kann mehrere Minuten dauern. Sie können den Fortschritt in der Anzeige des Bereitstellungsfortschritts im Terminal verfolgen.

    5. Stellen Sie Azure IoT Einsatz bereit. Kopieren Sie den bereitgestellten Befehl az iot ops create, und führen Sie ihn aus.

      • Wenn Sie die optionalen Voraussetzungen zum Vorbereiten des Clusters für Einblicke befolgt haben, fügen Sie dem Befehl create die folgenden Parameter hinzu:

        Parameter Wert Beschreibung
        --ops-config observability.metrics.openTelemetryCollectorAddress=<FULLNAMEOVERRIDE>.azure-iot-operations.svc.cluster.local:<GRPC_ENDPOINT> Geben Sie die OpenTelemetry (OTel)-Collectoradresse an, die Sie in der Datei „otel-collector-values.yaml“ konfiguriert haben.

        Die in Konfigurieren von Einblicken verwendeten Beispielwerte sind fullnameOverride=aio-otel-collector und grpc.endpoint=4317.
        --ops-config observability.metrics.exportInternalSeconds=<CHECK_INTERVAL> Geben Sie den check_interval-Wert an, den Sie in der Datei „otel-collector-values.yaml“ konfiguriert haben.

        Der Beispielwert, der in Konfigurieren des Einblicksverwendet wird, lautet check_interval=60.
      • Wenn Sie die optionalen Vorbereitungsschritte zum Einrichten Ihres eigenen ZS-Ausstellers durchgeführt haben, fügen Sie im Befehl create die --trust-settings-Parameter hinzu:

        --trust-settings configMapName=<CONFIGMAP_NAME> configMapKey=<CONFIGMAP_KEY_WITH_PUBLICKEY_VALUE> issuerKind=<CLUSTERISSUER_OR_ISSUER> issuerName=<ISSUER_NAME>
        

      Die Ausführung dieses Befehls kann mehrere Minuten dauern. Sie können den Fortschritt in der Bereitstellungsstatusanzeige im Terminal überwachen.

  3. Sobald alle Azure CLI-Befehle erfolgreich abgeschlossen wurden, können Sie den Assistenten zum Installieren von Azure IoT Einsatz schließen.

Sobald der Befehl create erfolgreich abgeschlossen wird, verfügen Sie über eine funktionierende Azure IoT Einsatz-Instanz, die auf Ihrem Cluster ausgeführt wird. An diesem Punkt ist Ihre Instanz für die meisten Test- und Auswertungsszenarien konfiguriert.

Wenn Sie Ihre Instanz in Zukunft auf Produktionsszenarien vorbereiten möchten, führen Sie die Schritte in Aktivieren sicherer Einstellungen in der Bereitstellung von Azure IoT Einsatz (Vorschau) aus

Bereitstellen mit sicheren Einstellungen

Verwenden Sie diese Schritte, wenn Sie auf der Registerkarte Abhängigkeitsverwaltung die Option Sichere Einstellungen ausgewählt haben.

  1. Geben Sie im Abschnitt Bereitstellungsoptionen die folgenden Informationen an:

    Parameter Wert
    Abonnement Wählen Sie das Abonnement mit Ihrer Azure Key Vault-Instanz aus.
    Azure Key Vault Wählen Sie einen Azure Key Vault oder Neu erstellen aus.

    Stellen Sie sicher, dass Ihr Schlüsseltresor über rollenbasierte Zugriffssteuerung von Azure als Berechtigungsmodell verfügt. Um diese Einstellung zu überprüfen, wählen Sie Ausgewählten Tresor verwalten>Einstellungen>Zugriffskonfiguration aus.

    Stellen Sie sicher, dass Sie Ihrem Benutzerkonto Berechtigungen zum Verwalten von geheimen Schlüsseln erteilen mit der Rolle „Key Vault Secrets Officer“.
    Benutzerseitig zugewiesene verwaltete Identität für Geheimnisse Wählen Sie eine Identität aus, oder wählen Sie Neu erstellen aus.
    Benutzerseitig zugewiesene verwaltete Identität für AIO-Komponenten Wählen Sie eine Identität aus, oder wählen Sie Neu erstellen aus. Verwenden Sie nicht dieselbe verwaltete Identität wie diejenige, die Sie für Geheimnisse ausgewählt haben.

    Screenshot: Konfiguration sicherer Einstellungen auf der dritten Registerkarte für die Bereitstellung von Azure IoT Einsatz über das Portal

  2. Wählen Sie Weiter: Automatisierung aus.

  3. Führen Sie die einzelnen Azure CLI-Befehle auf der Registerkarte Automatisierung in einem Terminal aus:

    1. Melden Sie sich interaktiv mit einem Browser bei Azure CLI an, auch wenn Sie sich bereits zuvor angemeldet haben. Wenn Sie sich nicht interaktiv anmelden, wird möglicherweise eine Fehlermeldung angezeigt, die besagt: Ihr Gerät muss für den Zugriff auf Ihre Ressource verwaltet werden, wenn Sie mit dem nächsten Schritt zur Bereitstellung von Azure IoT Operations fortfahren.

      az login
      
    2. Installieren Sie die aktuelle CLI-Erweiterung von Azure IoT Einsatz.

      az upgrade
      az extension add --upgrade --name azure-iot-ops
      
    3. Erstellen Sie eine Schemaregistrierung, die von Azure IoT Einsatz-Komponenten verwendet wird. Kopieren Sie den bereitgestellten Befehl az iot ops schema registry create, und führen Sie ihn aus.

      Wenn Sie sich für die Verwendung einer vorhandenen Schemaregistrierung entschieden haben, wird dieser Befehl auf der Registerkarte Automatisierung nicht angezeigt.

      Hinweis

      Dieser Befehl erfordert, dass Sie über Schreibberechtigungen für Rollenzuweisungen verfügen, weil ihm eine Rolle zugewiesen wird, um Schemaregistrierungszugriff auf das Speicherkonto zu gewähren. Standardmäßig handelt es sich dabei um die integrierte Rolle Storage Blob Data Contributor. Sie können aber auch eine benutzerdefinierte Rolle mit eingeschränkten Berechtigungen erstellen, die Sie stattdessen zuweisen möchten. Weitere Informationen finden Sie unter az iot ops schema registry create.

    4. Bereiten Sie den Cluster für die Bereitstellung von Azure IoT Einsatz vor. Kopieren Sie den bereitgestellten Befehl az iot ops init, und führen Sie ihn aus.

      Tipp

      Der Befehl init muss nur einmal pro Cluster ausgeführt werden. Wenn Sie einen Cluster wiederverwenden, für den Azure IoT Einsatz Version 0.8.0 bereits bereitgestellt wurde, können Sie diesen Schritt überspringen.

      Die Ausführung dieses Befehls kann mehrere Minuten dauern. Sie können den Fortschritt in der Anzeige des Bereitstellungsfortschritts im Terminal verfolgen.

    5. Stellen Sie Azure IoT Einsatz bereit. Kopieren Sie den bereitgestellten Befehl az iot ops create, und führen Sie ihn aus.

      Wenn Sie die optionalen Voraussetzungen zum Vorbereiten des Clusters für Einblicke befolgt haben, fügen Sie dem Befehl create die folgenden optionalen Parameter hinzu:

      Optionaler Parameter: Wert Beschreibung
      --ops-config observability.metrics.openTelemetryCollectorAddress=<FULLNAMEOVERRIDE>.azure-iot-operations.svc.cluster.local:<GRPC_ENDPOINT> Geben Sie die OpenTelemetry (OTel)-Collectoradresse an, die Sie in der Datei „otel-collector-values.yaml“ konfiguriert haben.

      Die in Konfigurieren von Einblicken verwendeten Beispielwerte sind fullnameOverride=aio-otel-collector und grpc.endpoint=4317.
      --ops-config observability.metrics.exportInternalSeconds=<CHECK_INTERVAL> Geben Sie den check_interval-Wert an, den Sie in der Datei „otel-collector-values.yaml“ konfiguriert haben.

      Der Beispielwert, der in Konfigurieren des Einblicksverwendet wird, lautet check_interval=60.

      Die Ausführung dieses Befehls kann mehrere Minuten dauern. Sie können den Fortschritt in der Bereitstellungsstatusanzeige im Terminal überwachen.

    6. Aktivieren Sie die Geheimnissynchronisierung für die bereitgestellte Azure IoT Einsatz-Instanz. Kopieren Sie den bereitgestellten Befehl az iot ops secretsync enable, und führen Sie ihn aus.

      Dieser Befehl:

      • Erstellt Anmeldeinformationen einer Verbundidentität mithilfe der benutzerseitig zugewiesenen verwalteten Identität.
      • Fügt der benutzerseitig zugewiesenen verwalteten Identität eine Rollenzuweisung für den Zugriff auf Azure Key Vault hinzu.
      • Fügt eine minimale Geheimnisanbieterklasse hinzu, die der Azure IoT Einsatz-Instanz zugeordnet ist.
    7. Weisen Sie der bereitgestellten Azure IoT Einsatz-Instanz eine benutzerseitig zugewiesene verwaltete Identität zu. Kopieren Sie den bereitgestellten Befehl az iot ops identity assign, und führen Sie ihn aus.

      Mit diesem Befehl werden Anmeldeinformationen einer Verbundidentität mithilfe des OIDC-Ausstellers des angegebenen verbundenen Clusters und des Azure IoT Einsatz-Dienstkontos erstellt.

  4. Sobald alle Azure CLI-Befehle erfolgreich abgeschlossen wurden, können Sie den Assistenten zum Installieren von Azure IoT Einsatz schließen.

Sobald der Befehl create erfolgreich abgeschlossen wird, verfügen Sie über eine funktionierende Azure IoT Einsatz-Instanz, die auf Ihrem Cluster ausgeführt wird. An diesem Punkt ist Ihre Instanz für Produktionsszenarien konfiguriert.

Überprüfen der Bereitstellung

Nach Abschluss der Bereitstellung können Sie az iot ops check verwenden, um die Bereitstellung des IoT Einsatz-Diensts hinsichtlich Integrität, Konfiguration und Nutzbarkeit zu bewerten. Der Befehl Überprüfen kann Ihnen helfen, Probleme in Ihrer Bereitstellung und Konfiguration zu finden.

az iot ops check

Der Befehl check zeigt eine Warnung zu fehlenden Datenflüssen an. Diese ist normal und erwartbar, bis Sie einen Datenfluss erstellen. Weitere Informationen finden Sie unter Verarbeiten und Weiterleiten von Daten mit Datenflüssen.

Sie können die Konfigurationen von Themenzuordnungen, QoS und Nachrichtenrouten überprüfen, indem Sie im Befehl check den --detail-level 2-Parameter für eine ausführliche Ansicht hinzufügen.

Nächste Schritte

Wenn Ihre Komponenten eine Verbindung zu Azure-Endpunkten wie SQL oder Fabric herstellen müssen, erfahren Sie mehr über die Verwaltung von Geheimnissen für Ihren Azure IoT-Einsatz.