Migrera enheter till Azure IoT Hub
Om du bestämmer dig för att migrera från en IoT Central-baserad lösning till en IoT Hub-baserad lösning måste du ändra konfigurationen för alla enheter som för närvarande är anslutna till ditt program. IoTC Migrator-verktyget automatiserar den här enhetsmigreringsprocessen.
Migreringsverktyget:
- Skapar enhetsregistreringar i din IoT-hubb för de enheter som för närvarande ansluter till ditt IoT Central-program.
- Använder ett kommando för att skicka ID-omfånget för DPS-instansen (Device Provisioning Service) som är associerad med din IoT-hubb till dina enheter.
Verktyget kräver att dina anslutna enheter implementerar ett DeviceMove-kommando som definieras i enhetsmallen i IoT Central-programmet. Kommandonyttolasten är ID-omfånget för DPS-målinstansen. När en enhet tar emot det här kommandot bör den:
- Sluta skicka telemetri och koppla från IoT Central-programmet.
- Etablera sig med DPS med hjälp av det nya ID-omfånget i kommandonyttolasten.
- Använd etableringsresultatet för att ansluta till mål-IoT-hubben och börja skicka telemetri igen.
Dricks
Du kan också använda migreringsverktyget för att migrera enheter mellan IoT Cental-program eller från en IoT-hubb till ett IoT Central-program.
Minimera störningar
För att minimera störningar kan du migrera dina enheter i faser. Migreringsverktyget använder enhetsgrupper för att flytta enheter från IoT Central till din IoT-hubb. Dela upp enhetsflottan i enhetsgrupper som enheter i Texas, enheter i New York och enheter i resten av USA. Migrera sedan varje enhetsgrupp separat.
Varning
Du kan inte lägga till otilldelade enheter i en enhetsgrupp. Därför kan du för närvarande inte använda migreringsverktyget för att migrera otilldelade enheter.
Minimera affärspåverkan genom att följa dessa steg:
Skapa PaaS-lösningen och kör den parallellt med IoT Central-programmet.
Konfigurera kontinuerlig dataexport i IoT Central-programmet och lämpliga vägar till PaaS-lösningens IoT-hubb. Omvandla båda datakanalerna och lagra data i samma datasjö.
Migrera enheterna i faser och verifiera vid varje fas. Om något inte går som planerat kan du återställa enheterna till IoT Central.
När du har migrerat alla enheter till PaaS-lösningen och helt exporterat dina data från IoT Central kan du ta bort enheterna från IoT Central-lösningen.
Efter migreringen tas enheterna inte bort automatiskt från IoT Central-programmet. Dessa enheter debiteras fortfarande som IoT Central-avgifter för alla etablerade enheter i programmet. När du tar bort dessa enheter från IoT Central-programmet debiteras du inte längre för dem. Ta slutligen bort IoT Central-programmet.
Flytta befintliga data från IoT Central
Du kan konfigurera IoT Central för kontinuerlig export av telemetri- och egenskapsvärden. Exportmål är datalager som Azure Data Lake, Event Hubs och Webhooks. Du kan exportera enhetsmallar med antingen IoT Central-användargränssnittet eller REST-API:et. Med REST-API:et kan du exportera användarna i ett IoT Central-program.
Förutsättningar
Du behöver följande förutsättningar för att slutföra enhetsmigreringsstegen:
- Det IoT Central-källprogram där dina enheter för närvarande ansluter.
- Mål-IoT-hubben där du vill flytta enheterna till. Den här IoT-hubben måste vara länkad till en DPS-instans.
- node.js och npm installerade på den lokala datorn där du kör migreringsverktyget.
Enhetskrav
De enheter som du vill migrera måste implementera kommandot DeviceMove i en komponent som kallas migrering. Kommandonyttolasten innehåller ID-omfånget för DPS-målinstansen. Lagringsplatsen för migreringsverktyget innehåller ett exempel på en DTDL-komponentmodell som definierar kommandot DeviceMove . Du kan lägga till den här komponenten i dina befintliga enhetsmallar.
Verktyget förutsätter att komponentnamnet är migration
och att gränssnitts-ID:t är dtmi:azureiot:DeviceMigration;1
:
Verktygslagringsplatsen innehåller även exempelkod som visar hur en enhet ska implementera kommandot DeviceMove .
Verktygskonfiguration
Slutför följande installationsaktiviteter för att förbereda migreringen:
Microsoft Entra-program
Migreringsverktyget kräver en Microsoft Entra-programregistrering för att kunna autentisera med din Azure-prenumeration:
Gå till Microsoft Entra-ID > för Azure-portalen > Appregistreringar.
Välj Ny registrering.
Ange ett namn som "IoTC Migrator app".
Välj Konton i valfri organisationskatalog (Alla Microsoft Entra-kataloger – Multitenant) och personliga Microsoft-konton (t.ex. Skype, Xbox).
Välj Ensidesprogram (SPA).
Ange
http://localhost:3000
som omdirigerings-URI. Du lägger till det här värdet i migratorappkonfigurationen senare.Välj Registrera.
Anteckna värdena för program-ID och katalog-ID (klientorganisation). Du använder dessa värden senare för att konfigurera migreringsappen:
Gå till sidan Manifest i registreringen och ersätt innehållet i
requiredResourceAccess
med följande konfiguration:[ { "resourceAppId": "9edfcdd9-0bc5-4bd4-b287-c3afc716aac7", "resourceAccess": [ { "id": "73792908-5709-46da-9a68-098589599db6", "type": "Scope" } ] }, { "resourceAppId": "797f4846-ba00-4fd7-ba43-dac1f8f63013", "resourceAccess": [ { "id": "41094075-9dad-400e-a0bd-54e686782033", "type": "Scope" } ] }, { "resourceAppId": "00000003-0000-0000-c000-000000000000", "resourceAccess": [ { "id": "e1fe6dd8-ba31-4d61-89e7-88639da4683d", "type": "Scope" } ] } ]
Spara ändringarna.
Lägg till enhetsnycklarna i DPS
Lägg till signaturnycklarna för delad åtkomst eller X.509-certifikaten från ditt IoT Central-program i dps-allokeringsgruppen.
Om dina enheter använder signaturer för delad åtkomst för att autentisera till ditt IoT Central-program:
- I ditt IoT Central-program går du till Behörigheter > Enhetsanslutningsgrupper.
- Välj den registreringsgrupp som enheterna använder.
- Anteckna de primära och sekundära nycklarna.
- I Azure-portalen navigerar du till din DPS-instans.
- Välj Hantera registreringar.
- Skapa en ny registrering och ange attesteringstypen till Symmetrisk nyckel, avmarkera Autogenerera nycklar och lägg sedan till de primära och sekundära nycklar som du antecknade.
- Välj Spara.
Om dina enheter använder X.509-certifikat för att autentisera till ditt IoT Central-program:
- I Azure-portalen navigerar du till din DPS-instans.
- Välj Certifikat och välj sedan Lägg till.
- Ladda upp och verifiera de rotcertifikat eller mellanliggande X.509-certifikat som du använder i ditt IoT Central-program.
- Välj Hantera registreringar.
- Skapa en ny registrering och ange attesteringstypen till Certifikat och välj sedan de primära och sekundära certifikat som du laddade upp.
- Välj Spara.
Ladda ned och konfigurera migreringsverktyget
Ladda ned eller klona en kopia av migreringsverktyget till din lokala dator:
git clone https://github.com/Azure/iotc-migrator.git
Skapa en .env-fil i roten på den nedladdade lagringsplatsen. REACT_APP_AAD_APP_CLIENT_ID
Uppdatera värdena , REACT_APP_AAD_APP_TENANT_ID
och REACT_APP_AAD_APP_REDIRECT_URI
med värdena från Microsoft Entra-programregistreringen som du skapade tidigare. Spara sedan ändringarna:
PORT=3000
REACT_APP_AAD_APP_CLIENT_ID=<your-AAD-Application-(client)-ID>
REACT_APP_AAD_APP_TENANT_ID=<your-AAD-Directory-(tenant)-ID>
REACT_APP_AAD_APP_REDIRECT_URI=http://localhost:3000
Dricks
Kontrollera att matchar REACT_APP_AAD_APP_REDIRECT_URI
omdirigerings-URI:n som du använde i din Microsoft Entra-programregistrering.
I kommandoradsmiljön navigerar du till lagringsplatsens iotc-migrator
rot. Kör sedan följande kommandon för att installera de nödvändiga node.js paketen och kör sedan verktyget:
npm install
npm start
När migreringsappen har startat navigerar du till för att http://localhost:3000
visa verktyget. Logga in när du uppmanas att göra det.
Migrera enheter
Använd verktyget för att migrera dina enheter i batchar. Ange migreringsinformationen på sidan Ny migrering :
- Ange ett namn för migreringen.
- Välj en enhetsgrupp från ditt IoT Central-program.
- Välj en enhetsmall som innehåller kommandodefinitionen DeviceMove .
- Välj Flytta till din egen Azure IoT Hub.
- Välj DPS-instansen som är länkad till mål-IoT-hubben.
- Välj Migrera. Verktyget uppmanar dig att kopiera nycklarna från ditt IoT Central-program till DPS-registreringsgruppen. Du har tidigare slutfört det här steget i steget Lägg till enhetsnycklar i DPS .
Verktyget registrerar nu alla anslutna enheter som matchade målenhetsfiltret i mål-IoT-hubben. Verktyget skapar sedan ett jobb i IoT Central-programmet för att anropa metoden DeviceMove på alla dessa enheter. Kommandonyttolasten innehåller ID-omfånget för DPS-målinstansen.
Verifiera migrering
Använd sidan Migreringsstatus i migreringsverktyget för att övervaka förloppet:
Välj ett jobb på sidan Migreringsstatus för att visa jobbstatusen i ditt IoT Central-program. Använd den här sidan om du vill visa status för de enskilda enheterna i jobbet:
Enheter som har migrerats: