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.
Dieser Artikel zeigt, wie Sie Azure-KI-Modelle auf Siemens Industrial Edge Geräten für das Internet der Dinge (IoT) ausführen und diese von einem zentralen Ort in Azure aus überwachen. Die Architektur vereinfacht den Integrationsprozess zwischen industriellen KI-Diensten von Azure und Siemens und konzentriert sich auf zwei betriebliche Bereiche:
Bereitstellung von Azure KI-Modellen auf Siemens Industrial Edge-Geräten: Dieser betriebliche Bereich umfasst die Implementierung von Azure Machine Learning-Pipelines für automatisiertes Modelltraining, -bewertung und -registrierung. Dazu gehört auch die Automatisierung der sicheren und genehmigten Bereitstellung von KI-Modellen, die auf Azure trainiert wurden, aus der Cloud an den lokalen AI Model Manager (AIMM) von Siemens.
Zentralisierung der Telemetrie von Siemens Industrial Edge-Geräten in Azure: Zu diesem betrieblichen Bereich gehört das Pushen von Inferenzprotokollen und -metriken in die Cloud, um eine zentralisierte Überwachung von Edge-Anwendungen in Azure zu ermöglichen.
Architektur
Workflow
Die Datenpipeline:
a. Lädt Trainingsrohdaten aus einem dedizierten Rohdatenspeichercontainer. Die Pipeline verarbeitet dann die Trainingsrohdaten und gibt ihnen ein für das Modelltraining geeignetes Format.
b. Speichert die verarbeiteten Daten im Speichercontainer für das verarbeitete Dataset.
Die Modellentwicklungspipeline wird ausgelöst, nachdem die Rohdaten verarbeitet wurden.
Die Modellentwicklungspipeline:
a. Lädt verarbeitete Trainingsdaten aus dem Speichercontainer für verarbeitete Datasets und führt ein Modelltraining durch.
b. Speichert das daraus resultierende Modell im Modellkatalog.
Die Prüfungs- und Paketerstellungspipeline wird ausgelöst, nachdem das Modell trainiert wurde.
Die Prüfungs- und Paketerstellungspipeline:
a. Lädt das Modell aus dem Modellkatalog und führt eine Modellprüfung durch.
b. Wenn das Modell die Prüfung besteht, verwendet die Pipeline die Siemens AI SDK-Bibliothek, um das Modell zu verpacken und im Speichercontainer für verpackte Modelle zu speichern.
Die Tagging- und Übermittlungspipeline wird ausgelöst, nachdem das verpackte Modell gespeichert wurde.
Die Tagging- und Übermittlungspipeline ruft das trainierte Modell aus dem Modellkatalog ab und tagt es mit weiteren Metadaten, darunter Angaben zur Pipelineversion, dem Erstellungsdatum und der Datenversion. Die Pipeline speichert das Modell dann in der Containerregistrierung.
Die Übermittlungspipeline leitet einen Nachrichtenaustausch zwischen der Machine-Learning-Pipeline und dem Siemens AIMM über Azure IoT Hub und Azure Event Hubs ein. Diese Schleife ist für die Steuerung und Koordination der Bereitstellung eines neuen Modells entscheidend:
a. Die Übermittlungspipeline sendet eine Nachricht über IoT-Hub, um den Siemens AIMM darüber zu informieren, dass ein neues Modell zur Bereitstellung bereit ist.
b. Der Siemens AIMM erhält diese Benachrichtigung und beurteilt den aktuellen Status der Edgegeräte, um zu bestimmen, ob sie für das neue Modell bereit sind. Nachdem sie bereit sind, antwortet der Siemens AIMM dem IoT-Hub mit einer Anforderung des neuen Modells.
c. Die Übermittlungspipeline generiert einen SAS-Link (Shared Access Signature) für das Modellpaket im Speichercontainer für verpackte Modelle.
d. Die Übermittlungspipeline sendet diesen SAS-Link über den IoT-Hub zurück an den Siemens AIMM, sodass das Modell heruntergeladen werden kann.
Nachdem der Siemens AIMM den SAS-Link von der Übermittlungspipeline erhalten hat, wendet er sich an den Speichercontainer für verpackte Modelle und lädt das neueste verpackte Modell herunter.
Der Siemens AIMM führt interne Prozesse aus, um das neueste Paketmodell auf dem Siemens AI Inference Server (AIIS) bereitzustellen.
Der Siemens AIIS verwendet den OpenTelemetry-Collector, um Metriken an den Siemens AI Model Monitor zu senden.
Der Siemens AI Model Monitor aggregiert alle Protokolle und Metriken von den Edgegeräten und -diensten und sendet diese Informationen an Azure Monitor.
Das Datenrecycling umfasst die folgenden Schritte:
a. Der Daten-Collector sammelt Inferenzdaten, die das laufende Modell in Siemens AIIS erzeugt.
b. Der Daten-Collector überträgt die Daten an den Daten-Collector-Hub.
c. Der Daten-Collector-Hub lädt die Daten zum weiteren erneuten Trainieren des Modells in die Datenziele des Azure Storage-Kontos hoch.
Architektur für Einblicke
Um die reibungslose Übertragung von Protokollen und Metriken von Siemens Industrial Edge-Geräten an Azure zu gewährleisten, verwendet die Architektur den Azure Monitor Exporter aus dem OpenTelemetry-Collector und den Authentifizierungs-Proxy. Der Siemens AI Model Monitor setzt diese Komponenten als integrale Bestandteile ein. Mit dieser Einrichtung können Sie Protokolle und Metriken in Application Insights einen Azure Monitor-Arbeitsbereich exportieren. Als Schlüsselauthentifizierungsmechanismus wird eine verwaltete Identität von Microsoft Entra ID verwendet.
Telemetriedaten fließen von der Betriebstechnologieschicht zu einer Instanz des OpenTelemetry-Collector in der Informationstechnologieschicht. Dieser Collector exportiert die Daten nach Application Insights und verwendet den Authentifizierungsproxy, um eine Dienstprinzipalidentität zu erhalten. Dieser Prozess stärkt die Authentifizierung, indem er eine vollständig zertifikatgestützte Microsoft Entra ID-Identität anstelle eines gemeinsamen geheimen Schlüssels oder Instrumentierungsschlüssels verwendet. Eine Azure DevOps-Pipeline generiert und verteilt die Zertifikate und Dienstprinzipale automatisch und ordnet relevante Rollen und Berechtigungen zu.
Eine allgemeinere Lösung finden Sie unter OpenTelemetry-Collector für Legacy-IoT-Szenarien.
Siemens Industrial Edge-Komponenten
Zu Siemens Industrial Edge gehören unter anderem die folgenden Komponenten:
AI Model Monitor sammelt Telemetrieinformationen, Protokolle und Metriken zur Modellleistung von Edgegeräten.
Der AIMM ist ein Dienst, der zum Orchestrieren von Edgegeräten und zum Verteilen von Modellen verwendet wird.
Der AIIS läuft auf Siemens Industrial Edge-Geräten und verwendet den integrierten Python-Interpreter, um bereitgestellte KI-Modelle zu Inferenzzwecken auszuführen.
Verwenden Sie das AI Software Development Kit, um Ihr Modell, einschließlich der Vor- und Nachverarbeitungslogik, in eine Standardinferenzpipeline zu verpacken, die auf AIIS ausgeführt wird. Verwenden Sie diese Python-Werkzeuge und pflegen Sie Ihre vorhandene Codierungs- und Trainingsumgebung.
Der Siemens Data Collector sammelt Inferenzdaten von Siemens AIIS zur weiteren Verarbeitung.
Der Siemens Data Collector Hub sammelt Inferenzdaten von allen Daten-Collectors und überträgt sie zur weiteren Verarbeitung in die Cloud.
Azure-Komponenten
Verwenden Sie, sofern verfügbar, für jede Komponente in der Architektur den entsprechenden Diensthandbüchern im Well-Architected Framework. Weitere Informationen finden Sie in den Well-Architected Framework-Diensthandbüchern.
Der IoT-Hub erleichtert die Kommunikation für die Modellbereitstellung zwischen der Cloud und dem Edge. Der IoT-Hub registriert den AIMM als Edgegerät, sodass Clouddienste Cloud-zu-Gerät-Nachrichten senden können.
Der Machine Learning-Arbeitsbereich fungiert als zentraler Hub zum effizienten Erstellen, Organisieren und Hosten von Machine Learning-Artefakten und -Aufgaben für Teams. Sie können beispielsweise Aufträge, Pipelines, Datenbestände, Modelle und Endpunkte erstellen.
Azure Monitor ist eine Azure Lösung, die Einblicke in die Leistung und Integrität von Anwendungen und Ressourcen bietet. Er bietet Tools zum Sammeln, Analysieren und Verarbeiten von Telemetriedaten.
Der Speicher ist ein cloudbasierter Container oder ein Repository, mit dem verschiedene Arten von Daten auf skalierbare und zugängliche Art und Weise gespeichert und verwaltet werden können.
Der Azure Key Vault ist ein Clouddienst, der vertrauliche Informationen wie Geheimnisse, Schlüssel und Zertifikate sicher verwaltet und speichert. Er ermöglicht die zentralisierte Kontrolle über den Zugriff und Überwachungspfade.
Das Azure Container Registry ist ein verwalteter, privater Registrierungsdienst, mit dem Sie Containerimages und dazugehörige Artefakte erstellen, speichern und verwalten können. Wenn Sie einen neuen Machine Learning-Arbeitsbereich erstellen, wird automatisch eine Container Registry-Instanz erstellt. Im Container Registry werden Docker-Container gespeichert, die Sie zum Trainieren und Bereitstellen von Modellen verwenden können. Die Docker-Container kapseln Ihre Machine Learning-Trainingsumgebung. Dieses Feature sorgt für eine konsistente, reproduzierbare und isolierte Umgebung, was für Workflows des maschinellen Lernens von entscheidender Bedeutung ist.
Alternativen
Für eine langfristige Lösung sollten Sie den IoT-Hub durch das Feature Event Grid-MQTT-Broker ersetzen. Event Grid ist ein vollständig verwalteter, hochgradig skalierbarer Verteilungsdienst zum Veröffentlichen und Abonnieren von Nachrichten. Er verwendet MQTT- und HTTP-Protokolle, um flexible Nachrichtennutzungsmuster zu unterstützen.
Erwägen Sie die Verwendung der Azure Monitor-Edgepipeline auf Azure Arc, um Protokolle und Metriken an Azure zu übertragen. Diese Pipeline ersetzt die OpenTelemetry-Komponenten in Ihrer Architektur. Dieser Ansatz bietet eine nahtlose und sichere Verbindung zu Azure. Er verbessert auch die Erweiterbarkeit der Fabrik-IT von Siemens auf die Azure Cloud und vereinfacht so das Identitätsmanagement. Mit dieser Alternative erreichen Sie Folgendes:
- Schnellere Inbetriebnahme für den Kunden.
- Weniger Support von Siemens während der Inbetriebnahme.
- Niedrigere Betriebskosten, da Zugriff auf Daten zu Einblicken besteht.
Sie können den GitLab-Beschleuniger verwenden , um Ihre Machine Learning-Pipelines zu entwickeln und die Funktionalitäten in Azure mit den Beispielen aus dieser Implementierung weiter zu verbessern.
Einzelheiten zum Szenario
Dieses Szenario befasst sich mit der Herausforderung der Integration von Machine-Learning-Modellen, die in Azure entwickelt wurden, in den Fabrikbetrieb, der von Siemens Industrial Edge-Geräten verwaltet wird. Primäres Ziel ist es, eine effiziente, sichere und automatisierte Bereitstellung und Überwachung von KI-Modellen im industriellen Umfeld zu gewährleisten.
Diese Architektur trägt dazu bei, den Bedarf für eine reibungslose und zuverlässige Bereitstellung von KI-gestützten Anwendungen in der Fertigung und für strenge betriebliche Anforderungen zu erfüllen. Diese Lösung minimiert manuelle Eingriffe, reduziert Unterbrechungen und verbessert die Sichtbarkeit von Machine-Learning-Modellen in der Fertigung.
Potenzielle Anwendungsfälle
Diese Architektur bildet eine geschlossene Umgebung für Datenerfassung, KI-Modellierung, Training, Bereitstellung, Inferenz und Überwachung auf der Grundlage von Siemens- und Microsoft-Produkten. Sie können skalierbare KI-Anwendungsfälle in verschiedenen Branchen implementieren, z. B. in der Elektronik-, Verbrauchsgüter-, Automobil- und Batterieindustrie.
Um den manuellen Aufwand und die Kosten zu reduzieren, integriert diese Architektur die Vorbereitung des Cloud-Modells, die Übertragung des Cloud-to-Edge-Modells und den Einsatz des Modells Es bietet auch Edge-to-Cloud-Überwachung und schafft eine kostengünstige Lösung mit geringen Anfangsinvestitionen in KI-Hardware und -Software.
Überlegungen
Es gibt einige Überlegungen zur Implementierung der Säulen des Azure Well-Architected Frameworks, bei dem es sich um eine Reihe von Leitsätzen handelt, die zur Verbesserung der Qualität eines Workload verwendet werden. Weitere Informationen finden Sie unter Well-Architected Framework.
Zuverlässigkeit
Zuverlässigkeit stellt sicher, dass Ihre Anwendung die Verpflichtungen erfüllen kann, die Sie gegenüber Ihren Kunden eingehen. Weitere Informationen finden Sie in der Designprüfcheckliste für die Zuverlässigkeit.
Verwenden Sie Azure-Verfügbarkeitszonen für unterstützte Azure-Dienste, um die Zuverlässigkeit innerhalb derselben Azure-Region zu verbessern.
Wenn Sie Azure Blob Storage verwenden, stellen Sie sicher, dass Sie für Ihr Speicherkonto die entsprechenden Redundanz- und Failoverkonfigurationen konfigurieren.
Verwenden Sie Muster auf Codeebene, um vorübergehende Netzwerkprobleme anzugehen, und Funktionen zur Nachrichtenpersistenz zum Schutz vor vorübergehenden Software- und Hardwarefehlern. Sie können z. B. das Sicherungs- oder das Wiederholungsmuster verwenden.
Sicherheit
Sicherheit schützt vor vorsätzlichen Angriffen und dem Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie in der Designprüfcheckliste für die Sicherheit.
In dieser Architektur können Sie die folgenden allgemeinen Sicherheitsprinzipien anwenden:
Verwenden Sie Microsoft Entra ID als primäres Tool für die Verwaltung der Identität und Zugriffssteuerung.
Führen Sie während der Planungsphase Ihrer Lösung eine umfassende Bedrohungsmodellierung durch, um potenzielle Sicherheitsrisiken zu identifizieren und Strategien zur Risikominderung entwickeln zu können. Weitere Informationen finden Sie unter Microsoft Security Development Lifecycle – Bedrohungsmodellierung.
Verwenden Sie verwaltete Identitäten, sofern diese unterstützt werden, und speichern Sie alle anderen Geheimnisse im Key Vault. Konfigurieren Sie Einstellungen für das vorläufige Löschen, aktivieren Sie die Protokollierung und verschärfen Sie die Zugriffssteuerung, um die Sicherheit des Key Vault zu erhöhen.
Wenden Sie das Prinzip der geringsten Rechte an, indem Sie die rollenbasierte Zugriffssteuerung (RBAC) verwenden, um den Zugriff und die Berechtigungen für Ressourcen zu steuern. Weitere Informationen finden Sie unter Was ist Azure RBAC?
Verwenden Sie virtuelle Netzwerke und private Endpunkte, um Clouddienste und die Cloud-to-Edge-Kommunikation zu sichern.
Kostenoptimierung
Bei der Kostenoptimierung geht es darum, nach Möglichkeiten zu suchen, unnötige Ausgaben zu reduzieren und die betriebliche Effizienz zu verbessern. Weitere Informationen finden Sie in der Designprüfcheckliste für die Kostenoptimierung.
Überprüfen und optimieren Sie das in Log Analytics gespeicherte Datenvolumen regelmäßig, indem Sie die Aufbewahrungszeiträume und Archivierungsrichtlinien anpassen. Mit dieser Strategie können Sie die Speicherkosten erheblich senken.
Nutzen Sie den kostenlose 30-tägigen Aufbewahrungszeitraum für erfasste Daten. Überlegen Sie, weniger kritische Daten nach diesem Zeitraum in kostengünstigeren Speichermedien zu archivieren oder die Aufbewahrungszeiträume zu verkürzen, um die laufenden Kosten zu minimieren. Weitere Informationen finden Sie unter Azure Monitor – Preise.
Bewerten Sie die Notwendigkeit und Nutzung abhängiger Ressourcen wie Key Vault, Application Insights, Container Registry und Speicherkonten. Optimieren Sie ihre Konfigurationen, damit keine unnötigen Kosten entstehen.
Überprüfen Sie regelmäßig die Größe und den Umfang dieser Ressourcen, um sicherzustellen, dass sie Ihren aktuellen Workload-Anforderungen entsprechen, und reduzieren Sie so Überkapazitäten, welche die Kosten nach oben treiben können.
Schätzen Sie die Anzahl der Nachrichten, die Ihre IoT-Hub-Instanz täglich verarbeitet, und wählen Sie die kostengünstigste Ebene aus. Um eine Überbereitstellung zu vermeiden, wählen Sie eine Ebene, die genau zu Ihrer tatsächlichen Nutzung passt.
Implementieren Sie Strategien, welche die Anzahl der gesendeten Nachrichten reduzieren, z. B. die Batchverarbeitung oder Optimierung der Datennutzlasten, um die Kosten zu minimieren.
Verwenden Sie den Azure-Preisrechner, um verschiedene Workload-Szenarien zu simulieren und die kosteneffizientesten Konfigurationen für Ihre Architektur auszuwählen. Dieser Ansatz hilft Ihnen, Kosten zu antizipieren und Bereiche zu identifizieren, in denen Sie potenziell Mittel einsparen können.
Überprüfen Sie Ihre Kostenschätzungen regelmäßig und passen Sie die Konfigurationen an, wenn sich Ihre Workloads weiterentwickeln, damit Ihre Kosten stets optimiert sind. Weitere Informationen finden Sie unter Azure-Preise – Übersicht.
Betriebliche Effizienz
Betriebliche Effizienz bezieht sich auf die Betriebsprozesse, die eine Anwendung bereitstellen und in der Produktion ausführen. Weitere Informationen finden Sie in der Designprüfcheckliste für die betriebliche Exzellenz.
Erstellen und verwalten Sie Ihre Infrastruktur mithilfe von Infrastructure-as-Code-Tools wie Bicep, Terraform oder Azure Resource Manager-Vorlagen. Diese Tools sorgen bei der Bereitstellung Ihrer Infrastruktur für Konsistenz, Wiederholbarkeit und Skalierbarkeit.
Integrieren Sie Sicherheitspraktiken frühzeitig in den Anwendungslebenszyklus, indem Sie DevOps-Sicherheitsmaßnahmen anwenden. Dieser Ansatz minimiert die Auswirkungen von Sicherheitsrisiken und rückt Sicherheitsüberlegungen näher an das Entwicklungsteam heran, was die Entwicklung schneller und sicherer macht.
Verwenden Sie Azure-Pipelines, um Ihre Infrastruktur durch Continuous Integration- und Continuous Delivery-Prozesse bereitzustellen. Dieser Ansatz gewährleistet eine effiziente, automatisierte und zuverlässige Bereitstellung Ihrer Ressourcen, verringert das Risiko manueller Fehler und erhöht die Geschwindigkeit der Bereitstellung.
Integrieren Sie Tools zur Erkennung von Geheimnissen in Ihre Continuous-Integration-Pipelines, um zu verhindern, dass Geheimnisse an Ihr Repository übergeben werden. Diese proaktive Maßnahme sichert Ihre Codebasis und schützt sie vor potenziellen Sicherheitsverletzungen.
Leistungsfähigkeit
Leistungseffizienz ist die Fähigkeit, Ihren Workload so zu skalieren, dass er die Anforderungen der Benutzenden effizient erfüllen kann. Weitere Informationen finden Sie in der Designprüfcheckliste für die Leistungsfähigkeit.
Wählen Sie den geeigneten IoT-Hub-Ebene basierend auf dem täglichen Volumen der Nachrichten aus, die Ihre Workload austauscht:
Für kleine bis mittelgroße Projekte, bei denen bis zu 5 Millionen Nachrichten pro Tag ausgetauscht werden, wählen Sie die S2-Standardebene aus.
Für große Projekte, bei denen bis zu 300 Millionen Nachrichten pro Tag oder durchschnittlich 3.400 Nachrichten pro Sekunde unterstützt werden müssen, nehmen Sie die S3-Standardebene.
Weitere Informationen finden Sie unter Preise für den IoT-Hub.
Verwenden Sie für die Produktion in Machine Learning Computecluster und nicht Computeinstanzen. Computecluster skalieren Ressourcen dynamisch als Antwort auf schwankende Datenverkehrsanforderungen und sorgen so für optimale Leistung und Kosteneffizienz.
Aktivieren Sie die Diagnoseeinstellungen für Machine Learning, um Dienste je nach Ihren Geschäftsanforderungen zu überwachen und zu skalieren. Überwachen Sie regelmäßig die durchschnittliche Nutzung von Computeinstanzen oder Computeclusterknoten. Passen Sie mit zunehmender Anzahl von Experimenten die Knotenanzahl des Computeclusters an, um sicherzustellen, dass die Kapazität ausreicht und die Leistung erhalten bleibt.
Mitwirkende
Dieser Artikel wird von Microsoft gepflegt. Ursprünglich wurde er von den folgenden Mitwirkenden verfasst:
Hauptautoren:
- Neelam Saxena | Senior Technical Program Manager
- Nick Sologoub | Principal Software Engineering Lead
- Colin Desmond | Senior Software Engineer
Mitwirkender:
- Johannes Kupser | Chief Product Owner für industrielle KI
- Djaci Araujo | Software Architect bei Siemens AG
Melden Sie sich bei LinkedIn an, um einen Blick auf die nicht öffentlichen LinkedIn-Profile zu werfen.
Referenzen
- Siemens und Microsoft veröffentlichen Codebeispiele für die Automatisierung für die Implementierung der vorgeschlagene cloudbasierten Referenzarchitektur. Weitere Informationen finden Sie in der Dokumentation zur industriellen KI.
- Übersicht über die Konzepte der Azure IoT Hub
- Erste Schritte mit Machine Learning
- Tutorial: Eine Containerregistrierung und Images erstellen
- Speicherdokumentations-Hub
- Azure Ressourcen mit Azure Monitor überwachen
- Startseite des industriellen KI-Portfolios von Siemens
- Industrielle KI-gestützte Abläufe
- Siemens Industrial Edge – Dokumentation
- Referenz zur industriellen KI von Siemens mit Electronic Works Amberg