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 apparaatvloten. Met automatisch apparaatbeheer kunt u een set apparaten instellen op basis van hun eigenschappen, een gewenste configuratie definiëren en vervolgens ioT Hub de apparaten laten bijwerken wanneer ze binnen het bereik komen. Deze update wordt uitgevoerd met behulp van een automatische apparaatconfiguratie of automatische moduleconfiguratie, waarmee u de voltooiing en naleving kunt samenvatten, samenvoeging en conflicten kunt afhandelen en configuraties in een gefaseerde benadering kunt implementeren.

Notitie

De functies die in dit artikel worden beschreven, zijn alleen beschikbaar in de standaardlaag van de IoT Hub. Zie De juiste IoT Hub-laag voor uw oplossing kiezen voor meer informatie over de Basic- en Standard-/gratis IoT Hub-lagen.

Automatisch apparaatbeheer werkt door een set apparaatdubbels of moduledubbels met gewenste eigenschappen bij te werken en een samenvatting te rapporteren die is gebaseerd op gerapporteerde eigenschappen van dubbels. Het introduceert een nieuw klasse- en JSON-document met de naam Een configuratie met drie onderdelen:

  • De doelvoorwaarde definieert het bereik van apparaatdubbels of moduledubbels 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 doelapparaatdubbels of moduledubbels. De inhoud bevat een pad naar de sectie met gewenste eigenschappen die moeten worden gewijzigd.

  • De metrische gegevens definiëren de samenvattingsaantallen van verschillende configuratiestatussen, zoals Geslaagd, Wordt uitgevoerd en Fout. Aangepaste metrische gegevens worden opgegeven als query's op gerapporteerde eigenschappen van dubbels. Metrische systeemgegevens zijn de standaardmetrieken waarmee de updatestatus van dubbels wordt gemeten, zoals het aantal dubbels 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. Metrische query's worden telkens uitgevoerd wanneer de automatische configuratie wordt uitgevoerd. Er worden maximaal 100 automatische configuraties ondersteund op IoT-hubs in de standard-laag; tien op IoT-hubs in de gratis laag. Beperkingslimieten zijn ook van toepassing. Zie Quota en beperking voor meer informatie.

Dubbels implementeren

Voor automatische apparaatconfiguraties is het gebruik van apparaatdubbels 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 moduledubbels vereist om de status tussen de cloud en modules te synchroniseren. Zie Moduledubbels begrijpen en gebruiken in IoT Hub voor meer informatie.

Tags gebruiken om dubbels te targeten

Voordat u een configuratie maakt, moet u opgeven welke apparaten of modules u wilt beïnvloeden. Azure IoT Hub identificeert apparaten met behulp van tags in de apparaatdubbel en identificeert modules met behulp van tags in de moduledubbel. 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 apparaatdubbel:

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

Een configuratie maken

U kunt maximaal 100 automatische configuraties maken op IoT-hubs in de standard-laag; tien op IoT-hubs in de gratis laag. Zie Quota en beperking voor meer informatie.

  1. Ga in Azure Portal naar uw IoT-hub.

  2. Selecteer Configuraties en implementaties in het linkernavigatiedeelvenster.

  3. Selecteer Toevoegen en kies Apparaatdubbelconfiguratie of Moduledubbelconfiguratie in de vervolgkeuzelijst.

    Screenshot showing how to add a configuration.

Er zijn vijf stappen om een configuratie te maken. In de volgende secties wordt elke sectie beschreven.

Naam en label

  1. Geef uw configuratie een unieke naam die maximaal 128 tekens lang is. Kleine letters en de volgende speciale tekens zijn toegestaan: -+%_*!'. Spaties zijn niet toegestaan.

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

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

Instellingen voor dubbels

In deze sectie wordt de inhoud gedefinieerd die moet worden ingesteld in de gewenste eigenschappen van de doelapparaatdubbel of moduledubbel. Er zijn twee invoerwaarden voor elke set instellingen. De eerste is het dubbele pad, het pad naar de JSON-sectie binnen de gewenste eigenschappen van de dubbel die worden ingesteld. De tweede is de JSON-inhoud die in die sectie moet worden ingevoegd.

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

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

Screenshot of setting the device or module twin property and json content.

U kunt ook afzonderlijke instellingen instellen door het hele dubbelpad op te geven en de waarde zonder vierkante haken op te geven. Stel bijvoorbeeld met het dubbelpad properties.desired.chiller-water.temperaturede inhoud in op 66. Maak vervolgens een nieuwe dubbelinstelling voor de drukeigenschap.

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

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

U kunt extra instellingen toevoegen door de instelling Apparaatdubbel toevoegen of Moduledubbel-instelling toevoegen te selecteren.

Doelapparaten of modules

Gebruik de eigenschap tags van uw tweelingen om de specifieke apparaten of modules te richten die deze configuratie moeten ontvangen. U kunt ook gerapporteerde eigenschappen van dubbels targeten.

Automatische apparaatconfiguraties kunnen alleen tags voor apparaatdubbels instellen en automatische moduleconfiguraties kunnen alleen tags voor moduledubbels instellen.

Aangezien meerdere configuraties op hetzelfde apparaat of dezelfde module kunnen zijn gericht, 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 configuratieprioriteit. De hoogste numerieke waarde wordt beschouwd als de hoogste prioriteit. Als twee configuraties hetzelfde prioriteitsnummer hebben, wint het configuratienummer dat het laatst is gemaakt.

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

    Voor automatische apparaatconfiguratie kunt u alleen de tag of gerapporteerde eigenschap opgeven voor het doel. Bijvoorbeeld tags.environment='test' of properties.reported.chillerProperties.model='4000x'. U kunt opgeven * dat alle apparaten moeten worden gericht.

    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 om alle modules te targeten.

Metrische gegevens

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

Elke configuratie kan maximaal vijf aangepaste metrische gegevens bevatten.

  1. Voer een naam in voor de metrische naam.

  2. Voer een query in voor metrische criteria. De query is gebaseerd op gerapporteerde eigenschappen van apparaatdubbel. De metrische waarde vertegenwoordigt 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 waarop de configuratie is toegepast, bijvoorbeeld:

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

    Als u een metrische waarde bouwt om te rapporteren over geconfigureerde modules, selecteert u moduleId een van devices.modulesde opties. Bijvoorbeeld:

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

Configuratie controleren

Controleer uw configuratiegegevens en selecteer Verzenden.

Een configuratie bewaken

Als u de details van een configuratie wilt bekijken en de apparaten wilt bewaken waarop deze wordt uitgevoerd, gebruikt u de volgende stappen:

  1. Ga in Azure Portal naar uw IoT-hub.

  2. Selecteer Configuraties in Apparaatbeheer.

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

    • Id : de naam van de configuratie.

    • Doelvoorwaarde : de query die wordt gebruikt om doelapparaten of modules te definiëren.

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

    • Aanmaaktijd : de tijdstempel van waaruit de configuratie is gemaakt. Deze tijdstempel wordt gebruikt om de banden te verbreken wanneer twee configuraties dezelfde prioriteit hebben.

    • Metrische systeemgegevens: metrische gegevens die worden berekend door IoT Hub en kunnen niet worden aangepast door ontwikkelaars. Het doel geeft het aantal apparaatdubbels op dat overeenkomt met de doelvoorwaarde. Hiermee wordt het aantal apparaatdubbels opgegeven dat door de configuratie is gewijzigd. Dit kan gedeeltelijke wijzigingen bevatten in het geval dat ook een afzonderlijke configuratie met een hogere prioriteit wijzigingen heeft aangebracht.

    • Aangepaste metrische gegevens: metrische gegevens die door de ontwikkelaar zijn opgegeven als query's op gerapporteerde eigenschappen van dubbels. Er kunnen maximaal vijf aangepaste metrische gegevens per configuratie 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.

    • Doelapparaten of doelmodules : de apparaten of modules die overeenkomen met de doelvoorwaarde.

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

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

    • Apparaatdubbel Instellingen of moduledubbel-Instellingen: de dubbele instellingen die zijn ingesteld door de configuratie, indien van toepassing.

Een configuratie wijzigen

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

Als u de doelvoorwaarde bijwerkt, worden de volgende updates uitgevoerd:

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

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

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

Als u een configuratie wilt wijzigen, gebruikt u de volgende stappen:

  1. Ga in Azure Portal naar uw IoT-hub.

  2. Selecteer Configuraties en implementaties in Apparaatbeheer.

  3. Selecteer de configuratie die u wilt wijzigen.

  4. U kunt de volgende velden bijwerken:

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

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

Een configuratie verwijderen

Wanneer u een configuratie verwijdert, hebben alle apparaatdubbels de volgende configuratie met de hoogste prioriteit. Als apparaatdubbels niet voldoen aan de doelvoorwaarde van een andere configuratie, worden er geen andere instellingen toegepast.

  1. Ga in Azure Portal naar uw IoT-hub.

  2. Selecteer Configuraties en implementaties in Apparaatbeheer.

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

  4. Selecteer Verwijderen.

  5. U wordt gevraagd om te bevestigen.

Volgende stappen

In dit artikel hebt u geleerd hoe u IoT-apparaten op schaal configureert en bewaakt.

Zie IoT Hub-apparaatidentiteiten bulksgewijs importeren en exporteren voor meer informatie over het bulksgewijs beheren van IoT Hub-apparaatidentiteiten