Enhetsuppdatering för IoT Hub agentöversikt
Enhetsuppdateringsagenten består av två konceptuella lager:
- Gränssnittsskiktet bygger på Azure IoT-Plug and Play, så att meddelanden kan flöda mellan enhetsuppdateringsagenten och enhetsuppdateringstjänsten.
- Plattformsskiktet ansvarar för de övergripande uppdateringsåtgärderna för nedladdning, installation och tillämpning som kan vara plattforms- eller enhetsspecifika.
Gränssnittsskiktet
Gränssnittsskiktet består av kärngränssnittet för enhetsuppdatering och gränssnittet för enhetsinformation.
Dessa gränssnitt förlitar sig på en konfigurationsfil för de enhetsspecifika värden som måste rapporteras till enhetsuppdateringstjänsterna. Mer information finns i Konfigurationsfil för enhetsuppdatering.
Kärngränssnitt för enhetsuppdatering
Kärngränssnittet för enhetsuppdatering är den primära kommunikationskanalen mellan enhetsuppdateringsagenten och tjänsterna. Mer information finns i Core-gränssnittet för enhetsuppdatering.
Gränssnitt för enhetsinformation
Gränssnittet för enhetsinformation används för att implementera Azure IoT PnP DeviceInformation
gränssnittet. Mer information finns i Gränssnittet för enhetsinformation.
Plattformsskiktet
Linux-plattformsskiktet integreras med leveransoptimering för nedladdningar och används i vår Raspberry Pi-referensbild och alla klienter som körs på Linux-system.
Implementeringen av Linux-plattformens lager finns i src/platform_layers/linux_platform_layer
och integreras med leveransoptimeringsklienten för nedladdningar.
Det här lagret kan integreras med olika uppdateringshanterare för att implementera installationsprogrammet. Till exempel uppdateringshanteraren SWUpdate
, Apt
uppdateringshanteraren och Script
uppdateringshanteraren.
Om du väljer att implementera med din egen hämtare i stället för Leveransoptimering, se till att granska kraven för stora filnedladdningar.
Uppdateringshanterare
Uppdateringshanterare används för att anropa installationsprogram eller kommandon för att göra en over-the-air-uppdatering. Du kan antingen använda befintliga uppdateringsinnehållshanterare eller implementera en anpassad innehållshanterare som kan anropa alla installationsprogram och köra den trådlösa uppdateringen som behövs för ditt användningsfall.
Uppdatera till den senaste enhetsuppdateringsagenten
Vi har lagt till många nya funktioner i enhetsuppdateringsagenten i den senaste offentliga förhandsversionsuppdateringsagenten (version 0.8.0). Mer information finns i listan över nya funktioner.
Om du använder enhetsuppdateringsagentversionerna 0.6.0 eller 0.7.0 migrerar du till den senaste agentversionen 0.8.0. Mer information finns i Migrera enheter och grupper till offentlig förhandsversionsuppdatering.
Du kan kontrollera den installerade versionen av enhetsuppdateringsagenten och leveransoptimeringsagenten i avsnittet enhetsegenskaper i IoT-enhetstvillingen. Mer information finns i enhetsegenskaper för kärngränssnittet för enhetsuppdatering.
Nästa steg
Förstå konfigurationsfilen för enhetsuppdateringsagenten
Du kan använda följande självstudier för en enkel demonstration av enhetsuppdatering för IoT Hub:
Bilduppdatering: Komma igång med Raspberry Pi 3 B+ Reference Yocto Image utökningsbar via öppen källkod för att skapa egna avbildningar för annan arkitektur efter behov.
Paketuppdatering: Komma igång med Ubuntu Server 18.04 x64-paketagent
Proxyuppdatering: Komma igång med binär agent för enhetsuppdatering för underordnade enheter
Komma igång Using Ubuntu (18.04 x64) Simulator Reference Agent
Självstudie om enhetsuppdatering för Azure IoT Hub för Azure-Realtidsoperativsystem