Kurz: Nasazení Azure Machine Learning jako modulu IoT Edge (Preview)Tutorial: Deploy Azure Machine Learning as an IoT Edge module (preview)

Pomocí Azure Notebooks můžete vyvinout modul Machine Learning a nasadit ho do zařízení se systémem Linux se spuštěným Azure IoT Edge.Use Azure Notebooks to develop a machine learning module and deploy it to a Linux device running Azure IoT Edge.

Moduly IoT Edge můžete použít k nasazení kódu, který implementuje obchodní logiku přímo do zařízení IoT Edge.You can use IoT Edge modules to deploy code that implements your business logic directly to your IoT Edge devices. Tento kurz vás provede nasazením modulu Azure Machine Learning, který předpovídá, kdy zařízení selže, na základě simulovaných dat teploty počítače.This tutorial walks you through deploying an Azure Machine Learning module that predicts when a device fails based on simulated machine temperature data. Další informace o Azure Machine Learning v IoT Edge najdete v dokumentaci Azure Machine Learning.For more information about Azure Machine Learning on IoT Edge, see Azure Machine Learning documentation.

Modul Azure Machine Learning, který vytvoříte v tomto kurzu, přečte data o prostředí vygenerovaná zařízením a označí zprávy jako standardní nebo neobvyklé.The Azure Machine Learning module that you create in this tutorial reads the environmental data generated by your device and labels the messages as anomalous or not.

V tomto kurzu se naučíte:In this tutorial, you learn how to:

  • Vytvořit modul Azure Machine LearningCreate an Azure Machine Learning module
  • Doručit kontejner modulu do služby Azure Container RegistryPush a module container to an Azure container registry
  • Nasadit modul Azure Machine Learning na zařízení IoT EdgeDeploy an Azure Machine Learning module to your IoT Edge device
  • Zobrazení vygenerovaných datView generated data

Poznámka

Moduly Azure Machine Learning na Azure IoT Edge jsou ve verzi Public Preview.Azure Machine Learning modules on Azure IoT Edge are in public preview.

Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet před tím, než začnete.If you don't have an Azure subscription, create a free account before you begin.

PředpokladyPrerequisites

Zařízení Azure IoT Edge:An Azure IoT Edge device:

  • Pomocí postupu v rychlém startu pro Linuxmůžete použít virtuální počítač Azure jako zařízení IoT Edge.You can use an Azure virtual machine as an IoT Edge device by following the steps in the quickstart for Linux.
  • Modul Azure Machine Learning nepodporuje kontejnery Windows.The Azure Machine Learning module doesn't support Windows containers.
  • Modul Azure Machine Learning nepodporuje procesory ARM.The Azure Machine Learning module doesn't support ARM processors.

Cloudové prostředky:Cloud resources:

  • IoT Hub úrovně Free nebo Standard v Azure.A free or standard-tier IoT Hub in Azure.
  • Pracovní prostor služby Azure Machine Learning.An Azure Machine Learning workspace. Postupujte podle pokynů v části použití Azure Portal k tomu, abyste mohli začít pracovat s Azure Machine Learning a Naučte se, jak ho používat.Follow the instructions in Use the Azure portal to get started with Azure Machine Learning to create one and learn how to use it.
    • Poznamenejte si název pracovního prostoru, skupinu prostředků a ID předplatného.Make a note of the workspace name, resource group, and subscription ID. Tyto hodnoty jsou všechny dostupné v přehledu pracovního prostoru v Azure Portal.These values are all available on the workspace overview in the Azure portal. Tyto hodnoty použijete později v tomto kurzu, abyste k prostředkům pracovního prostoru připojili notebook Azure.You'll use these values later in the tutorial to connect an Azure notebook to your workspace resources.

Vytvořit a nasadit modul Azure Machine LearningCreate and deploy Azure Machine Learning module

V této části převedete školicí soubory modelu Machine Learning a do kontejneru Azure Machine Learning.In this section, you convert trained machine learning model files and into an Azure Machine Learning container. Veškeré komponenty potřebné pro image Dockeru najdete v úložišti Git AI Toolkit pro Azure IoT Edge.All the components required for the Docker image are in the AI Toolkit for Azure IoT Edge Git repo. Pomocí těchto kroků nahrajte toto úložiště do Microsoft Azure Notebooks a vytvořte kontejner a vložte ho do Azure Container Registry.Follow these steps to upload that repository into Microsoft Azure Notebooks to create the container and push it to Azure Container Registry.

  1. Přejděte do projektu Azure Notebooks.Navigate to your Azure Notebooks projects. Z pracovního prostoru Azure Machine Learning můžete získat přístup v Azure Portal nebo přihlášením k Microsoft Azure Notebooks s účtem Azure.You can get there from your Azure Machine Learning workspace in the Azure portal or by signing in to Microsoft Azure Notebooks with your Azure account.

  2. Vyberte nahrát úložiště GitHub.Select Upload GitHub Repo.

  3. Zadejte následující název úložiště GitHub: Azure/ai-toolkit-iot-edge.Provide the following GitHub repository name: Azure/ai-toolkit-iot-edge. Zrušte políčko veřejné pole, pokud chcete zachovat projekt soukromý.Uncheck the Public box if you want to keep your project private. Vyberte importovat.Select Import.

  4. Po dokončení importu přejděte do nového projektu AI-Toolkit-IoT-Edge a otevřete složku kurz detekce anomálií IoT Edge .Once the import is finished, navigate into the new ai-toolkit-iot-edge project and open the IoT Edge anomaly detection tutorial folder.

  5. Ověřte, že je váš projekt spuštěný.Verify that your project is running. Pokud ne, vyberte Spustit při bezplatném COMPUTE.If not, select Run on Free Compute.

    Spustit na bezplatné výpočetní prostředky

  6. Otevřete soubor aml_config/config.JSON .Open the aml_config/config.json file.

  7. Upravte konfigurační soubor tak, aby zahrnoval hodnoty pro ID předplatného Azure, skupinu prostředků ve vašem předplatném a název pracovního prostoru Azure Machine Learning.Edit the config file to include the values for your Azure subscription ID, a resource group in your subscription, and your Azure Machine Learning workspace name. Všechny tyto hodnoty můžete získat z části Přehled pracovního prostoru v Azure.You can get all these values from the Overview section of your workspace in Azure.

  8. Uložte konfigurační soubor.Save the config file.

  9. Otevřete soubor. ipynb 00-anomálie-Detection-tutorial .Open the 00-anomaly-detection-tutorial.ipynb file.

  10. Po zobrazení výzvy vyberte jádro Python 3,6 a potom vyberte nastavit jádro.When prompted, select the Python 3.6 kernel then select Set Kernel.

  11. Upravte první buňku v poznámkovém bloku podle pokynů v komentářích.Edit the first cell in the notebook according to the instructions in the comments. Použijte stejnou skupinu prostředků, ID předplatného a název pracovního prostoru, který jste přidali do konfiguračního souboru.Use the same resource group, subscription ID, and workspace name that you added to the config file.

  12. Buňky v poznámkovém bloku spustíte tak, že je vyberete a vyberete Spustit nebo stisknout Shift + Enter.Run the cells in the notebook by selecting them and selecting Run or pressing Shift + Enter.

    Tip

    Některé buňky v poznámkovém bloku s kurzem detekce anomálií jsou volitelné, protože vytvářejí prostředky, které někteří uživatelé mohou nebo nemusí zatím mít, například IoT Hub.Some of the cells in the anomaly detection tutorial notebook are optional, because they create resources that some users may or may not have yet, like an IoT Hub. Pokud do první buňky vložíte své informace o zdroji, zobrazí se chyby, pokud spustíte buňky, které vytvoří nové prostředky, protože Azure nevytváří duplicitní prostředky.If you put your existing resource information in the first cell, you'll receive errors if you run the cells that create new resources because Azure won't create duplicate resources. To je přesné a můžete ignorovat chyby nebo tyto volitelné oddíly přeskočit zcela.This is fine, and you can ignore the errors or skip those optional sections entirely.

Po dokončení všech kroků v poznámkovém bloku jste si prosadili model detekce anomálií, vytvořili ho jako image kontejneru Docker a tuto image jste Azure Container Registry.By completing all the steps in the notebook, you trained an anomaly detection model, built it as a Docker container image, and pushed that image to Azure Container Registry. Potom model otestujete a nakonec ho nasadíte do zařízení IoT Edge.Then, you tested the model and finally deployed it to your IoT Edge device.

Zobrazit úložiště kontejneruView container repository

Ověřte, že se image kontejneru úspěšně vytvořila a uložila do služby Azure Container Registry přidružené k vašemu prostředí Machine Learning.Check that your container image was successfully created and stored in the Azure container registry associated with your machine learning environment. Poznámkový blok, který jste použili v předchozí části, automaticky poskytl image kontejneru a přihlašovací údaje registru k vašemu IoT Edge zařízení, ale měli byste znát, kde jsou uložené, abyste je mohli později najít.The notebook that you used in the previous section automatically provided the container image and the registry credentials to your IoT Edge device, but you should know where they're stored so that you can find the information yourself later.

  1. V Azure Portalpřejděte do pracovního prostoru služby Machine Learning.In the Azure portal, navigate to your Machine Learning service workspace.

  2. V části Přehled jsou uvedeny podrobnosti o pracovním prostoru spolu s přidruženými prostředky.The Overview section lists the workspace details as well its associated resources. Vyberte hodnotu registru , kterou by měl být název vašeho pracovního prostoru následovaný náhodnými čísly.Select the Registry value, which should be your workspace name followed by random numbers.

  3. V registru kontejneru vyberte úložiště.In the container registry, select Repositories. Mělo by se zobrazit úložiště s názvem tempanomalydetection , které bylo vytvořeno pomocí poznámkového bloku, který jste spustili v předchozí části.You should see a repository called tempanomalydetection that was created by the notebook you ran in the earlier section.

  4. Vyberte tempanomalydetection.Select tempanomalydetection. Měli byste vidět, že úložiště má jednu značku: 1.You should see that the repository has one tag: 1.

    Teď, když znáte název registru, název úložiště a značku, znáte úplnou cestu k bitové kopii kontejneru.Now that you know the registry name, repository name, and tag, you know the full image path of the container. Cesty obrázků vypadají jako <registry_name>. azurecr.IO/tempanomalydetection:1.Image paths look like <registry_name>.azurecr.io/tempanomalydetection:1. K nasazení tohoto kontejneru do IoT Edge zařízení můžete použít cestu k bitové kopii.You can use the image path to deploy this container to IoT Edge devices.

  5. V registru kontejnerů vyberte přístupové klíče.In the container registry, select Access keys. Měl by se zobrazit počet přihlašovacích údajů, včetně přihlašovacího serveru a uživatelského jménaa hesla pro uživatele s oprávněním správce.You should see a number of access credentials, including Login server and the Username, and Password for an admin user.

    Tyto přihlašovací údaje mohou být zahrnuty v manifestu nasazení, aby mohl vaše zařízení IoT Edge mít přístup k vyžádané image kontejneru z registru.These credentials can be included in the deployment manifest to give your IoT Edge device access to pull container images from the registry.

Nyní víte, kde je uložená bitová kopie kontejneru Machine Learning.Now you know where the Machine Learning container image is stored. V další části se provedou kroky pro zobrazení kontejneru, který je spuštěný jako modul na zařízení IoT Edge.The next section walks through steps to view the container running as a module on your IoT Edge device.

Zobrazení vygenerovaných datView generated data

Můžete zobrazit zprávy generované každým modulem IoT Edge a také zprávy, které se doručují do vašeho IoT Hubu.You can view messages being generated by each IoT Edge module, and you can view messages that are delivered to your IoT hub.

Zobrazení dat na zařízení IoT EdgeView data on your IoT Edge device

Na zařízení IoT Edge můžete zobrazit zprávy odesílané z každého jednotlivého modulu.On your IoT Edge device, you can view the messages being sent from every individual module.

Pro zvýšení oprávnění ke spouštění příkazů iotedge možná budete muset použít sudo.You may need to use sudo for elevated permissions to run iotedge commands. Odhlášení a opětovné přihlášení do zařízení automaticky aktualizuje vaše oprávnění.Signing out and signing back in to your device automatically updates your permissions.

  1. Takto zobrazíte všechny moduly na zařízení IoT Edge.View all modules on your IoT Edge device.

    iotedge list
    
  2. Takto zobrazíte zprávy odesílané z konkrétního zařízení.View the messages being sent from a specific device. Použijte název modulu z výstupu předchozího příkazu.Use the module name from the output of the previous command.

    iotedge logs <module_name> -f
    

Zobrazení dat odesílaných do IoT HubuView data arriving at your IoT hub

Zprávy ze zařízení do cloudu, které služba IoT Hub přijme, můžete zobrazit pomocí rozšíření azure IoT Hub Toolkit pro Visual Studio Code (dříve rozšíření Azure IoT Toolkit).You can view the device-to-cloud messages that your IoT hub receives by using the Azure IoT Hub Toolkit extension for Visual Studio Code (formerly Azure IoT Toolkit extension).

Následující kroky ukazují, jak nastavit Visual Studio Code k monitorování zpráv zařízení-cloud, které přicházejí do vašeho IoT Hubu.The following steps show you how to set up Visual Studio Code to monitor device-to-cloud messages that arrive at your IoT hub.

  1. V editoru Visual Studio Code vyberte IoT Hub Devices (zařízení IoT Hubu).In Visual Studio Code, select IoT Hub Devices.

  2. Vyberte ... a potom v nabídce vyberte Set IoT Hub Connection String (Nastavení připojovacího řetězce IoT Hubu).Select ... then select Set IoT Hub Connection String from the menu.

    Nastavit připojovací řetězec IoT Hub

  3. Do textového pole, které se otevře nahoře na stránce, zadejte připojovací řetězec iothubowner svého IoT Hubu.In the text box that opens at the top of the page, enter the iothubowner connection string for your IoT Hub. Vaše zařízení IoT Edge by se mělo zobrazit v seznamu zařízení IoT Hubu.Your IoT Edge device should appear in the IoT Hub Devices list.

  4. Vyberte ... a pak vyberte Spustit monitorování předdefinovaného koncového bodu události.Select ... again then select Start Monitoring Built-in Event Endpoint.

  5. Sledujte zprávy, které přicházejí každých pět sekund ze senzoru tempSenzor.Observe the messages coming from tempSensor every five seconds. Tělo zprávy obsahuje vlastnost s názvem anomálii, která machinelearningmodule poskytuje hodnotu true nebo false.The message body contains a property called anomaly, which the machinelearningmodule provides with a true or false value. Pokud bylo spuštění modelu úspěšné, obsahuje vlastnost AzureMLResponse hodnotu „OK“.The AzureMLResponse property contains the value "OK" if the model ran successfully.

    Odpověď Azure Machine Learning v těle zprávy

Vyčištění prostředkůClean up resources

Pokud máte v plánu pokračovat k dalšímu doporučenému článku, můžete si vytvořené prostředky a konfigurace uschovat a znovu je použít.If you plan to continue to the next recommended article, you can keep the resources and configurations that you created and reuse them. Také můžete dál používat stejné zařízení IoT Edge jako testovací zařízení.You can also keep using the same IoT Edge device as a test device.

Jinak můžete místní konfigurace a prostředky Azure vytvořené v tomto článku odstranit, abyste se vyhnuli poplatkům.Otherwise, you can delete the local configurations and the Azure resources that you created in this article to avoid charges.

Odstranění prostředků AzureDelete Azure resources

Odstranění prostředků Azure a skupin prostředků je nevratná akce.Deleting Azure resources and resource groups is irreversible. Ujistěte se, že nechtěně neodstraníte nesprávnou skupinu prostředků nebo prostředky.Make sure that you don't accidentally delete the wrong resource group or resources. Pokud jste službu IoT Hub vytvořili uvnitř existující skupiny prostředků obsahující prostředky, které chcete zachovat, odstraňte místo skupiny prostředků pouze samotný prostředek služby IoT Hub.If you created the IoT hub inside an existing resource group that has resources that you want to keep, delete only the IoT hub resource itself, instead of deleting the resource group.

Odstranění prostředků:To delete the resources:

  1. Přihlaste se k webu Azure Portal a potom vyberte Skupiny prostředků.Sign in to the Azure portal and select Resource groups.

  2. Vyberte název skupiny prostředků, která obsahuje vaše testovací prostředky služby IoT Edge.Select the name of the resource group that contains your IoT Edge test resources.

  3. Projděte si seznam prostředků ve vaší skupině prostředků.Review the list of resources contained in your resource group. Pokud chcete odstranit všechny prostředky, můžete vybrat možnost Odstranit skupinu prostředků.If you want to delete all of them, you can select Delete resource group. Pokud chcete odstranit pouze některé prostředky, můžete na ně kliknout a odstranit je jednotlivě.If you want to delete only some of them, you can click into each resource to delete them individually.

Další krokyNext steps

V tomto kurzu jste nasadili modul IoT Edge, který používá technologii Azure Machine Learning.In this tutorial, you deployed an IoT Edge module powered by Azure Machine Learning. Pokračujte některým z dalších kurzů, ve kterých poznáte další způsoby, jak vám může Azure IoT Edge pomoci přeměnit data na obchodní informace o hraničním zařízení.You can continue on to any of the other tutorials to learn about other ways that Azure IoT Edge can help you turn data into business insights at the edge.