Apparaatupdate voor Azure IoT Hub met behulp van de pakketagent op Ubuntu Server 18.04 x64
Apparaatupdate voor IoT Hub ondersteunt twee soorten updates: op basis van afbeeldingen en op basis van pakketten.
Updates op basis van pakketten zijn gerichte updates die alleen een specifiek onderdeel of specifieke toepassing op het apparaat wijzigen. Ze leiden tot een lager verbruik van bandbreedte en verminderen de tijd die nodig is om de update te downloaden en te installeren. Updates op basis van pakketten zorgen doorgaans ook voor minder downtime van apparaten bij het toepassen van een update en voorkomen de overhead van het maken van afbeeldingen. Ze gebruiken een APT-manifest dat de Agent voor apparaatupdates voorziet van de informatie die nodig is voor het downloaden en installeren van de pakketten die zijn opgegeven in het APT-manifestbestand (evenals hun afhankelijkheden) van een aangewezen opslagplaats.
In deze end-to-end zelfstudie wordt u door het bijwerken van Azure IoT Edge op Ubuntu Server 18.04 x64 met behulp van de device update-pakketagent. Hoewel in de zelfstudie wordt gedemonstreerd hoe IoT Edge bijwerken, kunt u met behulp van vergelijkbare stappen andere pakketten bijwerken, zoals de container-engine die wordt gebruikt.
De hulpprogramma's en concepten in deze zelfstudie zijn nog steeds van toepassing, zelfs als u van plan bent een andere platformconfiguratie voor het besturingssysteem te gebruiken. Voltooi deze inleiding tot een end-to-end-updateproces en kies vervolgens de gewenste vorm van bijwerken en besturingssysteemplatform om de details te bekijken.
In deze zelfstudie leert u het volgende:
- De Agent voor apparaatupdates en de afhankelijkheden ervan downloaden en installeren
- Een tag toevoegen aan uw apparaat
- Een update importeren
- Een apparaatgroep maken
- Een pakketupdate implementeren
- De update-implementatie bewaken
Vereisten
- Als u dit nog niet hebt gedaan, maakt u een Apparaatupdate-accounten -exemplaar , inclusief het configureren van een IoT Hub.
- De connection string voor een IoT Edge apparaat.
Een apparaat voorbereiden
De knop Automated Deploy to Azure gebruiken
Voor het gemak wordt in deze zelfstudie een cloud-init-sjabloon Azure Resource Manager gebruikt om snel een virtuele Ubuntu 18.04 LTS-machine in te stellen. Het installeert zowel de Azure IoT Edge-runtime als de device update-pakketagent en configureert vervolgens automatisch het apparaat met inrichtingsgegevens met behulp van het apparaat-connection string voor een IoT Edge-apparaat (vereiste) dat u oplevert. De Azure Resource Manager voorkomt ook dat u een SSH-sessie moet starten om de installatie te voltooien.
Klik op de onderstaande knop om te beginnen:
Vul in het zojuist geopende venster de beschikbare formuliervelden in:
Abonnement: het actieve Azure-abonnement om de virtuele machine in te implementeren.
Resourcegroep: een bestaande of nieuwe resourcegroep die de virtuele machine en de bijbehorende resources bevat.
DNS-label voorvoegsel: een vereiste waarde van uw keuze die wordt gebruikt om de hostnaam van de virtuele machine als voorvoegsel te geven.
Gebruikersnaam van beheerder: een gebruikersnaam, die rootbevoegdheden krijgt bij de implementatie.
Apparaatverbindingsreeks: een apparaat connection string een apparaat dat is gemaakt binnen de beoogde IoT Hub.
VM-grootte: de grootte van de virtuele machine die moet worden geïmplementeerd
Versie van het Ubuntu-besturingssysteem: de versie van het Ubuntu-besturingssysteem dat moet worden geïnstalleerd op de virtuele basismachine. Laat de standaardwaarde ongewijzigd omdat deze al wordt ingesteld op Ubuntu 18.04-LTS.
Locatie: de geografische regio waar de virtuele machine in moet worden geïmplementeerd. Deze waarde wordt standaard ingesteld op de locatie van de geselecteerde resourcegroep.
Verificatietype: kies sshPublicKey of wachtwoord, afhankelijk van uw voorkeur.
Beheerderswachtwoord of -sleutel: de waarde van de openbare SSH-sleutel of de waarde van het wachtwoord, afhankelijk van de gekozen verificatietype.
Wanneer alle velden zijn ingevuld, selecteert u het selectievakje onder aan de pagina om de voorwaarden te accepteren en selecteert u Kopen om te beginnen met de implementatie.
Controleer of de implementatie correct is voltooid. Enkele minuten nadat de implementatie is voltooid, kan de installatie van de IoT Edge en de updateagent voor apparaatpakketten worden voltooid.
Er moet een virtuele-machineresource zijn geïmplementeerd in de geselecteerde resourcegroep. Noteer de computernaam die de notatie moet
vm-0000000000000hebben. Noteer ook de bijbehorende DNS-naam, die de indeling<dnsLabelPrefix>``<location>.cloudapp.azure.com moet hebben.De DNS-naam kan worden verkregen in het gedeelte Overzicht van de zojuist geïmplementeerde virtuele machine in Azure Portal.
Tip
Als u na de installatie SSH wilt gebruiken in deze VM, gebruikt u de bijbehorende DNS-naam met de opdracht :
ssh <adminUsername>@<DNS_Name>
(Optioneel) Een apparaat handmatig voorbereiden
Net als bij de stappen die door het cloud-init-scriptworden geautomatiseerd, volgen hier handmatige stappen voor het installeren en configureren van het apparaat. Deze stappen kunnen worden gebruikt om een fysiek apparaat voor te bereiden.
Volg de instructies om de runtime Azure IoT Edge installeren.
Notitie
De apparaatupdatepakketagent is niet afhankelijk van IoT Edge. Maar het is wel afhankelijk van de IoT Identity Service-daemon die is geïnstalleerd met IoT Edge (1.2.0 en hoger) om een identiteit te verkrijgen en verbinding te maken met IoT Hub.
Hoewel dit niet in deze zelfstudie wordt behandeld, kan de IoT Identity Service-daemonzelfstandig worden geïnstalleerd op Linux-IoT-apparaten. De volgorde van de installatie is van belang. De apparaatupdatepakketagent moet na de IoT Identity Service zijn geïnstalleerd. Anders wordt de pakketagent niet geregistreerd als een geautoriseerd onderdeel om verbinding te maken met IoT Hub.
Installeer vervolgens de .deb-pakketten van de Device Update-agent.
sudo apt-get install deviceupdate-agent deliveryoptimization-plugin-apt
Voor apparaatupdates Azure IoT Hub-softwarepakketten gelden de volgende licentievoorwaarden:
Lees de licentievoorwaarden voordat u een pakket gebruikt. Uw installatie en gebruik van een pakket vormt uw acceptatie van deze voorwaarden. Als u niet akkoord gaat met de licentievoorwaarden, gebruikt u dat pakket niet.
Een tag toevoegen aan uw apparaat
Meld u aan Azure Portal en navigeer naar de IoT Hub.
Zoek in IoT Edge navigatiedeelvenster aan de linkerkant uw IoT Edge apparaat en navigeer naar de apparaat dubbel of module dubbel.
Verwijder in de module Module twin van de module Device Update-agent een bestaande waarde voor de Device Update-tag door deze in te stellen op null. Als u Apparaat-id gebruikt met de Agent voor apparaatupdates, moet u deze wijzigingen aanbrengen op de apparaat dubbel.
Voeg een nieuwe waarde voor de tag Apparaatupdate toe, zoals hieronder wordt weergegeven.
"tags": {
"ADUGroup": "<CustomTagValue>"
},
Update importeren
Ga naar Releases van apparaatupdates in GitHub klik op de vervolgkeuzepagina Assets.
Download de
Edge.package.update.samples.zipdoor erop te klikken.Extraheer de inhoud van de map om een APT-voorbeeldmanifest en het bijbehorende importmanifest te ontdekken.
Selecteer Azure Portal de optie Apparaatupdates onder Automatisch apparaatbeheer in de linkernavigatiebalk in uw IoT Hub.
Selecteer het tabblad Updates.
Selecteer +Nieuwe update importeren.
Selecteer het mappictogram of het tekstvak onder 'Selecteer een manifestbestand importeren'. U ziet een dialoogvenster voor het kiezen van bestanden. Selecteer het
sample-1.0.1-aziot-edge-importManifest.jsonimportmanifest in de map die u eerder hebt gedownload. Selecteer vervolgens het mappictogram of het tekstvak onder Een of meer updatebestanden selecteren. U ziet een dialoogvenster voor het kiezen van bestanden. Selecteer hetsample-1.0.1-aziot-edge-apt-manifest.jsonapt-manifestupdatebestand in de map die u eerder hebt gedownload. Met deze update worden de pakketten en bijgewerkt naaraziot-identity-serviceaziot-edgeversie 1.2.0~rc4-1 op uw apparaat.Selecteer het mappictogram of het tekstvak onder Een opslagcontainer selecteren. Selecteer vervolgens het juiste opslagaccount.
Als u al een container hebt gemaakt, kunt u deze opnieuw gebruiken. (Selecteer anders +Container om een nieuwe opslagcontainer voor updates te maken.) Selecteer de container die u wilt gebruiken en klik op Selecteren.
Selecteer Verzenden om het importproces te starten.
Het importproces begint en het scherm wordt gewijzigd in de sectie Importgeschiedenis. Selecteer Vernieuwen om de voortgang te bekijken totdat het importproces is voltooid. Afhankelijk van de grootte van de update kan het importproces binnen enkele minuten worden voltooid, maar kan het langer duren.
Wanneer in de kolom Status wordt aangegeven dat het importeren is geslaagd, selecteert u de header Gereed voor implementatie. De geïmporteerde update wordt nu weergegeven in de lijst.
Meer informatie over het importeren van updates.
Updategroep maken
Ga naar de IoT Hub u eerder verbinding hebt met uw apparaatupdate-exemplaar.
Selecteer de optie Apparaatupdates onder Automatisch apparaatbeheer in de navigatiebalk aan de linkerkant.
Selecteer het tabblad Groepen bovenaan de pagina.
Selecteer de knop Toevoegen om een nieuwe groep te maken.
Selecteer de IoT Hub tag die u in de vorige stap hebt gemaakt in de lijst. Selecteer Updategroep maken.
Meer informatie over het toevoegen van tags en het maken van updategroepen
Update implementeren
Zodra de groep is gemaakt, ziet u een nieuwe update die beschikbaar is voor uw apparaatgroep, met een koppeling naar de update in de kolom Beschikbare updates. Mogelijk moet u eenmaal vernieuwen.
Klik op de koppeling naar de beschikbare update.
Controleer of de juiste groep is geselecteerd als de doelgroep en plan uw implementatie
Tip
De begindatum/-tijd is standaard 24 uur vanaf uw huidige tijd. Zorg ervoor dat u een andere datum/tijd selecteert als u wilt dat de implementatie eerder begint.
Selecteer Update implementeren.
Bekijk het nalevingsdiagram. U ziet nu dat de update wordt uitgevoerd.
Nadat uw apparaat is bijgewerkt, ziet u de compatibiliteitsgrafiek en de update van de implementatiedetails.
Een update-implementatie bewaken
Selecteer het tabblad Implementaties bovenaan de pagina.
Selecteer de implementatie die u hebt gemaakt om de implementatiedetails weer te geven.
Selecteer Vernieuwen om de meest recente statusdetails weer te geven. Ga door met dit proces totdat de status is gewijzigd in Geslaagd.
U hebt nu een geslaagde end-to-end pakketupdate voltooid met Apparaatupdate voor IoT Hub op een Ubuntu Server 18.04 x64-apparaat.
Resources opschonen
Schoon uw apparaatupdateaccount, exemplaar, IoT Hub en IoT Edge-apparaat op wanneer u deze niet meer nodig hebt (als u de VM hebt gemaakt via de knop Implementeren in Azure). U kunt dit doen door naar elke afzonderlijke resource te gaan en Verwijderen te selecteren. U moet een exemplaar van de apparaatupdate ops schonen voordat u het updateaccount van het apparaat opschoont.

