Självstudie: Konfigurera en miljö för maskininlärning på IoT Edge
Gäller för: IoT Edge 1.1
Viktigt!
IoT Edge 1.1 slutdatum för support var den 13 december 2022. I informationen om Microsoft-produktens livscykel hittar du fler uppgifter om vilken support som gäller för denna produkt, tjänst, teknik eller detta API. Mer information om hur du uppdaterar till den senaste versionen av IoT Edge finns i Uppdatera IoT Edge.
Den här artikeln hjälper dig att förbereda din miljö för utveckling och distribution. Börja med att konfigurera en utvecklingsdator med alla verktyg du behöver. Skapa sedan nödvändiga molnresurser i Azure.
I det här avsnittet av självstudien lär du dig att:
- Konfigurera en virtuell dator för utveckling.
- Konfigurera en IoT Hub- och molnlagring för din utvecklingsmiljö som ska användas.
Förutsättningar
Den här artikeln är en del av en serie för en självstudie om hur du använder Azure Mašinsko učenje på IoT Edge. Varje artikel i serien bygger på arbetet i föregående artikel. Om du har kommit till den här artikeln direkt kan du gå till den första artikeln i serien.
Konfigurera den virtuella utvecklingsdatorn
Det här steget utförs vanligtvis av en molnutvecklare. En del av programvaran kan också vara till hjälp för en dataexpert.
Vi skapade ett PowerShell-skript som skapar en virtuell Azure-dator med många av de förutsättningar som redan har konfigurerats. Den virtuella dator som vi skapar måste kunna hantera kapslad virtualisering, vilket är anledningen till att vi valde en Standard_D8s_v3 datorstorlek.
Den virtuella utvecklingsdatorn kommer att konfigureras med:
- Windows 10
- Chocolaty
- Docker Desktop för Windows
- Git för Windows
- Git Credential Manager för Windows
- .NET Core SDK
- Python 3
- Visual Studio Code
- Azure PowerShell
- VS Code-tillägg
Den virtuella utvecklardatorn är inte absolut nödvändig – alla utvecklingsverktyg kan köras på en lokal dator. Vi rekommenderar dock starkt att du använder den virtuella datorn för att säkerställa lika villkor.
Det tar cirka 30 minuter att skapa och konfigurera den virtuella datorn.
Klona eller ladda ned Mašinsko učenje- och IoT Edge-exempellagringsplatsen till din lokala dator.
Öppna PowerShell som administratör och gå till katalogen \IoTEdgeAndMlSample\DevVM som finns under rotkatalogen där du laddade ned koden. Vi refererar till rotkatalogen för din källa som
srcdir
.cd c:\srcdir\IoTEdgeAndMlSample\DevVM
DevVM-katalogen innehåller de filer som behövs för att skapa en virtuell Azure-dator som är lämplig för att slutföra den här självstudien.
Kör följande kommando för att tillåta körning av skript. Välj Ja till Alla när du uppmanas att göra det.
Set-ExecutionPolicy Bypass -Scope Process
Kör Create-AzureDevVM.ps1.
.\Create-AzureDevVm.ps1
När du uppmanas att göra det anger du följande information:
- Azure-prenumerations-ID: Ditt prenumerations-ID, som finns i Azure-prenumerationer i portalen.
- Resursgruppnamn: Namnet på en ny eller befintlig resursgrupp i Azure.
- Plats: Välj en Azure-plats där den virtuella datorn ska skapas. Till exempel "USA, västra 2" eller "Europa, norra". Mer information finns i Azure-platser.
- Användarnamn: Ange ett minnesvärt namn för administratörskontot för den virtuella datorn.
- Lösenord: Ange ett lösenord för administratörskontot för den virtuella datorn.
Skriptet körs i flera minuter när det kör följande steg:
- Installerar Azure PowerShell Az-modulen.
- Uppmanar dig att logga in på Azure.
- Bekräftar informationen för att skapa den virtuella datorn. Tryck på y eller Retur för att fortsätta.
- Skapar resursgruppen om den inte finns.
- Distribuerar den virtuella datorn.
- Aktiverar Hyper-V på den virtuella datorn.
- Installerar programvarubehovet för utveckling och klonar exempellagringsplatsen.
- Startar om den virtuella datorn.
- Skapar en RDP-fil på skrivbordet för att ansluta till den virtuella datorn.
Om du uppmanas att starta om namnet på den virtuella datorn kan du kopiera dess namn från skriptutdata. Utdata visar också sökvägen till RDP-filen för att ansluta till den virtuella datorn.
Ange schema för automatisk avstängning
För att minska kostnaderna har den virtuella utvecklingsdatorn skapats med ett automatiskt avstängningsschema som är inställt på 1900 PST. Du kan behöva uppdatera den här inställningen beroende på din plats och ditt schema. Så här uppdaterar du avstängningsschemat:
I Azure-portalen går du till den virtuella dator som skriptet skapade.
Välj Automatisk avstängning under Åtgärder på menyn till vänster.
Justera den schemalagda avstängningen och tidszonen efter behov och välj Spara.
Ansluta till den virtuella utvecklingsdatorn
Nu när vi har skapat en virtuell dator måste vi slutföra installationen av den programvara som behövs för att slutföra självstudien.
Dubbelklicka på RDP-filen som skriptet skapade på skrivbordet.
Du får en dialogruta där det står att utgivaren av fjärranslutningen är okänd. Detta är acceptabelt, så välj Anslut.
Ange administratörslösenordet som du angav för att skapa den virtuella datorn och klicka på OK.
Du uppmanas att godkänna certifikatet för den virtuella datorn. Välj Ja.
Installera Visual Studio Code-tillägg
Nu när du har anslutit till utvecklingsdatorn lägger du till några användbara tillägg i Visual Studio Code för att göra utvecklingsupplevelsen enklare.
Anslut till den virtuella utvecklingsdatorn, öppna ett PowerShell-fönster och navigera till katalogen C:\source\IoTEdgeAndMlSample\DevVM . Den här katalogen skapades av skriptet som skapade den virtuella datorn.
cd C:\source\IoTEdgeAndMlSample\DevVM
Kör följande kommando för att tillåta körning av skript. Välj Ja till Alla när du uppmanas att göra det.
Set-ExecutionPolicy Bypass -Scope Process
Kör Visual Studio Code-tilläggsskriptet.
.\Enable-CodeExtensions.ps1
Skriptet körs i några minuter och installerar VS-kodtillägg:
- Azure IoT Edge
- Azure IoT Hub
- Python
- C#
- Docker
- PowerShell
Konfigurera IoT Hub och Storage
De här stegen utförs vanligtvis av en molnutvecklare.
Azure IoT Hub är kärnan i alla IoT-program eftersom det hanterar säker kommunikation mellan IoT-enheter och molnet. Det är den viktigaste samordningspunkten för driften av IoT Edge-maskininlärningslösningen.
IoT Hub använder vägar för att dirigera inkommande data från IoT-enheter till andra underordnade tjänster. Vi använder IoT Hub-vägar för att skicka enhetsdata till Azure Storage. I Azure Storage används enhetsdata av Azure Mašinsko učenje för att träna vår återstående RUL-klassificerare (livslängd).
Senare i självstudien använder vi IoT Hub för att konfigurera och hantera vår Azure IoT Edge-enhet.
I det här avsnittet använder du ett skript för att skapa en Azure IoT-hubb och ett Azure Storage-konto. I Azure-portalen konfigurerar du sedan en väg som vidarebefordrar data som tas emot av hubben till en Azure Storage-container. De här stegen tar cirka 10 minuter att slutföra.
Anslut till den virtuella utvecklingsdatorn, öppna ett PowerShell-fönster och gå till katalogen IoTHub .
cd C:\source\IoTEdgeAndMlSample\IoTHub
Kör skapandeskriptet. Använd samma värden för prenumerations-ID, plats och resursgrupp som du gjorde när du skapade den virtuella utvecklingsdatorn.
.\New-HubAndStorage.ps1 -SubscriptionId <subscription id> -Location <location> -ResourceGroupName <resource group>
- Du uppmanas att logga in i Azure.
- Skriptet bekräftar informationen för att skapa ditt hubb- och lagringskonto. Tryck på y eller Retur för att fortsätta.
Det tar cirka två minuter att köra skriptet. När det är klart matar skriptet ut namnet på IoT-hubben och lagringskontot.
Granska vägen till lagring i IoT Hub
Som en del av skapandet av IoT-hubben skapade skriptet som vi körde i föregående avsnitt också en anpassad slutpunkt och en väg. IoT Hub-vägar består av ett frågeuttryck och en slutpunkt. Om ett meddelande matchar uttrycket skickas data längs vägen till den associerade slutpunkten. Slutpunkter kan vara Event Hubs, Service Bus-köer och Ämnen. I det här fallet är slutpunkten en blobcontainer i ett lagringskonto. Nu ska vi använda Azure-portalen för att granska den väg som skapats av vårt skript.
Öppna Azure-portalen och gå till den resursgrupp som du använder för den här självstudien.
I listan över resurser väljer du den IoT Hub som skriptet skapade. Det kommer att ha ett namn som slutar med slumpmässiga tecken, till exempel
IotEdgeAndMlHub-jrujej6de6i7w
.Välj Meddelanderoutning under Hubbinställningar på menyn till vänster.
På sidan Meddelanderoutning väljer du fliken Anpassade slutpunkter .
Expandera avsnittet Lagring :
Vi ser att turbofanDeviceStorage finns i listan över anpassade slutpunkter. Observera följande egenskaper för den här slutpunkten:
- Den pekar på bloblagringscontainern som du skapade med namnet
devicedata
enligt containernamnet. - Filnamnsformatet har ordet "partition" i namnet. Vi tycker att det här formatet är mer praktiskt för de filåtgärder som vi kommer att göra med Azure Notebooks senare i den här självstudien.
- Dess status bör vara felfri.
- Den pekar på bloblagringscontainern som du skapade med namnet
Välj fliken Vägar .
Välj den väg som heter turbofanDeviceDataToStorage.
Observera att vägens slutpunkt är turbofanDeviceStorage-slutpunkten på sidan Routningsinformation.
Titta på routningsfrågan, som är inställd på true. Den här inställningen innebär att alla enhetstelemetrimeddelanden matchar den här vägen. och därför skickas alla meddelanden till turbofanDeviceStorage-slutpunkten .
Eftersom inga ändringar har gjorts stänger du bara den här sidan.
Rensa resurser
Den här självstudien är en del av en uppsättning där varje artikel bygger på det arbete som utförts i föregående. Vänta med att rensa alla resurser tills du har slutfört den sista självstudien.
Nästa steg
I den här artikeln skapade vi en IoT Hub och konfigurerade en väg till ett Azure Storage-konto. Därefter skickar vi data från en uppsättning simulerade enheter via IoT Hub till lagringskontot. Senare i självstudien, när vi har konfigurerat vår IoT Edge-enhet och moduler, kommer vi att gå tillbaka till vägar och titta lite mer på routningsfrågan.
Fortsätt till nästa artikel för att skapa en simulerad enhet att övervaka.