Delen via


Aanbevolen procedures voor apparaatconfiguratie in een IoT-oplossing

Automatisch apparaatbeheer in Azure IoT Hub automatiseert veel terugkerende en complexe taken voor het beheren van grote apparaatvloten gedurende de gehele levenscyclus. In dit artikel worden veel van de aanbevolen procedures gedefinieerd voor de verschillende rollen die betrokken zijn bij het ontwikkelen en uitvoeren van een IoT-oplossing.

  • IoT-hardwarefabrikant/integrator: Fabrikanten van IoT-hardware, integrators die hardware van verschillende fabrikanten samenstellen of leveranciers die hardware leveren voor een IoT-implementatie die is vervaardigd of geïntegreerd door andere leveranciers. Betrokken bij de ontwikkeling en integratie van firmware, ingesloten besturingssystemen en ingesloten software.

  • IoT-oplossingsontwikkelaar: De ontwikkeling van een IoT-oplossing wordt doorgaans uitgevoerd door een oplossingsontwikkelaar. Deze ontwikkelaar kan deel uitmaken van een intern team of een systeemintegrator die gespecialiseerd is in deze activiteit. De ontwikkelaar van de IoT-oplossing kan verschillende onderdelen van de IoT-oplossing helemaal zelf ontwikkelen, verschillende standaardonderdelen of opensource-onderdelen integreren.

  • IoT-oplossingsoperator: Nadat de IoT-oplossing is geïmplementeerd, zijn langdurige bewerkingen, bewaking, upgrades en onderhoud vereist. Meerdere teams, zoals een intern team dat bestaat uit specialisten in informatietechnologie, hardwarebewerkingen en onderhoudsteams en domeinspecialisten die het juiste gedrag van de algehele IoT-infrastructuur bewaken, kunnen deze taken uitvoeren.

Inzicht in automatisch apparaatbeheer voor het configureren van IoT-apparaten op schaal

Automatisch apparaatbeheer omvat de vele voordelen van apparaatdubbels en moduledubbels om de gewenste en gerapporteerde statussen tussen de cloud en apparaten te synchroniseren. Automatische apparaatconfiguraties werken automatisch grote sets dubbels bij en geven een overzicht van de voortgang en naleving. In de volgende stappen op hoog niveau wordt beschreven hoe automatisch apparaatbeheer wordt ontwikkeld en gebruikt:

  • De IoT-hardwarefabrikant/integrator implementeert apparaatbeheerfuncties binnen een ingesloten toepassing met behulp van apparaatdubbels. Deze functies kunnen firmware-updates, software-installatie en -update en instellingenbeheer omvatten.

  • De ontwikkelaar van de IoT-oplossing implementeert de beheerlaag van apparaatbeheerbewerkingen met behulp van apparaatdubbels en automatische apparaatconfiguraties. De oplossing moet bestaan uit het definiëren van een operatorinterface voor het uitvoeren van apparaatbeheertaken.

  • De IoT-oplossingsoperator maakt gebruik van de IoT-oplossing om apparaatbeheertaken uit te voeren, met name om apparaten te groeperen, configuratiewijzigingen te starten, zoals firmware-updates, voortgang te bewaken en problemen op te lossen die zich voordoen.

IoT-hardwarefabrikant/integrator

Hier volgen aanbevolen procedures voor hardwarefabrikanten en integrators die te maken hebben met ingesloten softwareontwikkeling:

  • Apparaatdubbels implementeren: Met apparaatdubbels kunt u de gewenste configuratie vanuit de cloud synchroniseren en voor het rapporteren van de huidige configuratie en apparaateigenschappen. De beste manier om apparaatdubbels in ingesloten toepassingen te implementeren, is via de Azure IoT SDK's. Apparaatdubbels zijn het meest geschikt voor configuratie omdat ze:

    • Ondersteuning voor bidirectionele communicatie.
    • Toestaan dat zowel verbonden als niet-verbonden apparaten statussen hebben.
    • Volg het principe van uiteindelijke consistentie.
    • Kunnen volledig worden opgevraagd in de cloud.
  • Structureer de apparaatdubbel voor apparaatbeheer: De apparaatdubbel moet zodanig zijn gestructureerd dat de eigenschappen van apparaatbeheer logisch worden gegroepeerd in secties. Hierdoor kunnen configuratiewijzigingen worden geïsoleerd zonder dat dit van invloed is op andere secties van de dubbel. Maak bijvoorbeeld een sectie binnen de gewenste eigenschappen voor firmware, een andere sectie voor software en een derde sectie voor netwerkinstellingen.

  • Apparaatkenmerken rapporteren die handig zijn voor apparaatbeheer: Kenmerken zoals fysieke apparaten maken en modelleren, firmware, besturingssysteem, serienummer en andere id's zijn handig voor rapportage en als parameters voor het instellen van configuratiewijzigingen.

  • Definieer de belangrijkste statussen voor het rapporteren van de status en voortgang: Statussen op het hoogste niveau moeten worden geïnventariseerd, zodat ze aan de operator kunnen worden gerapporteerd. Een firmware-update rapporteert bijvoorbeeld de status Huidige, Downloaden, Toepassen, Wordt uitgevoerd en Fout. Definieer meer velden voor meer informatie over elke status.

IoT-oplossingsontwikkelaar

Hier volgen best practices voor IoT-oplossingsontwikkelaars die systemen bouwen in Azure:

  • Apparaatdubbels implementeren: Met apparaatdubbels kunt u de gewenste configuratie vanuit de cloud synchroniseren en voor het rapporteren van de huidige configuratie en apparaateigenschappen. De beste manier om apparaatdubbels te implementeren binnen cloudoplossingentoepassingen is via de Azure IoT SDK's. Apparaatdubbels zijn het meest geschikt voor configuratie omdat ze:

    • Ondersteuning voor bidirectionele communicatie.
    • Toestaan dat zowel verbonden als niet-verbonden apparaten statussen hebben.
    • Volg het principe van uiteindelijke consistentie.
    • Kunnen volledig worden opgevraagd in de cloud.
  • Apparaten organiseren met behulp van apparaatdubbeltags: Met de oplossing kan de operator kwaliteitsringen of andere sets apparaten definiëren op basis van verschillende implementatiestrategieën, zoals canary. Apparaatorganisatie kan binnen uw oplossing worden geïmplementeerd met behulp van apparaat-tweintags en queries. Apparaatorganisatie is nodig om configuratie-implementaties veilig en nauwkeurig mogelijk te maken.

  • Automatische apparaatconfiguraties implementeren: Automatische apparaatconfiguraties implementeren en bewaken configuratiewijzigingen in grote sets IoT-apparaten via apparaatdubbels.

    Automatische apparaatconfiguraties richten zich op doelgroepen van apparaat-tweelingen via de doelcriteria, wat een query is op apparaat-tweelingtags of gerapporteerde eigenschappen. De doelinhoud is de set gewenste eigenschappen die zijn ingesteld binnen de doelapparaatdubbels. De doelcontent moet overeenkomen met de structuur van de apparaattwin zoals gedefinieerd door de fabrikant/integrator van de IoT-hardware. De metrische gegevens zijn query's op gerapporteerde eigenschappen van apparaatdubbels en moeten ook overeenkomen met de structuur van de apparaatdubbel die is gedefinieerd door de IoT-hardwarefabrikant/integrator.

    Automatische apparaatconfiguraties worden voor het eerst uitgevoerd kort nadat de configuratie is gemaakt en vervolgens met een interval van vijf minuten. Ze profiteren ook van de IoT Hub die apparaat-twin-bewerkingen uitvoert met een snelheid die de throtteling-limieten voor het lezen en bijwerken van apparaat-twins overschrijdt.

  • Gebruik Device Provisioning Service: oplossingsontwikkelaars moeten de Device Provisioning Service gebruiken om apparaatdubbeltags toe te wijzen aan nieuwe apparaten, zodat ze automatisch worden geconfigureerd door automatische apparaatconfiguraties die zijn gericht op dubbels met die tag.

IoT-oplossingsbeheerder

Hier volgen de aanbevolen procedures voor IoT-oplossingsoperators die een IoT-oplossing gebruiken die is gebouwd in Azure:

  • Apparaten organiseren voor beheer: De IoT-oplossing moet het maken van kwaliteitsringen of andere sets apparaten definiëren of toestaan op basis van verschillende implementatiestrategieën, zoals canary. De sets van apparaten worden gebruikt om configuratiewijzigingen uit te rollen en andere apparaatbeheerbewerkingen op grote schaal uit te voeren.

  • Configuratiewijzigingen uitvoeren met behulp van een gefaseerde implementatie: Een gefaseerde implementatie is een algemeen proces waarbij een operator wijzigingen implementeert in een verbrede set IoT-apparaten. Het doel is om wijzigingen geleidelijk aan te brengen om het risico op grootschalige wijzigingen die fouten veroorzaken, te verminderen.  De operator moet de interface van de oplossing gebruiken om een automatische apparaatconfiguratie te maken en de doelvoorwaarde moet gericht zijn op een eerste set apparaten (zoals een canary-groep). De operator moet vervolgens de configuratiewijziging in de eerste set apparaten valideren.

    Zodra de validatie is voltooid, werkt de operator de automatische apparaatconfiguratie bij zodat deze een grotere set apparaten bevat. De operator moet ook de prioriteit instellen voor de configuratie die hoger is dan andere configuraties die momenteel op die apparaten zijn gericht. De implementatie kan worden bewaakt met behulp van de metrische gegevens die worden gerapporteerd door de automatische apparaatconfiguratie.

  • Terugdraaiacties uitvoeren in geval van fouten of onjuiste configuraties: Een automatische apparaatconfiguratie die fouten of onjuiste configuraties veroorzaakt, kan worden teruggedraaid door de doelvoorwaarde te wijzigen, zodat de apparaten niet meer voldoen aan de doelvoorwaarde . Zorg ervoor dat een andere automatische apparaatconfiguratie met een lagere prioriteit nog steeds op die apparaten is gericht. Controleer of het terugdraaien is geslaagd door de metrische gegevens weer te geven: de teruggedraaide configuratie mag de status voor niet-gerichte apparaten niet meer weergeven. De metrische gegevens van de tweede configuratie moeten nu tellingen bevatten voor de apparaten waarop nog steeds is gericht.

Volgende stappen