Übung: Bereitstellen und Erstellen der Lösung
In der ersten Übung haben Sie die Azure IoT Edge-Runtime bereits auf dem Linux-Computer installiert. Vergewissern Sie sich, dass Sie die folgenden Softwareentwicklungstools installiert haben.
- Docker Community Edition auf dem Linux-Computer
- Visual Studio Code ist ein Code-Editor und eines der beliebtesten Open-Source-Projekte auf GitHub. Sie kann unter Linux, macOS und Windows ausgeführt werden.
- Die folgenden Visual Studio Code-Erweiterungen
- Azure Account
- Azure IoT-Tools
- Docker-Erweiterung für Visual Studio Code
- JSON-Tools die zum Ändern der „Erstellungsoptionen“ für ein Modul nützlich sind.
Erstellen von Azure KI Services-Instanzen
In diesem Modul verwenden Sie Azure KI Custom Vision- und Azure KI Speech-Dienste.
Der Azure KI Custom Vision-Dienst wird verwendet, ein Machine Learning-Modell mit bereitgestellten Bildern von Obst zu erstellen. Anschließend wird das Modell exportiert und dem Projektordner hinzugefügt.
Azure KI Speech wird verwendet, um Sprache anhand der Bezeichnung eines Elements zu generieren. Sie fügen den Sprachschlüssel in der Bereitstellungsvorlage hinzu.
Die Ressource für mehrere Dienste ist im Portal unter Azure KI Services>Azure KI Services-Konto mit mehreren Diensten aufgeführt. Führen Sie die folgenden Anweisungen aus, um eine Ressource für mehrere Dienste zu erstellen:
Melden Sie sich beim Azure-Portal an.
Wählen Sie diesen Link aus, um eine Ressource für mehrere Dienste zu erstellen: https://portal.azure.com/#create/Microsoft.CognitiveServicesAllInOne
Geben Sie auf der Seite Erstellen die folgenden Informationen ein:
Projektdetails BESCHREIBUNG Abonnement Wählen Sie eines Ihrer verfügbaren Azure-Abonnements aus. Ressourcengruppe Die Azure-Ressourcengruppe, die Ihre Azure KI Services-Ressource enthält. Sie können eine neue Gruppe erstellen oder sie einer bereits bestehenden Gruppe hinzufügen. Region Der Speicherort Ihrer Azure KI Services-Instanz. Verschiedene Speicherorte können Wartezeiten verursachen, haben aber keinen Einfluss auf die Laufzeitverfügbarkeit Ihrer Ressource. Name Ein beschreibender Name für Ihre Azure KI Services-Ressource. Beispiel: MyAzureAIServicesResource. Preisstufe Die Kosten für Ihr Azure KI Services-Konto hängen von den ausgewählten Optionen und Ihrer Nutzung ab. Weitere Informationen finden Sie unter API-Preise. Konfigurieren Sie nach Bedarf weitere Einstellungen für Ihre Ressource, lesen und akzeptieren Sie die Bedingungen (falls zutreffend), und klicken Sie dann auf Überprüfen + erstellen.
Tipp
Wenn Ihr Abonnement die Erstellung einer Azure KI Services-Ressource nicht zulässt, müssen Sie möglicherweise die Berechtigung des betreffenden Azure-Ressourcenanbieters mithilfe des Azure-Portals, eines PowerShell-Befehls oder eines Azure CLI-Befehls aktivieren. Wenn Sie nicht der Abonnementbesitzer sind, fordern Sie den Abonnementbesitzer oder jemanden mit der Rolle des Administrators auf, die Registrierung für Sie abzuschließen, oder bitten Sie um die Erteilung von /register/action-Berechtigungen für Ihr Konto.
Installieren der Docker-Registrierung auf dem Linux-Computer
Azure IoT Edge basiert auf Docker-Images, die über eine Docker-Registrierung verteilt werden. In der Produktion würden Sie Docker-Images über eine Registrierung wie Azure Container Registry bereitstellen.
Wenn Sie ein Azure IoT Edge-Modul entwickeln, geht es schneller, eine lokale Containerregistrierung auf dem Gerät zu installieren und Docker-Images über die lokale Registrierung für Azure IoT Edge bereitzustellen.
Öffnen Sie das Terminal auf dem Linux-Computer, und führen Sie den folgenden Befehl aus, um eine lokale Docker-Registrierung einzurichten.
docker run -d -p 5000:5000 --restart=always --name registry registry:2
Klonen der Bilderkennungslösung auf den Linux-Computer
Klonen Sie dieses GitHub-Repository.
git clone https://github.com/MicrosoftDocs/mslearn-oxford.create-image-recognition-with-azure-iot-edge
Öffnen Sie die Lösung über das Visual Studio Code-Menü.
Aktualisieren des Azure KI Speech-Schlüssels
Öffnen Sie die Datei deployment.template.json, und aktualisieren Sie azureSpeechServicesKey mit dem Schlüssel, den Sie aus dem Azure-Sprachdienst kopiert haben.
Bestätigen des Prozessors
Sie müssen sicherstellen, dass das Image, das Sie erstellen möchten, mit der Zielprozessorarchitektur übereinstimmt. In diesem Fall erstellen Sie ein Image für amd64. Bestätigen Sie die Prozessorarchitektur.
Klicken Sie in der unteren Leiste von Visual Studio Code auf die aktuell ausgewählte Prozessorarchitektur, und wählen Sie dann im Popupfenster amd64 aus.
Erstellen Sie die Lösung.
Erstellen Sie die Lösung, und übertragen Sie diese mithilfe von Push an Docker, indem Sie mit der rechten Maustaste auf die Datei deployment.template.json klicken und Build and Push IoT Edge Solution (IoT Edge-Lösung erstellen und übertragen) auswählen. Der erste Build wird langsam sein, da Docker die Basisebenen auf den lokalen Computer abrufen muss.
Wenn Sie eine Kreuzkompilierung mit amd64 erstellen, ist der erste Build sehr langsam, da die OpenCV- und Python-Anforderungen kompiliert werden müssen. Bei einem schnellen Intel i7-8750H-Prozessor dauert die Kreuzkompilierung dieser Lösung etwa 40 Minuten.
Bereitstellen der Lösung
Wenn der Docker-Prozess zum Erstellen und Übertragen abgeschlossen ist, wählen Sie das Azure IoT Hub-Gerät aus, auf dem Sie die Lösung bereitstellen möchten. Klicken Sie mit der rechten Maustaste auf die Datei deployment.json, die Sie im Ordner „config“ finden, und wählen Sie das Zielgerät aus der Dropdownliste aus.