Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wichtig
Diese Seite enthält Anweisungen zum Verwalten von Azure IoT Operations-Komponenten mithilfe von Kubernetes-Bereitstellungsmanifesten, die sich in der Vorschau befinden. Dieses Feature ist mit mehreren Einschränkungen versehen und sollte nicht für Produktionsworkloads verwendet werden.
Lesen Sie die ergänzenden Nutzungsbedingungen für Microsoft Azure Previews für rechtliche Bestimmungen, die für Azure-Features gelten, die sich in Der Betaversion, Vorschau oder auf andere Weise noch nicht in der allgemeinen Verfügbarkeit befinden.
MQTT-Datenflussendpunkte werden für MQTT-Quellen und -Ziele verwendet. Sie können die Endpunkteinstellungen, Transport Layer Security (TLS), die Authentifizierung und andere Einstellungen konfigurieren.
Voraussetzungen
- Eine Instanz von Azure IoT Operations
Lokaler MQTT-Broker für Azure IoT Einsatz
Azure IoT Operations bietet einen integrierten lokalen MQTT-Broker , den Sie mit Datenflüssen verwenden können. Sie können den MQTT-Broker als Quelle verwenden, um Nachrichten von anderen Systemen zu empfangen, oder als Ziel, um Nachrichten an andere Systeme zu senden.
Standardendpunkt
Wenn Sie Azure IoT Einsatz bereitstellen, wird ein MQTT-Broker-Datenflussendpunkt namens „Standard“ mit Standardeinstellungen erstellt. Sie können diesen Endpunkt als Quelle oder Ziel für Datenflüsse verwenden.
Wichtig
Sie müssen in jedem Datenfluss den Standardendpunkt oder einen mit denselben Einstellungen verwenden. Dies kann die Quelle, das Ziel oder beides sein. Weitere Informationen finden Sie unter Datenflüsse, die den lokalen MQTT-Broker-Endpunkt verwenden müssen.
Der Standardendpunkt verwendet die folgenden Einstellungen:
- Host:
aio-broker:18883
über den Listener des MQTT-Standardbrokers - Authentifizierung: Dienstkontotoken (SAT) über die standardmäßige BrokerAuthentication-Ressource
- TLS: Aktiviert
- Vertrauenswürdiges Zertifizierungsstellenzertifikat: Das standardmäßige Zertifizierungsstellenzertifikat
azure-iot-operations-aio-ca-trust-bundle
der standardmäßigen Stammzertifizierungsstelle
Achtung
Löschen Sie den Standardendpunkt nicht. Wenn Sie den Standardendpunkt löschen, müssen Sie ihn mit denselben Einstellungen neu erstellen.
So zeigen Sie die Einstellungen für den standardmäßigen MQTT-Broker-Endpunkt an oder bearbeiten sie
Wählen Sie in der Betriebsumgebung die Datenflussendpunkte aus.
Wählen Sie den Standardendpunkt aus, um die Einstellungen anzuzeigen oder zu bearbeiten.
Erstellen eines neuen Endpunkts
Sie können auch neue lokale MQTT-Brokerendpunkte mit benutzerdefinierten Einstellungen erstellen. Sie können beispielsweise einen neuen MQTT-Brokerendpunkt mit einem anderen Port, einer anderen Authentifizierung oder anderen Autorisierungseinstellungen erstellen. Sie müssen den Standardendpunkt jedoch immer als Quelle oder Ziel in jedem Datenfluss verwenden, auch wenn Sie neue Endpunkte erstellen.
Wählen Sie in der Betriebsumgebung die Datenflussendpunkte aus.
Wählen Sie unter "Neuen Datenflussendpunkt erstellen" die Option "Azure IoT Operations Local MQTT>New" aus.
Geben Sie die folgenden Einstellungen für den Endpunkt ein:
Einstellung BESCHREIBUNG Name Der Name des Datenflussendpunkts. Gastgeber Der Hostname und Port des MQTT-Brokers. Verwenden Sie das Format: <hostname>:<port>
.Authentifizierungsmethode Die für die Authentifizierung verwendete Methode. Auswählen des Dienstkontotokens oder des X509-Zertifikats Dienstzielgruppe Die Zielgruppe für das Dienstkontotoken. Erforderlich, wenn Sie das Dienstkontotoken verwenden. X509-Clientzertifikat Das für die Authentifizierung verwendete X.509-Clientzertifikat. Erforderlich bei Verwendung des X509-Zertifikats. Sie können mehrzeilige Branchenstandard-X509-Zertifikate hochladen, die die Verwaltung der Geräteauthentifizierung, Sicherheit und Flexibilität verbessern. X509-Clientschlüssel Der private Schlüssel, der dem X.509-Clientzertifikat entspricht. Erforderlich bei Verwendung des X509-Zertifikats. X509-Zwischenzertifikate Die Zwischenzertifikate für die X.509-Clientzertifikatkette. Erforderlich bei Verwendung des X509-Zertifikats.
Azure-Ereignisraster
Azure Event Grid bietet einen vollständig verwalteten MQTT-Broker , der mit Azure IoT Operations-Datenflüssen arbeitet. Zum Konfigurieren eines Azure Event Grid-Endpunkts für den MQTT-Broker empfehlen wir Ihnen die Verwendung einer verwaltete Identität für die Authentifizierung.
Konfigurieren des Event Grid-Namespace
Falls noch nicht geschehen, erstellen Sie zuerst den Event Grid-Namespace .
Aktivieren von MQTT
Wenn Sie über einen Event Grid-Namespace verfügen, wechseln Sie zu "Konfiguration ", und überprüfen Sie Folgendes:
- MQTT aktivieren: Aktivieren Sie das Kontrollkästchen.
- Maximale Clientsitzungen pro Authentifizierungsname: Auf 3 oder mehr festlegen.
Die Option für maximale Clientsitzungen ist wichtig, damit Datenflüsse hochskaliert werden und trotzdem eine Verbindung herstellen können. Weitere Informationen finden Sie unter Multisitzungsunterstützung für Event Grid MQTT.
Erstellen eines Themenbereichs
Damit Datenflüsse Nachrichten an den Event Grid-MQTT-Broker senden oder von ihm empfangen können, müssen Sie mindestens einen Themenbereich im Event Grid-Namespace erstellen. Sie können einen Themenbereich im Event Grid-Namespace erstellen, indem Sie Themenplätze>"Neuer Themenbereich" auswählen.
Für einen schnellen Einstieg und zum Testen können Sie einen Themenbereich mit dem Platzhalterthema #
als Themenvorlage erstellen.
Zuweisen von Berechtigungen zur verwalteten Identität
Für das Konfigurieren eines Datenflussendpunkts für den MQTT-Broker von Event Grid wird eine benutzerseitig zugewiesene oder systemseitig zugewiesene verwaltete Identität empfohlen. Dieser Ansatz ist sicher und beseitigt die Notwendigkeit der manuellen Verwaltung von Anmeldeinformationen.
Nachdem der Themenbereich erstellt wurden, müssen Sie der verwalteten Identität von Azure IoT Einsatz eine Rolle zuweisen, die die Berechtigung zum Senden oder Empfangen von Nachrichten vom oder an den MQTT-Broker von Event Grid gewährt.
Wenn Sie die vom System zugewiesene verwaltete Identität verwenden, wechseln Sie im Azure-Portal zu Ihrer Azure IoT Operations-Instanz, und wählen Sie "Übersicht" aus. Kopieren Sie den Namen der Erweiterung, die nach der Azure IoT Operations Arc-Erweiterung aufgeführt ist. Beispiel: azure-iot-operations-xxxx7. Ihre systemseitig zugewiesene verwaltete Identität hat denselben Namen wie die Arc-Erweiterung von Azure IoT Einsatz.
Wechseln Sie dann zum Event Grid-Namespace >Access Control (IAM)>Rollenzuweisung hinzufügen.
- Wählen Sie auf der Registerkarte " Rolle " eine entsprechende Rolle wie
EventGrid TopicSpaces Publisher
oderEventGrid TopicSpaces Subscriber
. Dadurch erhält die verwaltete Identität die erforderlichen Berechtigungen zum Senden oder Empfangen von Nachrichten für alle Themenbereiche im Namespace. Weitere Informationen finden Sie unter Microsoft Entra JWT-Authentifizierung und Azure RBAC-Autorisierung zum Veröffentlichen oder Abonnieren von MQTT-Nachrichten. - Auf der Registerkarte Mitglieder:
- Wenn Sie eine vom System zugewiesene verwaltete Identität verwenden, wählen Sie unter Zugriff zuweisen die Option Benutzer, Gruppe oder Dienstprinzipal aus, wählen Sie + Mitglieder auswählen und suchen Sie nach dem Namen der Azure IoT Operations Arc-Erweiterung.
- Wenn Sie die vom Benutzer zugewiesene verwaltete Identität verwenden, wählen Sie für „Zugriff zuweisen“ die Option „Verwaltete Identität“ aus, klicken Sie dann auf „Mitglieder auswählen“ und suchen Sie nach Ihrer vom Benutzer zugewiesenen verwalteten Identität, die für Cloudverbindungen eingerichtet wurde.
Alternativ können Sie die Rolle auf Themenbereichsebene zuweisen. Wechseln Sie zum Themenbereich >Zugriffskontrolle (IAM)>Rollenzuweisung hinzufügen. Weisen Sie die verwaltete Identität mit einer geeigneten Rolle wie EventGrid TopicSpaces Publisher
oder EventGrid TopicSpaces Subscriber
zu. Dadurch erhält die verwaltete Identität die erforderlichen Berechtigungen zum Senden oder Empfangen von Nachrichten für den jeweiligen Themenbereich.
Hinweis
Eine zweite Bereitstellung mit derselben Datenflusskonfiguration kann keine Verbindung herstellen und führt zu einem Autorisierungsfehler. Um dieses Problem zu beheben, ändern Sie den Namen des Datenflusses in der zweiten Konfiguration. Dieses Problem tritt nur auf, wenn die zweite Bereitstellung gleichzeitig mit der ersten Bereitstellung oder kurz danach auftritt, bis die MQTT-Sitzung abläuft.
Erstellen eines Datenflussendpunkts für den Event Grid-MQTT-Broker
Nachdem der Event Grid-Namespace konfiguriert wurde, können Sie nun einen Datenflussendpunkt für den Event Grid-MQTT-Broker erstellen.
Wählen Sie in der Betriebsumgebung die Registerkarte "Datenflussendpunkte" aus .
Wählen Sie unter "Neuen Datenflussendpunkt erstellen" die Option "Azure Event Grid MQTT>Neu" aus.
Geben Sie die folgenden Einstellungen für den Endpunkt ein:
Einstellung BESCHREIBUNG Name Der Name des Datenflussendpunkts. Gastgeber Der Hostname und Port des Event Grid-MQTT-Brokers. Verwenden Sie das Format: <NAMESPACE>.<REGION>-1.ts.eventgrid.azure.net:8883
.Authentifizierungsmethode Die für die Authentifizierung verwendete Methode. Es wird empfohlen, die vom System zugewiesene verwaltete Identität oder die vom Benutzer zugewiesene verwaltete Identität auszuwählen. Wählen Sie Übernehmen aus, um den Endpunkt bereitzustellen.
Nachdem der Endpunkt erstellt wurde, können Sie ihn in einem Datenfluss verwenden, um eine Verbindung mit dem Event Grid-MQTT-Broker als Quelle oder Ziel herzustellen. Die MQTT-Themen werden im Datenfluss konfiguriert.
Verwenden der X.509-Zertifikatauthentifizierung mit Event Grid
Wenn Sie die X.509-Authentifizierung mit einem Event Grid MQTT-Broker verwenden, wechseln Sie zur Event Grid-Namespacekonfiguration>, und überprüfen Sie die folgenden Einstellungen:
- MQTT aktivieren: Aktivieren Sie das Kontrollkästchen.
- Alternative Clientauthentifizierungsnamenquellen aktivieren: Aktivieren Sie das Kontrollkästchen.
- Zertifikatsbetreffname: Wählen Sie diese Option in der Dropdownliste aus.
- Maximale Clientsitzungen pro Authentifizierungsname: Auf 3 oder mehr festlegen.
Mit den Optionen für die alternative Clientauthentifizierung und die maximalen Clientsitzungen können Datenflüsse zur Authentifizierung den Antragstellernamen für das Clientzertifikat anstelle von MQTT CONNECT Username
verwenden. Diese Funktion ist wichtig, damit Datenflüsse mehrere Instanzen erzeugen und weiterhin eine Verbindung herstellen können. Weitere Informationen finden Sie unter Event Grid MQTT-Clientzertifikatauthentifizierung und Mehrsitzungsunterstützung.
Führen Sie dann die Schritte in X.509-Zertifikat aus, um den Endpunkt mit den X.509-Zertifikateinstellungen zu konfigurieren.
Einschränkung des gemeinsamen Event Grid-Abonnements
Der Azure Event Grid-MQTT-Broker unterstützt keine gemeinsamen Abonnements. Das bedeutet, dass Sie instanceCount
im Datenflussprofil nicht auf mehr als 1
festlegen können, wenn Event Grid als Quelle (von der der Datenfluss Nachrichten abonniert) für einen Datenfluss verwendet wird. In diesem Fall kann der Datenfluss nicht gestartet werden, wenn Sie instanceCount
auf einen Wert größer als 1
festlegen.
Benutzerdefinierte MQTT-Broker
Bei anderen MQTT-Brokern können Sie den Endpunkt, TLS, die Authentifizierung und weitere Einstellungen nach Bedarf konfigurieren.
Wählen Sie in der Betriebsumgebung die Registerkarte "Datenflussendpunkte" aus .
Wählen Sie unter "Neuen Datenflussendpunkt erstellen" die Option "Custom MQTT Broker>New" aus.
Geben Sie die folgenden Einstellungen für den Endpunkt ein:
Einstellung BESCHREIBUNG Name Der Name des Datenflussendpunkts Gastgeber Der Hostname des MQTT-Brokerendpunkts im Format <hostname>.<port>
.Authentifizierungsmethode Die für die Authentifizierung verwendete Methode. Wählen Sie das Dienstkontotoken oder das X509-Zertifikat aus. Dienstzielgruppe Die Zielgruppe für das Dienstkontotoken. Erforderlich, wenn Sie das Dienstkontotoken verwenden. X509-Clientzertifikat Das für die Authentifizierung verwendete X.509-Clientzertifikat. Erforderlich bei Verwendung des X509-Zertifikats. Sie können mehrzeilige Branchenstandard-X509-Zertifikate hochladen, die die Verwaltung der Geräteauthentifizierung, Sicherheit und Flexibilität verbessern. X509-Clientschlüssel Der private Schlüssel, der dem X.509-Clientzertifikat entspricht. Erforderlich bei Verwendung des X509-Zertifikats. X509-Zwischenzertifikate Die Zwischenzertifikate für die X.509-Clientzertifikatkette. Erforderlich bei Verwendung des X509-Zertifikats. Wählen Sie Übernehmen aus, um den Endpunkt bereitzustellen.
Weitere Informationen zum Anpassen der MQTT-Endpunkteinstellungen finden Sie in den folgenden Abschnitten.
Verfügbare Authentifizierungsmethoden
Die folgenden Authentifizierungsmethoden sind für Datenflussendpunkte des MQTT-Brokers verfügbar.
Systemseitig zugewiesene verwaltete Identität
Bevor Sie den Datenflussendpunkt konfigurieren, weisen Sie der verwalteten Identität von Azure IoT Einsatz eine Rolle mit der Berechtigung zum Herstellen einer Verbindung mit dem MQTT-Broker zu:
- Wechseln Sie im Azure-Portal zu Ihrer Azure IoT Operations-Instanz, und wählen Sie "Übersicht" aus.
- Kopieren Sie den Namen der Erweiterung, die nach der Azure IoT Operations Arc-Erweiterung aufgeführt ist. Beispiel: azure-iot-operations-xxxx7.
- Wechseln Sie zu der Cloudressource, der Sie Berechtigungen zuweisen möchten. Wechseln Sie z. B. zum Event Grid-Namespace Zugriffskontrolle >(IAM)>Rollenzuweisung hinzufügen.
- Wählen Sie auf der Registerkarte " Rolle " eine entsprechende Rolle aus.
- Wählen Sie auf der Registerkarte "Mitglieder" für "Zugriff zuweisen an" die Option "Benutzer, Gruppe oder Dienstprinzipal" aus, wählen Sie dann "+Mitglieder auswählen" aus, und suchen Sie nach der verwalteten Identität von Azure IoT Operations. Beispiel: azure-iot-operations-xxxx7.
Konfigurieren Sie dann den Datenflussendpunkt mit den Einstellungen der systemseitig zugewiesenen verwalteten Identität.
Wählen Sie auf der Seite „Einstellungen“ für den Datenflussendpunkt auf der Einsatz-Benutzeroberfläche die Registerkarte Allgemeine Informationen und dann Authentifizierungsmethode>Systemseitig zugewiesene verwaltete Identität aus.
Benutzerseitig zugewiesene verwaltete Identität
Um eine benutzerseitig zugewiesene verwaltete Identität für die Authentifizierung zu verwenden, müssen Sie zuerst Azure IoT Einsatz mit aktivierten sicheren Einstellungen bereitstellen. Anschließend müssen Sie eine vom Benutzer zugewiesene verwaltete Identität für Cloudverbindungen einrichten. Weitere Informationen finden Sie unter Aktivieren sicherer Einstellungen in der Azure IoT Operations-Bereitstellung.
Bevor Sie den Datenflussendpunkt konfigurieren, weisen Sie der benutzerseitig zugewiesenen verwalteten Identität eine Rolle mit der Berechtigung zum Herstellen einer Verbindung mit dem MQTT-Broker zu:
- Navigieren Sie im Azure-Portal zu der Cloudressource, der Sie Berechtigungen zuweisen möchten. Wechseln Sie z. B. zum Event Grid-Namespace Zugriffskontrolle >(IAM)>Rollenzuweisung hinzufügen.
- Wählen Sie auf der Registerkarte " Rolle " eine entsprechende Rolle aus.
- Wählen Sie auf der Registerkarte " Mitglieder " für " Zugriff zuweisen" die Option "Verwaltete Identität " und dann "Mitglieder auswählen " aus, und suchen Sie nach Ihrer vom Benutzer zugewiesenen verwalteten Identität.
Konfigurieren Sie danach den Datenflussendpunkt mit den Einstellungen der benutzerseitig zugewiesenen verwalteten Identität.
Wählen Sie auf der Seite "Einstellungen für den Datenfluss von Betriebserfahrungsendpunkten" die Registerkarte "Standard" und dann "Authentifizierungsmethode>vom Benutzer zugewiesene verwaltete Identität" aus.
Kubernetes Dienstkontotoken (Service Account Token, SAT)
Um ein Kubernetes-Dienstkontotoken (Service Account Token, SAT) für die Authentifizierung zu verwenden, müssen Sie kein Geheimnis erstellen. SAT wird verwendet, um sich mit dem MQTT-Broker zu authentifizieren, wenn die Zielgruppe übereinstimmt.
Wählen Sie auf der Seite "Einstellungen für den Operations Experience Datenflussendpunkt" die Registerkarte "Einfach" und dann die Authentifizierungsmethode>Dienstkontotoken aus.
Geben Sie die Dienstzielgruppe ein.
X.509-Zertifikat
Viele MQTT Vermittler, z. B. Event Grid unterstützen die X.509-Authentifizierung. Datenflüsse können ein X.509-Clientzertifikat präsentieren und die TLS-Kommunikation aushandeln.
Das Zertifikat und der private Schlüssel müssen im PEM-Format vorliegen und dürfen nicht kennwortgeschützt sein.
Tipp
Das PEM-Format ist ein gängiges Format für Zertifikate und Schlüssel. Zertifikate und Schlüssel im PEM-Format sind Base64-codierte ASCII-Dateien mit Headern wie -----BEGIN CERTIFICATE-----
und -----BEGIN EC PRIVATE KEY----
Wenn Sie über ein Zertifikat in einem anderen Format verfügen, können Sie es mithilfe von OpenSSL in das PEM-Format konvertieren. Weitere Informationen finden Sie unter Konvertieren eines Zertifikats in das entsprechende Format.
Erstellen Sie vor dem Konfigurieren des Datenflussendpunkts ein Geheimnis mit dem Zertifikat und dem privaten Schlüssel.
Wenn Sie das Einsatz-Portal verwenden, wird das Geheimnis automatisch formatiert und mit dem Kubernetes-Cluster synchronisiert.
Wenn Sie Bicep oder Kubernetes verwenden, erstellen Sie das Geheimnis manuell mit dem Zertifikat und dem privaten Schlüssel im selben Namespace wie der MQTT-Datenflussendpunkt.
kubectl create secret generic <X509_SECRET_NAME> -n azure-iot-operations --from-file=client_cert.pem=<CLIENT_CERT_FILE>.pem --from-file=client_key.pem=<PRIVATE_KEY_FILE>.pem --from-file=client_intermediate_certs.pem=<INTERMEDIATE_CERT_FILE>.pem
Dabei muss das Geheimnis
client_cert.pem
undclient_key.pem
als Schlüsselnamen für das Zertifikat und den privaten Schlüssel enthalten. Optional kann das Geheimnis auchclient_intermediate_certs.pem
als Schlüsselname für die Zwischenzertifikate enthalten.
Wichtig
Um die Webbenutzeroberfläche zum Verwalten von Geheimnissen zu verwenden, muss Azure IoT Einsatz zuerst mit sicheren Einstellungen aktiviert werden, indem Sie eine Azure Key Vault-Instanz konfigurieren und Workloadidentitäten aktivieren. Weitere Informationen finden Sie unter Aktivieren sicherer Einstellungen in der Azure IoT Operations-Bereitstellung.
Wichtig
Die Vorgangserlebnis-Web-UI hat derzeit ein bekanntes Problem, bei dem das Erstellen eines X.509-Geheimnisses zu einem Geheimnis mit falsch kodierten Daten führt. Weitere Informationen und die Problemumgehung finden Sie unter bekannten Problemen.
Wählen Sie auf der Seite "Einstellungen für den Endpunkt des Betriebsdatendurchflusses" die Registerkarte "Basis", dann wählen Sie Authentifizierungsmethode> und schließlich X509-Zertifikat aus.
Geben Sie hier unter dem Namen des synchronisierten geheimen Schlüssels einen Namen für den geheimen Schlüssel ein. Dieser Name wird verwendet, um in den Einstellungen des Datenflussendpunkts auf das Geheimnis zu verweisen. Es ist auch der Geheimnisname, der im Kubernetes-Cluster gespeichert ist.
Wählen Sie dann unter X509-Clientzertifikat, X509-Clientschlüssel und X509-Zwischenzertifikaten"Verweis hinzufügen" aus, um das Zertifikat, den privaten Schlüssel und die Zwischenzertifikate hinzuzufügen. Wählen Sie auf der nächsten Seite den geheimen Schlüssel aus Azure Key Vault mit "Aus Azure Key Vault hinzufügen " oder "Neuen geheimen Schlüssel erstellen " aus.
Wenn Sie "Neu erstellen" auswählen, geben Sie die folgenden Einstellungen ein:
Einstellung | BESCHREIBUNG |
---|---|
Geheimnisname | Der Name des Geheimnisses in Azure Key Vault. Wählen Sie einen Namen aus, der sich einfach merken lässt, um das Geheimnis später in der Liste auswählen zu können. |
Geheimer Wert | Das Zertifikat, der private Schlüssel oder die Zwischenzertifikate im PEM-Format. Sie können mehrzeilige Branchenstandard-X509-Zertifikate hochladen, die die Verwaltung der Geräteauthentifizierung, Sicherheit und Flexibilität verbessern. |
Aktivierungsdatum festlegen | Wenn diese Option aktiviert ist, das Datum, an dem das Geheimnis aktiv wird. |
Festlegen des Ablaufdatums | Wenn diese Option deaktiviert ist, das Datum, an dem das Geheimnis abläuft. |
Weitere Informationen zu geheimen Schlüsseln finden Sie unter Erstellen und Verwalten von geheimen Schlüsseln in Azure IoT Operations.
Anonym
Um die anonyme Authentifizierung zu verwenden, legen Sie die Authentifizierungsmethode auf Anonymous
fest.
Wählen Sie auf der Seite "Einstellungen für den Operations-Experience-Datenflussendpunkt" die Registerkarte "Einfach" und dann "Authentifizierungsmethode>Ohne" aus.
Erweiterte Einstellungen
Sie können erweiterte Einstellungen für den MQTT-Broker-Datenflussendpunkt festlegen, z. B. TLS, vertrauenswürdiges Zertifizierungsstellenzertifikat, MQTT-Nachrichteneinstellungen und CloudEvents. Sie können diese Einstellungen auf der Registerkarte " Erweitertes Portal" des Datenflussendpunkts innerhalb der benutzerdefinierten Ressource des Datenflussendpunkts festlegen.
Wählen Sie in der Betriebsumgebung die Registerkarte "Erweitert " für den Datenflussendpunkt aus.
TLS-Einstellungen
TLS-Modus
Um TLS für den MQTT-Endpunkt zu aktivieren oder zu deaktivieren, aktualisieren Sie die Einstellung mode
in den TLS-Einstellungen.
Wählen Sie auf der Seite „Einstellungen“ für den Datenflussendpunkt auf der Einsatz-Benutzeroberfläche die Registerkarte Erweitert aus, und verwenden Sie dann das Kontrollkästchen neben TLS-Modus aktiviert.
Der TLS-Modus kann auf Enabled
oder Disabled
festgelegt werden. Wenn der Modus auf Enabled
festgelegt ist, verwendet der Datenfluss eine sichere Verbindung mit dem MQTT-Broker. Wenn der Modus auf Disabled
festgelegt ist, verwendet der Datenfluss eine unsichere Verbindung mit dem MQTT-Broker.
Vertrauenswürdiges Zertifizierungsstellenzertifikat
Konfigurieren Sie das vertrauenswürdige Zertifizierungsstellenzertifikat für den MQTT-Endpunkt, um eine sichere Verbindung mit dem MQTT-Broker herzustellen. Diese Einstellung ist wichtig, wenn der MQTT-Broker ein selbstsigniertes Zertifikat oder ein Zertifikat verwendet, das von einer benutzerdefinierten Zertifizierungsstelle signiert ist, die nicht standardmäßig vertrauenswürdig ist.
Wählen Sie auf der Seite „Einstellungen“ für den Datenflussendpunkt auf der Einsatz-Benutzeroberfläche die Registerkarte Erweitert aus, und verwenden Sie dann das Feld ConfigMap für vertrauenswürdige Zertifizierungsstellenzertifikate, um die ConfigMap anzugeben, die das vertrauenswürdige Zertifizierungsstellenzertifikat enthält.
Diese ConfigMap sollte das Zertifizierungsstellenzertifikat im PEM-Format enthalten. Die ConfigMap muss sich im selben Namespace wie die MQTT-Datenflussressource befinden. Zum Beispiel:
kubectl create configmap client-ca-configmap --from-file root_ca.crt -n azure-iot-operations
Tipp
Beim Herstellen einer Verbindung mit einem Event Grid-MQTT-Broker ist das Zertifizierungsstellenzertifikat nicht erforderlich, da der Event Hubs-Dienst ein Zertifikat verwendet, das von einer öffentlichen Zertifizierungsstelle signiert ist. Dies gilt standardmäßig als vertrauenswürdig.
Client-ID-Präfix
Sie können ein Client-ID-Präfix für den MQTT-Client festlegen. Die Client-ID wird durch Anfügen des Instanznamens des Datenflusses an das Präfix generiert.
Achtung
Die meisten Anwendungen sollten das Präfix der Client-ID nicht ändern. Ändern Sie dies nicht nach einer initialen IoT Operations-Bereitstellung. Das Ändern des Präfixes der Client-ID nach der Bereitstellung kann zu Datenverlust führen.
Wählen Sie auf der Seite "Einstellungen für Endpunkt der Betriebsablaufdaten", die Registerkarte Erweitert aus und verwenden Sie dann das Feld Client-ID-Präfix, um das Präfix anzugeben.
QoS
Sie können die QoS (Quality of Service)-Ebene für die MQTT-Nachrichten entweder auf 1 oder 0 festlegen. Der Standardwert ist 1.
Auf der Einstellungsseite für den Betriebsdatenfluss-Endpunkt wählen Sie die Registerkarte Erweitert aus und verwenden anschließend das Feld Quality of Service (QoS), um die QoS-Stufe festzulegen.
Beibehalten V
Verwenden Sie die Einstellung retain
, um anzugeben, ob der Datenfluss die Aufbewahrungskennzeichnung für MQTT-Nachrichten beibehalten soll. Der Standardwert ist Keep
.
Das Festlegen dieses Felds auf Keep
ist nützlich zum Sicherstellen, dass der Remotebroker dieselben Nachrichten wie der lokale Broker beibehalten hat. Dies kann bei UNS-Szenarios (Unified Namespace, einheitlicher Namespace) wichtig sein.
Wenn diese Eigenschaft auf Never
festgelegt ist, wird das Aufbewahrungskennzeichnungszeichen aus den MQTT-Nachrichten entfernt. Dies kann hilfreich sein, wenn sie nicht möchten, dass der Remotebroker Nachrichten aufbewahrt, oder wenn der Remotebroker die Aufbewahrung nicht unterstützt.
So konfigurieren Sie Aufbewahrungseinstellungen
Wählen Sie auf der Seite "Einstellungen der Datenflussendpunkte für den Betriebsablauf" die Registerkarte Erweitert aus und verwenden Sie dann das Feld Beibehalten, um die Aufbewahrungseinstellung anzugeben.
Die Aufbewahrungseinstellung wird nur wirksam, wenn der Datenfluss MQTT-Endpunkt sowohl als Quelle als auch als Ziel verwendet. Beispiel: in einem MQTT-Brückenszenario .
Wichtig
Der Azure Event Grid MQTT-Broker unterstützt derzeit nicht das Retain-Flag. Wenn das Retain-Flag also auf Keep
für einen Event Grid-MQTT-Broker-Endpunkt festgelegt und als Ziel verwendet wird, werden die Nachrichten abgelehnt. Um dies zu vermeiden, legen Sie das Retain-Flag auf Never
fest, wenn Sie den Event Grid-MQTT-Broker als Ziel verwenden.
Sitzungsablauf
Sie können das Sitzungsablaufintervall für den MQTT-Client des Datenflusses festlegen. Das Sitzungsablaufintervall ist die maximale Zeit, die eine MQTT-Sitzung beibehalten wird, wenn der Datenflussclient die Verbindung trennt. Die Standardeinstellung beträgt 600 Sekunden. So konfigurieren Sie das Sitzungsablaufintervall
Wählen Sie auf der Seite "Einstellungen für den Operationserfahrungsdatenfluss" die Registerkarte "Erweitert" aus, und verwenden Sie dann das Feld "Sitzungsablauf", um das Ablaufintervall der Sitzung anzugeben.
MQTT- oder WebSockets-Protokoll
Standardmäßig ist WebSockets nicht aktiviert. Um MQTT über WebSockets zu verwenden, legen Sie das Feld protocol
auf WebSockets
fest.
Wählen Sie auf der Seite „Einstellungen“ für den Datenflussendpunkt auf der Einsatz-Benutzeroberfläche die Registerkarte Erweitert aus, und geben Sie dann im Feld Protokoll das Protokoll an.
Max. In-Flight-Nachrichten
Sie können die maximale Anzahl von In-Flight-Nachrichten festlegen, die der MQTT-Datenflussclient haben kann. Der Standard ist 100.
Wählen Sie auf der Seite "Datenflussendpunkteinstellungen" die Registerkarte "Erweitert " aus, und verwenden Sie dann das Feld "Maximale In-Flight-Nachrichten ", um die maximale Anzahl von Inflight-Nachrichten anzugeben.
Beim Abonnieren, wenn der MQTT-Endpunkt als Quelle verwendet wird, ist dies das Maximum zum Empfangen. Beim Veröffentlichen, wenn der MQTT-Endpunkt als Ziel verwendet wird, ist dies die maximale Anzahl von Nachrichten, die gesendet werden, bevor auf eine Bestätigung gewartet wird.
Keep-Alive
Sie können das Keepalive-Intervall für den MQTT-Client des Datenflusses festlegen. Das Keepalive-Intervall ist die maximale Zeit, die der Datenflussclient im Leerlauf sein kann, bevor eine PINGREQ-Nachricht an den Broker gesendet wird. Der Standardwert ist 60 Sekunden.
Wählen Sie auf der Seite "Einstellungen für den Datenflussendpunkt im Betriebsablauf" die Registerkarte Erweitert aus, und verwenden Sie dann das Feld Keep alive, um das Keep-Alive-Intervall anzugeben.
CloudEvents
CloudEvents sind eine Möglichkeit, Ereignisdaten auf gemeinsame Weise zu beschreiben. Die CloudEvents-Einstellungen werden verwendet, um Nachrichten im CloudEvents-Format zu senden oder zu empfangen. Sie können CloudEvents für ereignisgesteuerte Architekturen verwenden, bei denen unterschiedliche Dienste in demselben oder in unterschiedlichen Cloudanbieter miteinander kommunizieren müssen.
Die cloudEventAttributes
-Optionen sind Propagate
oder CreateOrRemap
. So konfigurieren Sie CloudEvents-Einstellungen
Wählen Sie auf der Seite „Einstellungen“ für den Datenflussendpunkt auf der Einsatz-Benutzeroberfläche die Registerkarte Erweitert aus, und geben Sie dann im Feld Cloudereignisattribute die CloudEvents-Einstellung an.
Die folgenden Abschnitte enthalten weitere Informationen zu CloudEvents-Einstellungen.
Verteilungseinstellung
CloudEvent-Eigenschaften werden für Nachrichten übergeben, welche die erforderlichen Eigenschaften enthalten. Wenn die Nachricht die erforderlichen Eigenschaften nicht enthält, wird die Nachricht unverändert übergeben.
Name | Erforderlich | Beispielwert | Ausgabewert |
---|---|---|---|
specversion |
Ja | 1.0 |
Unverändert übergeben |
type |
Ja | ms.aio.telemetry |
Unverändert übergeben |
source |
Ja | aio://mycluster/myoven |
Unverändert übergeben |
id |
Ja | A234-1234-1234 |
Unverändert übergeben |
subject |
Nein | aio/myoven/sensor/temperature |
Unverändert übergeben |
time |
Nein | 2018-04-05T17:31:00Z |
Unverändert übergeben. Es ist nicht neu gestempelt. |
datacontenttype |
Nein | application/json |
Der Inhaltstyp der Ausgabedaten wurde nach der optionalen Transformationsphase geändert. |
dataschema |
Nein | sr://fabrikam-schemas/123123123234234234234234#1.0.0 |
Wenn in der Transformationskonfiguration ein Transformationsschema für Ausgabedaten angegeben wird, wird dataschema in das Ausgabeschema geändert. |
CreateOrRemap-Einstellung
CloudEvent-Eigenschaften werden für Nachrichten übergeben, welche die erforderlichen Eigenschaften enthalten. Wenn die Nachricht die erforderlichen Eigenschaften nicht enthält, werden die Eigenschaften generiert.
Name | Erforderlich | Generierter Wert bei fehlendem Wert |
---|---|---|
specversion |
Ja | 1.0 |
type |
Ja | ms.aio-dataflow.telemetry |
source |
Ja | aio://<target-name> |
id |
Ja | Generierte UUID im Zielclient |
subject |
Nein | Das Ausgabethema, zu dem die Nachricht gesendet wird |
time |
Nein | Generiert als RFC 3339 im Zielclient |
datacontenttype |
Nein | Der Inhaltstyp der Ausgabedaten wurde nach der optionalen Transformationsphase geändert |
dataschema |
Nein | Schema, das in der Schemaregistrierung definiert ist |
Nächste Schritte
Weitere Informationen zu Datenflüssen finden Sie unter Erstellen eines Datenflusses.