Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Automatická správa zařízení ve službě Azure IoT Hub zjednodušuje proces správy velkých flotil zařízení automatizací opakovaných a složitých úloh. Díky automatickým konfiguracím zařízení a modulů můžete cílit na zařízení na základě jejich vlastností, zadat požadovaná nastavení a nechat Službu IoT Hub používat aktualizace, protože zařízení splňují definovaná kritéria. Tento přístup umožňuje monitorovat stav konfigurace, řešit konflikty a zavádět změny ve fázích pro větší kontrolu a dodržování předpisů.
Poznámka:
Funkce popsané v tomto článku jsou k dispozici pouze na úrovni Standard služby IoT Hub. Další informace o úrovních Basic a Standard/Free IoT Hub najdete v tématu Volba správné úrovně a velikosti služby IoT Hub pro vaše řešení.
Přehled automatické správy zařízení
Automatická správa zařízení funguje použitím požadovaných vlastností na skupiny dvojčat zařízení nebo dvojčat modulů a shrnutím výsledků pomocí ohlášených vlastností. Tento proces používá specializovaný dokument JSON s názvem Konfigurace, který se skládá ze tří hlavních komponent:
Cílová podmínka definuje rozsah dvojčat zařízení nebo dvojčat modulů, které se mají aktualizovat. Cílová podmínka se zadává jako dotaz na dvojité značky a/nebo nahlášené vlastnosti.
Cílový obsah definuje požadované vlastnosti, které se mají přidat nebo aktualizovat v cílových dvojčatech zařízení nebo dvojčatech modulů. Obsah obsahuje cestu k oddílu požadovaných vlastností, které se mají změnit.
Komponenta metrik poskytuje souhrnné počty pro stavy konfigurace, jako je Úspěch, Probíhá a Chyba. Vlastní metriky můžete definovat pomocí dotazů na ohlášené vlastnosti dvojčete, zatímco systémové metriky automaticky sledují stav aktualizace, včetně počtu cílových dvojčat a počtu úspěšných aktualizací.
Automatické konfigurace se spustí poprvé krátce po vytvoření konfigurace a pak v pětiminutových intervalech. Dotazy metrik se spouštějí při každém spuštění automatické konfigurace. Služba IoT Hubs úrovně "Standard" podporuje maximálně 100 automatických konfigurací; na IoT hubech úrovně "Free" deset. Platí také omezení rychlosti. Další informace najdete v tématu Kvóty a omezování.
Požadavky
Aktivní předplatné Azure. Pokud nemáte předplatné Azure, vytvořte si bezplatný účet před zahájením.
Centrum IoT ve vašem předplatném Azure Pokud centrum ještě nemáte, můžete postupovat podle kroků v tématu Vytvoření centra IoT.
Implementujte dvojčata
Automatické konfigurace zařízení vyžadují použití dvojčat zařízení k synchronizaci stavu mezi cloudem a zařízeními. Další informace najdete v tématu Principy a použití dvojčat zařízení ve službě IoT Hub.
Automatické konfigurace modulů vyžadují použití dvojčat modulů k synchronizaci stavu mezi cloudem a moduly. Další informace najdete v tématu Principy a používání dvojčat modulů ve službě IoT Hub.
Použití značek k cílení dvojčat
Před vytvořením konfigurace musíte určit, která zařízení nebo moduly chcete ovlivnit. Azure IoT Hub identifikuje zařízení pomocí značek ve dvojčeti zařízení a identifikuje moduly pomocí značek ve dvojčeti modulu. Každé zařízení nebo moduly můžou mít více značek a můžete je definovat libovolným způsobem, který dává smysl pro vaše řešení. Pokud například spravujete zařízení v různých umístěních, přidejte u digitálního dvojčete zařízení následující značky:
"tags": {
"location": {
"state": "Washington",
"city": "Tacoma"
}
},
Vytvoření konfigurace
Ve službě IoT Hub úrovně Standard můžete vytvořit maximálně 100 automatických konfigurací a 10 na IoT hubech úrovně Free. Další informace najdete v tématu Kvóty a omezování.
Na webu Azure Portal přejděte do centra IoT.
V levém navigačním podokně vyberte Konfigurace a nasazení.
V rozevíracím seznamu vyberte Přidat a zvolte Konfigurace dvojčete zařízení nebo Konfigurace dvojčete modulu .
Konfigurace se vytvoří pěti kroky. Následující části jsou podrobně probrány jednotlivě.
Název a popisek
- Zadejte jedinečný název konfigurace. Název může obsahovat až 128 znaků a může obsahovat malá písmena a následující speciální znaky:
-+%_*!'. Mezery nejsou povolené. - Přidejte popisky pro uspořádání a popis konfigurace. Popisky jsou páry klíč-hodnota, například
HostPlatform, LinuxneboVersion, 3.0.1. - Pokračujte výběrem tlačítka Další.
Nastavení dvojčat
Nastavte obsah požadovaných vlastností dvojčete zařízení nebo dvojčete modulu tak, že pro každé nastavení zadáte dva vstupy. Nejprve zadejte cestu dvojčete, která odkazuje na oddíl JSON v rámci požadovaných vlastností dvojčete, které se mají aktualizovat. Dále zadejte obsah JSON, který chcete vložit do daného umístění.
Například můžete nastavit cestu dvojčete na properties.desired.chiller-water a poté zadat následující obsah JSON:
{
"temperature": 66,
"pressure": 28
}
Můžete také nastavit jednotlivá nastavení zadáním celé cesty dvojčete a zadáním hodnoty bez závorek. Například s dvojitou cestou properties.desired.chiller-water.temperature nastavte obsah na 66. Pak vytvořte nové dvojité nastavení pro vlastnost tlaku.
Pokud dvě nebo více konfigurací cílí na stejnou cestu dvojčete, použije se obsah z konfigurace s nejvyšší prioritou (priorita je definována v kroku 4).
Chcete-li odebrat existující vlastnost, zadejte hodnotu vlastnosti .null
Další nastavení můžete přidat výběrem možnosti Přidat nastavení dvojčete zařízení nebo Přidat nastavení dvojčete modulu.
Cílová zařízení nebo moduly
Pomocí vlastnosti značek vašich dvojčat můžete cílit na konkrétní zařízení nebo moduly, které by měly přijímat tuto konfiguraci. Můžete také cílit na hlášené vlastnosti dvojčat.
Automatické konfigurace zařízení můžou cílit jenom na párové značky zařízení a automatické konfigurace modulů můžou cílit jenom na párové značky modulů.
Vzhledem k tomu, že více konfigurací může cílit na stejné zařízení nebo modul, každá konfigurace potřebuje číslo priority. Pokud dojde ke konfliktu, konfigurace s nejvyšší prioritou vyhraje.
Zadejte kladné celé číslo pro konfiguraci Priorita. Nejvyšší číselná hodnota se považuje za nejvyšší prioritu. Pokud dvě konfigurace mají stejné prioritní číslo, ta, která byla vytvořena naposledy, vyhraje.
Zadejte cílovou podmínku a určete, na která zařízení nebo moduly cílí tato konfigurace. Podmínka je založená na dvojitých značkách nebo ohlášených vlastnostech dvojčat a by měla odpovídat formátu výrazu.
Pro automatickou konfiguraci zařízení můžete zadat pouze značku nebo ohlášenou vlastnost, na kterou se zaměřit. Například
tags.environment='test'neboproperties.reported.chillerProperties.model='4000x'. Můžete zadat*pro cílení na všechna zařízení.Pro automatickou konfiguraci modulu použijte dotaz k určení značek nebo ohlášených vlastností z modulů registrovaných do ioT Hubu. Například
from devices.modules where tags.environment='test'nebofrom devices.modules where properties.reported.chillerProperties.model='4000x'. Zástupný znak nelze použít k cílení na všechny moduly.
Metodiky
Metriky poskytují souhrnné počty různých stavů, které může zařízení nebo modul po použití konfiguračního obsahu ohlásit. Můžete například vytvořit metriku pro čekající změny nastavení, metriku pro chyby a metriku pro úspěšné změny nastavení.
Každá konfigurace může mít až pět vlastních metrik.
Zadejte název pro název metriky.
Zadejte dotaz pro kritéria pro metriky . Dotaz je založený na ohlášených vlastnostech dvojčete zařízení. Metrika představuje počet řádků vrácených dotazem.
Například:
SELECT deviceId FROM devices WHERE properties.reported.chillerWaterSettings.status='pending'Můžete zahrnout klauzuli, kterou konfigurace použila, například:
/* Include the double brackets. */ SELECT deviceId FROM devices WHERE configurations.[[yourconfigname]].status='Applied'Pokud vytváříte metriku pro hlášení o nakonfigurovaných modulech, vyberte
moduleIdzdevices.modules. Například:SELECT deviceId, moduleId FROM devices.modules WHERE properties.reported.lastDesiredStatus.code = 200
Kontrola konfigurace
Zkontrolujte informace o konfiguraci, poté vyberte Odeslat.
Sledovat konfiguraci
Pokud chcete zobrazit podrobnosti o konfiguraci a monitorovat spuštěná zařízení, postupujte následovně:
Na webu Azure Portal přejděte do centra IoT.
Vyberte Konfigurace ve správě zařízení.
Zkontrolujte seznam konfigurace. Pro každou konfiguraci můžete zobrazit následující podrobnosti:
ID – název konfigurace.
cílové podmínky – dotaz použitý k definování cílových zařízení nebo modulů.
Priorita – číslo priority přiřazené ke konfiguraci.
čas vytvoření – časové razítko od vytvoření konfigurace. Toto časové razítko slouží k přerušení vazeb, pokud mají dvě konfigurace stejnou prioritu.
systémových metrik – metriky počítané službou IoT Hub a nemůžou je přizpůsobit vývojáři. Cílený počet udává počet dvojčat zařízení, která odpovídají cílové podmínce. Aplikuje specifikovaný počet zařízení, která byla upravena konfigurací; toto může zahrnovat i částečné úpravy, pokud změny provedla i jiná konfigurace s vyšší prioritou.
Vlastní metriky – metriky zadané vývojářem jako dotazy na ohlášené vlastnosti dvojčete. Pro každou konfiguraci je možné definovat až pět vlastních metrik.
Vyberte konfiguraci, kterou chcete monitorovat.
Zkontrolujte podrobnosti konfigurace. Pomocí karet můžete zobrazit konkrétní podrobnosti o zařízeních, která přijala konfiguraci.
Cílová zařízení nebo cílové moduly – zařízení nebo moduly, které odpovídají cílové podmínce.
Metriky – seznam systémových metrik a vlastních metrik. Seznam zařízení nebo modulů, které se počítají pro každou metriku, můžete zobrazit tak, že v rozevíracím seznamu vyberete metriku a pak vyberete Zobrazit zařízení nebo Zobrazit moduly.
Štítky – páry klíč/hodnota používané k popisu konfigurace. Štítky nemají žádný vliv na funkčnost.
Nastavení dvojčete zařízení nebo nastavení dvojčete modulu – nastavení dvojčete, které je nastaveno konfigurací (pokud existuje).
Úprava konfigurace
Když upravíte konfiguraci, změny se okamžitě replikují do všech cílových zařízení nebo modulů.
Pokud aktualizujete cílovou podmínku, dojde k následujícím aktualizacím:
Pokud dvojče nesplňuje starou cílovou podmínku, ale splňuje novou cílovou podmínku a tato konfigurace je nejvyšší prioritou pro toto dvojče, použije se tato konfigurace.
Pokud dvojče, které tuto konfiguraci aktuálně spouští, nesplňuje cílovou podmínku, nastavení z konfigurace se odebere a dvojče se upraví podle další konfigurace s nejvyšší prioritou.
Pokud dvojče, které tuto konfiguraci právě spouští, nesplňuje cílovou podmínku a nesplňuje cílovou podmínku žádné jiné konfigurace, nastavení z konfigurace se odebere a ve dvojčeti se neprovedou žádné další změny.
Pokud chcete upravit konfiguraci, postupujte následovně:
- Na webu Azure Portal přejděte do centra IoT.
- Ve správě zařízení vyberte Konfigurace + implementace.
- Vyberte konfiguraci, kterou chcete upravit.
- Můžete aktualizovat následující pole: prioritu, metriky, cílovou podmínku a popisky.
- Zvolte Uložit.
- Postupujte podle kroků v Sledování konfigurace a sledujte, jak se změny zavádějí.
Odstranit konfiguraci
Když konfiguraci odstraníte, všechna dvojčata zařízení převezmou další konfiguraci s nejvyšší prioritou. Pokud dvojčata zařízení nesplňují cílovou podmínku žádné jiné konfigurace, nepoužijí se žádná další nastavení.
- Na webu Azure Portal přejděte do centra IoT.
- Ve správě zařízení vyberte Konfigurace + implementace.
- Pomocí zaškrtávacího políčka vyberte konfiguraci, kterou chcete odstranit.
- Vyberte Odstranit.
- Zobrazí se výzva k potvrzení.
Požadavky
Aktivní předplatné Azure. Pokud nemáte předplatné Azure, vytvořte si bezplatný účet před zahájením.
Centrum IoT ve vašem předplatném Azure Pokud centrum ještě nemáte, můžete postupovat podle kroků v tématu Vytvoření centra IoT.
Azure CLI ve vašem prostředí. Minimálně vaše verze Azure CLI musí být 2.0.70 nebo novější. Použijte
az –-versionk ověření. Tato verze podporuje příkazy az extension a zavádí architekturu příkazů Knack.
Poznámka:
Tento článek používá nejnovější verzi rozšíření Azure IoT, která se nazývá azure-iot. Starší verze se nazývá azure-cli-iot-ext. Najednou byste měli mít nainstalovanou jenom jednu verzi. K ověření aktuálně nainstalovaných rozšíření můžete použít příkaz az extension list.
Pomocí az extension remove --name azure-cli-iot-ext odeberte starší verzi rozšíření.
Pomocí az extension add --name azure-iot přidejte novou verzi rozšíření.
Chcete-li zjistit, jaká rozšíření jsou aktuálně nainstalována, použijte az extension list.
Implementujte dvojčata
Automatické konfigurace zařízení vyžadují použití dvojčat zařízení k synchronizaci stavu mezi cloudem a zařízeními. Další informace najdete v tématu Principy a použití dvojčat zařízení ve službě IoT Hub.
Automatické konfigurace modulů vyžadují použití dvojčat modulů k synchronizaci stavu mezi cloudem a moduly. Další informace najdete v tématu Principy a používání dvojčat modulů ve službě IoT Hub.
Použití značek k cílení dvojčat
Před vytvořením konfigurace musíte určit, která zařízení nebo moduly chcete ovlivnit. Azure IoT Hub rozlišuje zařízení pomocí značek v zařízení dvojčete a rozlišuje moduly pomocí značek v modulu dvojčete. Každé zařízení nebo modul může mít více značek a můžete je definovat libovolným způsobem, který dává smysl pro vaše řešení. Pokud například spravujete zařízení v různých umístěních, přidejte u digitálního dvojčete zařízení následující značky:
"tags": {
"location": {
"state": "Washington",
"city": "Tacoma"
}
},
Definování cílového obsahu a metrik
Cílový obsah a dotazy na metriky se zadají jako dokumenty JSON, které popisují požadované vlastnosti dvojčete zařízení nebo dvojčete modulu pro nastavení a ohlášené vlastnosti pro měření. Pokud chcete vytvořit automatickou konfiguraci pomocí Azure CLI, uložte cílový obsah a metriky místně jako .txt soubory. Cesty k souborům využijete v pozdější fázi, když spustíte příkaz k aplikaci konfigurace na vaše zařízení.
Tady je ukázka základního cílového obsahu pro automatickou konfiguraci zařízení:
{
"content": {
"deviceContent": {
"properties.desired.chillerWaterSettings": {
"temperature": 38,
"pressure": 78
}
}
}
}
Automatické konfigurace modulů se chovají podobně, ale cílíte moduleContent místo deviceContent.
{
"content": {
"moduleContent": {
"properties.desired.chillerWaterSettings": {
"temperature": 38,
"pressure": 78
}
}
}
}
Tady jsou příklady dotazů na metriky:
{
"queries": {
"Compliant": "select deviceId from devices where configurations.[[chillerdevicesettingswashington]].status = 'Applied' AND properties.reported.chillerWaterSettings.status='current'",
"Error": "select deviceId from devices where configurations.[[chillerdevicesettingswashington]].status = 'Applied' AND properties.reported.chillerWaterSettings.status='error'",
"Pending": "select deviceId from devices where configurations.[[chillerdevicesettingswashington]].status = 'Applied' AND properties.reported.chillerWaterSettings.status='pending'"
}
}
Dotazy na metriky pro moduly jsou podobné dotazům na zařízení, ale vybíráte moduleId z devices.modules. Například:
{
"queries": {
"Compliant": "select deviceId, moduleId from devices.module where configurations.[[chillermodulesettingswashington]].status = 'Applied' AND properties.reported.chillerWaterSettings.status='current'"
}
}
Vytvoření konfigurace
Ve službě IoT Hub úrovně Standard můžete vytvořit maximálně 100 automatických konfigurací a 10 na IoT hubech úrovně Free. Další informace najdete v tématu Kvóty a omezování.
Cílová zařízení nakonfigurujete tak, že vytvoříte konfiguraci, která se skládá z cílového obsahu a metrik. K vytvoření konfigurace použijte následující příkaz:
az iot hub configuration create --config-id [configuration id] \
--labels [labels] --content [file path] --hub-name [hub name] \
--target-condition [target query] --priority [int] \
--metrics [metric queries]
-- config-id – název konfigurace vytvořené v centru IoT. Dejte konfiguraci jedinečný název, který má délku až 128 znaků. Jsou povolena malá písmena a následující speciální znaky:
-+%_*!'. Mezery nejsou povolené.-- popisky – přidejte popisky, které vám pomůžou sledovat vaši konfiguraci. Popisky jsou páry Název, Hodnota, které popisují vaše nasazení. Například
HostPlatform, LinuxneboVersion, 3.0.1-- content – Inline JSON nebo cesta k souboru určující cílový obsah, který se má nastavit jako požadované vlastnosti dvojčete.
-- hub-name – název centra IoT, ve kterém se konfigurace vytvoří. Centrum musí být v aktuálním předplatném. Přepnutí na požadované předplatné pomocí příkazu
az account set -s [subscription name]-- target-condition – Zadejte cílovou podmínku, která určí, na která zařízení nebo moduly se touto konfigurací zaměří. V případě automatické konfigurace zařízení je podmínka založena na značkách digitálního dvojčete zařízení nebo na požadovaných vlastnostech tohoto digitálního dvojčete zařízení a měla by odpovídat formátu výrazu. Například
tags.environment='test'neboproperties.desired.devicemodel='4000x'. V případě automatické konfigurace modulu je podmínka založená na značkách modulů dvojčat nebo požadovaných vlastnostech modulů dvojčat. Napříkladfrom devices.modules where tags.environment='test'nebofrom devices.modules where properties.reported.chillerProperties.model='4000x'.-- priority – kladné celé číslo. V případě, že jsou dvě nebo více konfigurací zacílené na stejné zařízení nebo modul, platí konfigurace s nejvyšší číselnou hodnotou priority.
-- metrics – Cesta k dotazům metrik. Metriky poskytují souhrnné počty různých stavů, které může zařízení nebo modul po použití konfiguračního obsahu ohlásit. Můžete například vytvořit metriku pro čekající změny nastavení, metriku pro chyby a metriku pro úspěšné změny nastavení.
Sledovat konfiguraci
K zobrazení obsahu konfigurace použijte následující příkaz:
az iot hub configuration show --config-id [configuration id] \
--hub-name [hub name]
-- config-id – název konfigurace, která existuje v centru IoT.
-- hub-name – název centra IoT, ve kterém konfigurace existuje. Centrum musí být v aktuálním předplatném. Pomocí příkazu
az account set -s [subscription name]přepněte na požadované předplatné .
Zkontrolujte konfiguraci v příkazovém okně. Vlastnost metrik uvádí počet pro každou metriku, která se vyhodnocuje jednotlivými rozbočovači:
targetedCount – systémová metrika, která určuje počet dvojčat zařízení nebo dvojčat modulů ve službě IoT Hub, které odpovídají podmínce cílení.
appliedCount – Systémová metrika určuje počet zařízení nebo modulů s použitým cílovým obsahem.
Vaše vlastní metrika – Všechny metriky, které jste definovali, jsou uživatelské metriky.
Seznam ID zařízení, ID modulů nebo objektů pro každou metriku můžete zobrazit pomocí následujícího příkazu:
az iot hub configuration show-metric --config-id [configuration id] \
--metric-id [metric id] --hub-name [hub name] --metric-type [type]
-- config-id – název nasazení, které existuje v centru IoT.
-- ID metriky – název metriky, pro kterou chcete zobrazit seznam ID zařízení nebo ID modulů, například
appliedCount.-- hub-name – název centra IoT, ve kterém existuje nasazení. Centrum musí být v aktuálním předplatném. Pomocí příkazu
az account set -s [subscription name]přepněte na požadované předplatné .-- Typ metriky – Typ metriky může být
systemnebouser. Systémové metriky jsoutargetedCountaappliedCount. Všechny ostatní metriky jsou metriky uživatelů.
Úprava konfigurace
Když upravíte konfiguraci, změny se okamžitě replikují do všech cílových zařízení.
Pokud aktualizujete cílovou podmínku, dojde k následujícím aktualizacím:
Pokud dvojče nesplňuje starou cílovou podmínku, ale splňuje novou cílovou podmínku a tato konfigurace je nejvyšší prioritou pro toto dvojče, použije se tato konfigurace.
Pokud dvojče, které tuto konfiguraci aktuálně spouští, nesplňuje cílovou podmínku, nastavení z konfigurace se odebere a dvojče se upraví podle další konfigurace s nejvyšší prioritou.
Pokud dvojče, které tuto konfiguraci právě spouští, nesplňuje cílovou podmínku a nesplňuje cílovou podmínku žádné jiné konfigurace, nastavení z konfigurace se odebere a ve dvojčeti se neprovedou žádné další změny.
K aktualizaci konfigurace použijte následující příkaz:
az iot hub configuration update --config-id [configuration id] \
--hub-name [hub name] --set [property1.property2='value']
-- config-id – název konfigurace, která existuje v centru IoT.
-- hub-name – název centra IoT, ve kterém konfigurace existuje. Centrum musí být v aktuálním předplatném. Pomocí příkazu
az account set -s [subscription name]přepněte na požadované předplatné .-- set – aktualizujte vlastnost v konfiguraci. Můžete aktualizovat následující vlastnosti:
targetCondition – například
targetCondition=tags.location.state='Oregon'labels
priority
Odstranit konfiguraci
Když konfiguraci odstraníte, všechna dvojčata zařízení nebo dvojčata modulů převezmou další konfiguraci s nejvyšší prioritou. Pokud dvojčata nesplňují cílovou podmínku žádné jiné konfigurace, nepoužijí se žádná další nastavení.
K odstranění konfigurace použijte následující příkaz:
az iot hub configuration delete --config-id [configuration id] \
--hub-name [hub name]
-- config-id – název konfigurace, která existuje v centru IoT.
-- hub-name – název centra IoT, ve kterém konfigurace existuje. Centrum musí být v aktuálním předplatném. Pomocí příkazu
az account set -s [subscription name]přepněte na požadované předplatné .
Další kroky
V tomto článku jste zjistili, jak nakonfigurovat a monitorovat zařízení IoT ve velkém měřítku.
Informace o hromadné správě identit zařízení ioT Hubu najdete v tématu Hromadný import a export identit zařízení ioT Hubu.