Automatisch beheer van IoT-apparaat en module met Azure Portal

Automatisch apparaatbeheer in Azure IoT Hub automatiseert veel van de terugkerende en complexe taken voor het beheren van grote apparatenparken. Met automatisch apparaatbeheer kunt u zich richten op een set apparaten op basis van hun eigenschappen, een gewenste configuratie definiëren en vervolgens IoT Hub apparaten bijwerken wanneer ze binnen het bereik komen. Deze update wordt uitgevoerd met behulp van een automatische apparaatconfiguratie of automatische moduleconfiguratie, waarmee u voltooiing en naleving kunt samenvatten, samenvoeging en conflicten kunt afhandelen en configuraties kunt uitrollen in een gefaseerd aanpak.

Notitie

De functies die in dit artikel worden beschreven, zijn alleen beschikbaar in de standaardlaag van de IoT Hub. Raadpleeg How to choose the right IoT Hub tier (De juiste IoT Hub-prijscategorie kiezen) voor meer informatie over de Basic- en Standard/gratis-prijscategorieën van IoT Hub.

Automatisch apparaatbeheer werkt door een set apparaat-tweelingen of module-tweelingen met gewenste eigenschappen bij te werken en een samenvatting te rapporteren die is gebaseerd op gerapporteerde dubbeleigenschappen. Er wordt een nieuwe klasse en een JSON-document met de naam Configuration (configuratie) met drie delen introduceert:

  • De doelvoorwaarde definieert het bereik van apparaat-tweelingen of module-tweelingen die moeten worden bijgewerkt. De doelvoorwaarde wordt opgegeven als een query op dubbeltags en/of gerapporteerde eigenschappen.

  • De doelinhoud definieert de gewenste eigenschappen die moeten worden toegevoegd of bijgewerkt in de doelapparaat-tweelingen of module-tweelingen. De inhoud bevat een pad naar de sectie met gewenste eigenschappen die moeten worden gewijzigd.

  • De metrische gegevens definiëren de samenvattingstellingen van verschillende configuratiewaarden, zoals Geslaagd, Wordt uitgevoerd en Fout. Aangepaste metrische gegevens worden opgegeven als query's op gerapporteerde dubbeleigenschappen. Systeemmetrieken zijn de standaard metrische gegevens die de updatestatus van de tweeling meten, zoals het aantal tweelingen dat is gericht en het aantal tweelingen dat is bijgewerkt.

Automatische configuraties worden voor het eerst uitgevoerd kort nadat de configuratie is gemaakt en vervolgens met intervallen van vijf minuten. Query's voor metrische gegevens worden telkens uitgevoerd als de automatische configuratie wordt uitgevoerd.

Tweelingen implementeren

Voor automatische apparaatconfiguraties is het gebruik van apparaattweeling vereist om de status tussen de cloud en apparaten te synchroniseren. Zie Apparaatdubbels begrijpen en gebruiken in IoT Hub voor meer informatie.

Voor automatische moduleconfiguraties is het gebruik van module-tweelingen vereist om de status tussen de cloud en modules te synchroniseren. Zie Module-tweelingen begrijpen en gebruiken in IoT Hub voor meer IoT Hub.

Tags gebruiken om tweelingen te targeten

Voordat u een configuratie maakt, moet u opgeven welke apparaten of modules u wilt beïnvloeden. Azure IoT Hub identificeert apparaten en gebruikt tags in de apparaattwee en identificeert modules met behulp van tags in de module dubbel. Elk apparaat of elke module kan meerdere tags hebben en u kunt ze definiëren op elke manier die zinvol is voor uw oplossing. Als u bijvoorbeeld apparaten op verschillende locaties beheert, voegt u de volgende tags toe aan een apparaat dubbel:

"tags": {
    "location": {
        "state": "Washington",
        "city": "Tacoma"
    }
},

Een configuratie maken

  1. Ga in Azure Portalnaar uw IoT-hub.

  2. Selecteer Configuraties in het linkernavigatievenster.

  3. Selecteer Apparaatconfiguratie toevoegen of Moduleconfiguratie toevoegen.

    Schermopname die laat zien hoe u een configuratie toevoegt.

Er zijn vijf stappen voor het maken van een configuratie. In de volgende secties wordt elk van deze secties doorlopen.

Naam en label

  1. Geef uw configuratie een unieke naam van maximaal 128 kleine letters. Vermijd spaties en de volgende ongeldige tekens: & ^ [ ] { } \ | " < > / .

  2. Voeg labels toe om uw configuraties bij te houden. Labels zijn naam- en waardeparen die uw configuratie beschrijven. Bijvoorbeeld HostPlatform, Linux of Version, 3.0.1.

  3. Selecteer Volgende om naar de volgende stap te gaan.

Geef Instellingen

In deze sectie definieert u de inhoud die moet worden ingesteld in doelapparaat- of module-tweelingen. Er zijn twee invoer voor elke set instellingen. De eerste is het pad van de tweeling. Dit is het pad naar de JSON-sectie binnen de gewenste dubbeleigenschappen die worden ingesteld. De tweede is de JSON-inhoud die in die sectie moet worden ingevoegd.

U kunt bijvoorbeeld het pad van de tweeling instellen op properties.desired.chiller-water en vervolgens de volgende JSON-inhoud verstrekken:

{
  "temperature": 66,
  "pressure": 28
}

Het pad en de inhoud van de dubbel instellen

U kunt ook afzonderlijke instellingen instellen door het volledige pad van de tweeling op te geven en de waarde zonder haakjes op te geven. Stel bijvoorbeeld met het pad van de dubbel properties.desired.chiller-water.temperature de inhoud in op 66 . Maak vervolgens een nieuwe tweelinginstelling voor de eigenschap druk.

Als twee of meer configuraties zijn gericht op hetzelfde dubbelpad, is de inhoud van de configuratie met de hoogste prioriteit van toepassing (prioriteit is gedefinieerd in stap 4).

Als u een bestaande eigenschap wilt verwijderen, geeft u de eigenschapswaarde op in null .

U kunt extra instellingen toevoegen door Instelling voor apparaat dubbel toevoegen of Module twin-instelling toevoegen te selecteren.

Metrische gegevens opgeven (optioneel)

Metrische gegevens bieden overzichtstellingen van de verschillende staten die een apparaat of module kan rapporteren na het toepassen van configuratie-inhoud. U kunt bijvoorbeeld een metrische waarde maken voor wijzigingen in in behandeling zijnde instellingen, een metrische waarde voor fouten en een metriek voor geslaagde instellingenwijzigingen.

Elke configuratie kan maximaal vijf aangepaste metrische gegevens hebben.

  1. Voer een naam in voor Metrische naam.

  2. Voer een query in voor Metrische criteria. De query is gebaseerd op gerapporteerde eigenschappen van apparaattwee. De metrische gegevens vertegenwoordigen het aantal rijen dat door de query wordt geretourneerd.

Bijvoorbeeld:

SELECT deviceId FROM devices 
  WHERE properties.reported.chillerWaterSettings.status='pending'

U kunt een -component opnemen die de configuratie is toegepast, bijvoorbeeld:

/* Include the double brackets. */
SELECT deviceId FROM devices 
  WHERE configurations.[[yourconfigname]].status='Applied'

Als u een metrische gegevens bouwt om te rapporteren over geconfigureerde modules, selecteert moduleId u uit devices.modules . Bijvoorbeeld:

SELECT deviceId, moduleId FROM devices.modules
  WHERE properties.reported.lastDesiredStatus.code = 200

Doelapparaten

Gebruik de eigenschap tags van uw tweelingen om u te richten op de specifieke apparaten of modules die deze configuratie moeten ontvangen. U kunt ook dubbele gerapporteerde eigenschappen als doel hebben.

Automatische apparaatconfiguraties kunnen alleen worden gericht op tags van apparaattwee en automatische moduleconfiguraties kunnen alleen gericht zijn op tags van module-dubbels.

Omdat meerdere configuraties gericht kunnen zijn op hetzelfde apparaat of dezelfde module, heeft elke configuratie een prioriteitsnummer nodig. Als er ooit een conflict is, wint de configuratie met de hoogste prioriteit.

  1. Voer een positief geheel getal in voor de configuratie Priority. De hoogste numerieke waarde wordt beschouwd als de hoogste prioriteit. Als twee configuraties hetzelfde prioriteitsnummer hebben, wint de configuratie die het laatst is gemaakt.

  2. Voer een doelvoorwaarde in om te bepalen op welke apparaten of modules deze configuratie wordt gericht. De voorwaarde is gebaseerd op tweelingtags of gerapporteerde dubbeleigenschappen en moet overeenkomen met de expressie-indeling.

    Voor automatische apparaatconfiguratie kunt u alleen de tag of gerapporteerde eigenschap opgeven die als doel moet worden gebruikt. Bijvoorbeeld tags.environment='test' of properties.reported.chillerProperties.model='4000x'. U kunt opgeven * dat deze is gericht op alle apparaten.

    Voor automatische moduleconfiguratie gebruikt u een query om tags of gerapporteerde eigenschappen op te geven van de modules die zijn geregistreerd bij de IoT-hub. Bijvoorbeeld from devices.modules where tags.environment='test' of from devices.modules where properties.reported.chillerProperties.model='4000x'. Het jokerteken kan niet worden gebruikt voor alle modules.

  3. Selecteer Volgende om door te gaan naar de laatste stap.

Configuratie controleren

Controleer uw configuratiegegevens en selecteer vervolgens Verzenden.

Een configuratie bewaken

Gebruik de volgende stappen om de details van een configuratie weer te geven en de apparaten te controleren die de configuratie uitvoeren:

  1. Ga in Azure Portalnaar uw IoT-hub.

  2. Selecteer IoT-apparaatconfiguratie.

  3. Inspecteer de configuratielijst. Voor elke configuratie kunt u de volgende details bekijken:

    • Id: de naam van de configuratie.

    • Doelvoorwaarde: de query die wordt gebruikt voor het definiëren van doelapparaten of modules.

    • Prioriteit: het prioriteitsnummer dat is toegewezen aan de configuratie.

    • Aanmaaktijd: de tijdstempel vanaf het moment waarop de configuratie is gemaakt. Deze tijdstempel wordt gebruikt om ties te verbreken wanneer twee configuraties dezelfde prioriteit hebben.

    • Systeemmetrieken: metrische gegevens die worden berekend IoT Hub en die niet kunnen worden aangepast door ontwikkelaars. Gericht geeft het aantal apparaattweelingen aan dat aan de doelvoorwaarde komt. Van toepassing is het aantal apparaattweelingen dat is gewijzigd door de configuratie, wat gedeeltelijke wijzigingen kan omvatten in het geval dat een afzonderlijke configuratie met een hogere prioriteit ook wijzigingen heeft aangebracht.

    • Aangepaste metrische gegevens: metrische gegevens die door de ontwikkelaar zijn opgegeven als query's op gerapporteerde dubbeleigenschappen. Per configuratie kunnen maximaal vijf aangepaste metrische gegevens worden gedefinieerd.

  4. Selecteer de configuratie die u wilt bewaken.

  5. Controleer de configuratiedetails. U kunt tabbladen gebruiken om specifieke details weer te geven over de apparaten die de configuratie hebben ontvangen.

    • Doelvoorwaarde: de apparaten of modules die overeenkomen met de doelvoorwaarde.

    • Metrische gegevens: een lijst met metrische systeemgegevens en aangepaste metrische gegevens. U kunt een lijst weergeven met apparaten of modules die worden geteld voor elke metrische gegevens door de metrische gegevens in de vervolgkeuzelijst te selecteren en vervolgens Apparaten weergeven of Modules weergeven te selecteren.

    • Device Twin Instellingen of Module Twin Instellingen: de dubbelinstellingen die door de configuratie worden ingesteld.

    • Configuratielabels: sleutel-waardeparen die worden gebruikt om een configuratie te beschrijven. Labels hebben geen invloed op de functionaliteit.

Een configuratie wijzigen

Wanneer u een configuratie wijzigt, worden de wijzigingen onmiddellijk gerepliceerd naar alle doelapparaten of modules.

Als u de doelvoorwaarde bij werkt, worden de volgende updates uitgevoerd:

  • Als een tweeling niet voldoet aan de oude doelvoorwaarde, maar voldoet aan de nieuwe doelvoorwaarde en deze configuratie de hoogste prioriteit voor die tweeling heeft, wordt deze configuratie toegepast.

  • Als een tweeling die momenteel deze configuratie wordt uitgevoerd niet meer voldoet aan de doelvoorwaarde, worden de instellingen van de configuratie verwijderd en wordt de tweeling gewijzigd door de eerstvolgende configuratie met de hoogste prioriteit.

  • Als een tweeling met deze configuratie momenteel niet meer voldoet aan de doelvoorwaarde en niet voldoet aan de doelvoorwaarde van andere configuraties, worden de instellingen van de configuratie verwijderd en worden er geen andere wijzigingen aangebracht op de dubbel.

Gebruik de volgende stappen om een configuratie te wijzigen:

  1. Ga in Azure Portalnaar uw IoT-hub.

  2. Selecteer IoT-apparaatconfiguratie.

  3. Selecteer de configuratie die u wilt wijzigen.

  4. Updates maken in de volgende velden:

    • Doelvoorwaarde
    • Labels
    • Prioriteit
    • Metrische gegevens
  5. Selecteer Opslaan.

  6. Volg de stappen in Een configuratie bewaken om de implementatie van de wijzigingen te bekijken.

Een configuratie verwijderen

Wanneer u een configuratie verwijdert, krijgen apparaattweelingen de eerstvolgende configuratie met de hoogste prioriteit. Als apparaat twins niet voldoen aan de doelvoorwaarde van een andere configuratie, worden er geen andere instellingen toegepast.

  1. Ga in Azure Portalnaar uw IoT-hub.

  2. Selecteer IoT-apparaatconfiguratie.

  3. Schakel het selectievakje in om de configuratie te selecteren die u wilt verwijderen.

  4. Selecteer Verwijderen.

  5. U wordt gevraagd om dit te bevestigen.

Volgende stappen

In dit artikel hebt u geleerd hoe u IoT-apparaten op schaal configureert en bewaakt. Volg deze koppelingen voor meer informatie over het beheren van Azure IoT Hub:

Zie voor meer informatie over de mogelijkheden van IoT Hub:

Zie voor meer informatie over het IoT Hub Device Provisioning Service inschakelen van zero-touch, Just-In-Time-inrichting: