Diese Referenzarchitektur veranschaulicht, wie Azure Stack Edge verwendet werden kann, um schnelle Machine Learning-Rückschlüsse aus der Cloud auf lokale oder Edgeszenarien zu erweitern. Azure Stack Hub stellt Azure-Funktionen wie Compute, Speicher, Netzwerke und hardwarebeschleunigtes maschinelles Lernen an einem beliebigen Edgestandort bereit.
Aufbau
Laden Sie eine Visio-Datei dieser Architektur herunter.
Workflow
Die Architektur umfasst die folgenden Schritte:
- Azure Machine Learning . Mithilfe von Machine Learning können Sie Modelle für maschinelles Lernen in einer cloudbasierten Umgebung erstellen, trainieren, bereitstellen und verwalten. Diese Modelle können dann für Azure-Dienste bereitgestellt werden, einschließlich (aber nicht beschränkt auf) Azure Container Instances, Azure Kubernetes Service (AKS) und Azure Functions.
- Azure Container Registry Container Registry ist ein Dienst, der die Docker-Registrierung erstellt und verwaltet. Container Registry erstellt, speichert und verwaltet Docker-Containerimages und kann containerisierte Machine Learning-Modelle speichern.
- Azure Stack Edge Azure Stack Edge ist ein Edgecomputinggerät, das für ML-Rückschlüsse am Edge entwickelt wurde. Vor der Übertragung an Azure werden Daten am Edge vorverarbeitet. Azure Stack Edge umfasst Hardware zur Computebeschleunigung, die dazu dient, die Leistung von KI-Rückschlüssen am Edge zu verbessern.
- Lokale Daten Lokale Daten verweisen auf alle Daten, die beim Trainieren des Machine Learning-Modells verwendet werden. Die Daten können in jeder lokalen Speicherlösung, einschließlich Azure Arc-Bereitstellungen, gespeichert werden.
Komponenten
Szenariodetails
Mögliche Anwendungsfälle
Diese Lösung eignet sich ideal für die Telekommunikationsbranche. Typische Verwendungsmöglichkeiten für die Erweiterung von Rückschlüssen:
- Ausführen lokaler, schneller Machine Learning-Rückschlüsse anhand von Daten während der Erfassung, wenn ein beträchtlicher lokaler Hardwarebestand vorliegt
- Erstellen langfristiger Forschungslösungen, bei denen vorhandene lokale Daten bereinigt und zum Generieren eines Modells verwendet werden. Das Modell wird dann sowohl lokal als auch in der Cloud verwendet. Es wird regelmäßig neu trainiert, wenn neue Daten eintreffen.
- Erstellen von Softwareanwendungen, die sowohl an einem physischen Standort als auch online Rückschlüsse auf die Benutzer ziehen müssen.
Empfehlungen
Erfassen, Transformieren und Übertragen von lokal gespeicherten Daten
Mit Azure Stack Edge können Daten aus lokalem Speicher transformiert werden, bevor diese Daten zu Azure übertragen werden. Diese Transformation wird von einem Azure IoT Edge-Gerät durchgeführt, das auf dem Azure Stack Edge-Gerät bereitgestellt wird. Diese IoT Edge-Geräte sind mit einer Azure IoT Hub-Ressource auf der Azure-Cloudplattform verbunden.
Jedes IoT Edge-Modul ist ein Docker-Container, der eine bestimmte Aufgabe in einem Workflow zur Erfassung, Transformation und Übertragung ausführt. Ein IoT Edge-Modul kann z. B. Daten von einer lokalen Azure Stack Edge-Freigabe erfassen und die Daten in ein Format transformieren, das für das maschinelle Lernen geeignet ist. Anschließend überträgt das Modul die transformierten Daten an eine Azure Stack Edge-Cloudfreigabe. Sie können Ihrem IoT Edge-Gerät benutzerdefinierte oder integrierte Module hinzufügen oder benutzerdefinierte IoT Edge-Module entwickeln.
Hinweis
IoT Edge-Module werden als Docker-Containerimages in Container Registry registriert.
In der Azure Stack Edge-Ressource auf der Azure-Cloudplattform wird der Cloudanteil durch eine Azure Blob-Speicherkontoressource gesichert. Alle Daten in der Cloudfreigabe werden automatisch in das zugehörige Speicherkonto hochgeladen. Sie können die Datentransformation und -übertragung überprüfen, indem Sie entweder die lokale oder die Cloudfreigabe einbinden oder das Azure Storage-Konto durchlaufen.
Trainieren und Bereitstellen eines Modells
Nach der Vorbereitung und Speicherung von Daten im Blobspeicher können Sie ein Machine Learning-Dataset erstellen, das eine Verbindung mit Azure Storage herstellt. Ein Dataset stellt eine einzelne Kopie Ihrer Daten im Speicher dar, die direkt von Machine Learning referenziert wird.
Sie können mithilfe der Machine Learning-Befehlszeilenschnittstelle (CLI), des R SDKs, des Python SDKs, dem Designer oder von Visual Studio Code die Skripts erstellen, die für das Training Ihres Modells erforderlich sind.
Nachdem Sie das bereitzustellende Modell trainiert und vorbereitet haben, können Sie es für eine Vielzahl von Azure-Diensten bereitstellen. Beispiele:
- Azure Container Registry Sie können die Modelle in einer privaten Docker-Registrierung wie Azure Container Registry bereitstellen, da es sich um Docker-Containerimages handelt.
- Azure Container Instances Sie können die Bereitstellung des Docker-Containerimages des Modells direkt in einer Containergruppe vornehmen.
- Azure Kubernetes Service Mithilfe von Azure Kubernetes Service können Sie das Docker-Containerimage des Modells automatisch skalieren, um umfangreiche Produktionsbereitstellungen zu ermöglichen.
- Azure Functions: Sie können ein Modell so verpacken, dass es direkt auf einer Funktionsinstanz läuft.
- Azure Machine Learning . Sie können Compute-Instanzen, verwaltete cloudbasierte Entwicklungsarbeitsstationen, sowohl für das Training als auch für Rückschlüsse aus Modellen verwenden. Auf ähnliche Weise können Sie das Modell auch für lokale IoT Edge- und Azure Stack Edge-Geräte bereitstellen.
Hinweis
Für diese Referenzarchitektur wird das Modell auf Azure Stack Edge bereitgestellt, um das Modell lokal für Rückschlüsse verfügbar zu machen. Das Modell wird auch in Container Registry bereitgestellt, um sicherzustellen, dass das Modell für Rückschlüsse in den verschiedensten Azure-Dienste zur Verfügung steht.
Rückschlüsse mit einem neu bereitgestellten Modell
Mithilfe der integrierten Hardware zur Computebeschleunigung kann Azure Stack Edge Machine Learning-Modelle schnell anhand von lokalen Daten ausführen. Diese Berechnung erfolgt vollständig am Edge. Als Ergebnis erhalten Sie schnelle Erkenntnisse aus Daten mithilfe von Hardware, die sich näher an der Datenquelle befindet als eine öffentliche Cloudregion.
Darüber hinaus werden die Daten weiterhin von Azure Stack Edge an Machine Learning übertragen, um mithilfe einer Machine Learning-Pipeline ein kontinuierliches erneutes Training und eine fortlaufende Verbesserung zu ermöglichen. Die Pipeline ist dem Modell zugeordnet, das bereits anhand von lokal gespeicherten Daten ausgeführt wird.
Überlegungen
Diese Überlegungen beruhen auf den Säulen des Azure Well-Architected Frameworks, d. h. einer Reihe von Grundsätzen, mit denen die Qualität von Workloads verbessert werden kann. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.
Verfügbarkeit
- Ziehen Sie in Betracht, Ihre Azure Stack Edge-Ressource in derselben Azure-Region zu platzieren, in der andere Azure-Dienste darauf zugreifen sollen. Um die Leistung beim Hochladen zu optimieren, sollten Sie in Erwägung ziehen, Ihr Azure-Blobspeicherkonto in der Region zu platzieren, in der Ihre Appliance die beste Netzwerkverbindung aufweist.
- Erwägen Sie Azure ExpressRoute für eine stabile, redundante Verbindung zwischen Ihrem Gerät und Azure.
Verwaltbarkeit
- Administratoren können überprüfen, ob die Datenquelle aus dem lokalen Speicher ordnungsgemäß an die Azure Stack Edge-Ressource übertragen wurde. Hierzu können sie über Azure Storage Explorer die SMB- (Server Message Block)/NFS-Dateifreigabe (Network File System) einbinden oder eine Verbindung mit dem zugehörigen Blobspeicherkonto herstellen.
- Verwenden Sie Machine Learning-Datasets, um beim Training Ihres Modells auf Ihre Daten im Blobspeicher zu verweisen. Durch Speicherverweise ist es nicht mehr erforderlich, Geheimnisse, Datenpfade oder Verbindungszeichenfolgen in Ihre Trainingsskripts einzubetten.
- In Ihrem Machine Learning-Arbeitsbereich können Sie unter Modelle für maschinelles Lernen registrieren und verfolgen, um Unterschiede zwischen Ihren Modellen zu verschiedenen Zeitpunkten zu verfolgen. Auf ähnliche Weise können Sie die Metadaten zur Versionsverwaltung und Nachverfolgung in den Tags spiegeln, die Sie mithilfe der Docker-Containerimages für die Bereitstellung in Container Registry verwenden.
DevOps
- Überprüfen Sie den Ansatz zur MLOps-Lebenszyklusverwaltung für Machine Learning. Verwenden Sie beispielsweise GitHub oder Azure Pipelines, um einen Continuous Integration-Prozess zu erstellen, der ein Modell automatisch und wiederholt trainiert. Das Training kann ausgelöst werden, wenn das Dataset durch neue Daten aufgefüllt oder eine Änderung an den Trainingsskripts vorgenommen wird.
- Der Azure Machine Learning-Arbeitsbereich registriert und verwaltet automatisch Docker-Containerimages für Machine Learning-Modelle und IoT Edge-Module.
Kostenoptimierung
Bei der Kostenoptimierung geht es um die Suche nach Möglichkeiten, unnötige Ausgaben zu reduzieren und die Betriebseffizienz zu verbessern. Weitere Informationen finden Sie unter Übersicht über die Säule „Kostenoptimierung“.
- Verwenden Sie den Azure-Preisrechner, um die voraussichtlichen Kosten zu ermitteln.
- Azure Stack Edge-Preise werden als pauschales Monatsabonnement mit einmaligen Versandkosten berechnet.
- Azure Machine Learning stellt auch die Dienste Container Registry, Azure Storage und Azure Key Vault zur Verfügung, was zusätzliche Kosten verursacht. Weitere Informationen finden Sie unter Funktionsweise des Azure Machine Learning-Diensts: Architektur und Konzepte.
- Die Preise für Azure Machine Learning enthalten die Kosten für die virtuellen Computer, die für das Training des Modells in der öffentlichen Cloud verwendet werden.
Nächste Schritte
Produktdokumentation
Microsoft Learn-Module: