Přístupy k architektuře pro IoT ve víceklientských řešeních

Multitenantní řešení IoT mají mnoho různých variant a velikostí. Můžete mít mnoho požadavků a omezení, od vlastnictví infrastruktury až po izolaci zákaznických dat až po dodržování předpisů. Definování vzoru, který splňuje všechna tato omezení návrhu, může být náročné a často to vyžaduje zvážení více dimenzí. Tento článek popisuje několikpřístupch Tento dokument obsahuje příklady víceklientských architektur, které využívají běžné komponenty podle referenční architektury IoT.

Klíčové aspekty a požadavky

Tyto aspekty a požadavky jsou prezentovány v pořadí, ve kterém jsou obvykle upřednostňovány pro návrh řešení.

Zásady správného řízení a dodržování předpisů

Aspekty zásad správného řízení a dodržování předpisů můžou vyžadovat, abyste použili konkrétní vzor nebo sadu prostředků IoT. Ne všechny služby IoT mají stejné certifikace nebo možnosti. Pokud potřebujete splnit konkrétní standardy dodržování předpisů, možná budete muset vybrat konkrétní služby. Informace o zásadách správného řízení a dodržování předpisů najdete ve vyhrazeném článku o tomto tématu.

Zásady správného řízení v IoT můžou mít také další formy, jako je vlastnictví zařízení a správa. Vlastní zákazník zařízení nebo poskytovatel řešení? Kdo vlastní správu těchto zařízení? Tyto aspekty a důsledky jsou pro každého poskytovatele řešení jedinečné a můžou vést k různým volbám v modelu technologie, modelu nasazení a modelu s více tenanty, který používáte.

Měřítko

Je důležité naplánovat škálování vašeho řešení. Škálování se často považuje za tyto tři dimenze:

  • Množství zařízení: Všechny služby správy zařízení Azure – Azure IoT Central, Azure IoT Hub Device Provisioning Service (DPS) a Azure IoT Hub – mají omezení počtu zařízení podporovaných v jedné instanci.

  • Propustnost zařízení: Různá zařízení, i ve stejném řešení, můžou mít různé požadavky na propustnost. Propustnost v tomto kontextu odkazuje jak na počet zpráv v určitém časovém období, tak na velikost zpráv. Například v řešení inteligentní budovy budou termostaty pravděpodobně hlásit data s nižší frekvencí než výtahy, zatímco v řešení připojeného vozidla bude data kamery vozidla zaznamenávat datové zprávy pravděpodobně větší než zprávy telemetrie navigace. Pokud jsou vaše zprávy omezené vzhledem k četnosti, možná budete muset vertikálně navýšit kapacitu na více instancí konkrétní služby, ale pokud jsou omezené vzhledem k velikosti, možná budete muset vertikálně navýšit kapacitu na větší instance konkrétní služby.

  • Tenanti: Škálování jednoho tenanta může být malé, ale když je vynásobí počtem tenantů, může se rychle zvětšit.

Výkon a spolehlivost

Izolace tenanta

Plně sdílená řešení můžou mít hlučné sousedy. V případech IoT Hubu a IoT Central to může vést k kódům odpovědí HTTP 429 (Příliš mnoho požadavků), což jsou těžké chyby, které můžou způsobit kaskádový efekt. Další informace naleznete v tématu Kvóty a omezování.

V plně víceklientských řešeních se tyto efekty můžou kaskádovitě kaskádovitě. Když zákazníci sdílejí ioT Huby nebo aplikace IoT Central, začnou všichni zákazníci ve sdílené infrastruktuře dostávat chyby. Vzhledem k tomu, že IoT Hub a IoT Central jsou obvykle vstupními body pro data do cloudu, další podřízené systémy, které na těchto datech závisejí, pravděpodobně také selžou. Nejčastějším výskytem tohoto problému je často překročení limitu kvóty zpráv. V této situaci je nejrychlejším a nejjednodušším řešením řešení IoT Hubu upgrade skladové položky ioT Hubu, zvýšení počtu jednotek ioT Hubu nebo obojí. U řešení IoT Central se řešení podle potřeby automaticky škáluje až na zdokumentovaný počet podporovaných zpráv.

Tenanty můžete izolovat a distribuovat napříč řídicími a komunikačními rovinami IoT pomocí vlastních zásad přidělování DPS. Pokud budete postupovat podle pokynů pro vysoce škálovaná řešení IoT, můžete spravovat další distribuci přidělení na úrovni nástroje pro vyrovnávání zatížení DPS.

Úložiště dat, dotazování, využití a uchovávání dat

Řešení IoT bývají při streamování i v klidovém stavu velmi náročná na data. Další informace o správě dat ve víceklientských řešeních najdete v tématu Přístupy architektury pro ukládání a data ve víceklientských řešeních.

Zabezpečení

Řešení IoT často mají aspekty zabezpečení na více vrstvách, zejména v řešeních nasazených v cloudové architektuře Purdue Enterprise Reference Architecture nebo Industry 4.0 . Přístup k návrhu vybraný z níže uvedených bude mít vliv na to, jaké vrstvy sítě a hranice existují; jakmile je vybraný fyzický návrh, je možné vybrat implementaci zabezpečení. Mezi nástroje, které se dají použít v jakémkoli přístupu, patří:

  • V programu Microsoft Defender for IoT byste měli zvážit komplexní řešení pro monitorování IoT, které nabízí licence EIoT na zařízení a licence webu OT pro každé zařízení zákazníka nebo web. V závislosti na přístupu vybraném dále v tomto článku nemusí být scénář licencování uživatelů s názvem Microsoft 365 možný. V takovém případě jsou k dispozici možnosti licencí pro jednotlivá zařízení a web, což jsou licenční možnosti nezávislé na licencích tenanta Microsoftu 365.

  • Azure Firewall nebo zařízení brány firewall třetí strany, které byste měli zvážit při izolování síťových vrstev a monitorování síťového provozu. Přesný výběr přístupu bude mít dopad na to, kde budou mít úlohy izolaci sítě a sdílenou síť, jak je uvedeno níže.

  • Operace Azure IoT Edge nebo Azure IoT, které byste měli zvážit jako součást připojení zařízení ke službám hostovaným v Azure bez přímého přístupu k internetu. Vzhledem k tomu, že operace Azure IoT jsou v tuto chvíli ve verzi Preview, tento dokument obecně nepopisuje použití této nabídky. Tento dokument bude řešit budoucí revize.

Většina těchto témat zabezpečení se týká víceklientských řešení podobných tomu, jak by to bylo v jednom řešení tenanta s variantami svázanými s vybraným přístupem. Jednou komponentou, která se pravděpodobně výrazně liší v celkovém řešení IoT, je identita uživatele a aplikace. Přístupy k architektuře pro identitu ve víceklientských řešeních popisují tento aspekt celkového víceklientského řešení.

Přístupy k zvážení

Všechny aspekty, které byste obvykle udělali v architektuře IoT, jsou pro všechny primární komponenty (jako je správa, příjem dat, zpracování, úložiště, zabezpečení atd.), všechny možnosti, které stále musíte provést při provádění řešení s více tenanty. Hlavním rozdílem je uspořádání a využití komponent pro podporu víceklientské architektury. Například běžné rozhodovací body úložiště se můžou rozhodnout, jestli použít SQL Server nebo Azure Data Explorer, nebo třeba na úrovni příjmu dat a správy, můžete si vybrat mezi IoT Hubem a IoT Central.

Většina řešení IoT se hodí do vzoru kořenové architektury, což je kombinace cíle nasazení, modelu tenantů a modelu nasazení. Tyto faktory jsou určeny klíčovými požadavky a aspekty popsanými výše.

Jedním z největších rozhodovacích bodů, které je potřeba provést v rámci prostoru IoT, je vybrat přístupy paaS (application-platform-as-a-service) a platforma jako služba (PaaS). Další informace najdete v tématu Porovnání přístupů řešení IoT (Internet věcí) (PaaS vs. aPaaS).

Jedná se o běžnou dilema "build vs. buy", který mnoho organizací čelí v mnoha projektech. Je důležité vyhodnotit výhody a nevýhody obou možností.

Koncepty a důležité informace o řešeních apaaS

Typické řešení aPaaS využívající Azure IoT Central jako jádro řešení může používat následující služby Azure PaaS a aPaaS:

  • Azure Event Hubs jako multiplatformní modul pro zasílání zpráv a tok dat na podnikové úrovni
  • Azure Logic Apps jako integrační platforma jako služba nebo nabídka iPaaS.
  • Azure Data Explorer jako platforma pro analýzu dat.
  • Power BI jako platforma pro vizualizace a vytváření sestav.

Architektura I O T znázorňující tenanty sdílející centrální prostředí I O T, Azure Data Explorer, Power BI a Azure Logic Apps

V předchozím diagramu tenanti sdílejí prostředí IoT Central, Azure Data Explorer, Power BI a Azure Logic Apps.

Tento přístup je obecně nejrychlejší způsob, jak získat řešení na trh. Jedná se o vysoce škálovatou službu, která podporuje víceklientskou architekturu pomocí organizací.

Je důležité si uvědomit, že protože IoT Central je nabídka aPaaS, existují určitá rozhodnutí, která nejsou součástí kontroly implementátora. Mezi tato rozhodnutí patří:

  • IoT Central používá jako svého zprostředkovatele identity ID Microsoft Entra.
  • Nasazení IoT Central se dosahuje pomocí operací řídicí roviny i roviny dat, které kombinují deklarativní dokumenty s imperativním kódem.
  • Ve víceklientských vzorech může poskytovatel služeb vynutit, aby měl více instancí IoT Central maximální limit uzlu (který platí pro obě nadřazené i listy) a maximální hloubku stromu. V takovém případě byste měli zvážit použití vzoru razítka nasazení.
  • IoT Central ukládá limity volání rozhraní API, které můžou mít vliv na velké implementace.

Koncepty a důležité informace o řešeních PaaS

Přístup založený na PaaS může používat následující služby Azure:

  • Azure IoT Hub jako základní konfigurace zařízení a komunikační platforma.
  • Služba Azure IoT Device Provisioning jako nasazení zařízení a počáteční konfigurační platforma
  • Azure Data Explorer pro ukládání a analýzu teplých a studených dat časových řad cesty ze zařízení IoT.
  • Azure Stream Analytics pro analýzu dat horké cesty ze zařízení IoT
  • Azure IoT Edge pro spouštění umělé inteligence (AI), služeb třetích stran nebo vlastní obchodní logiky na zařízeních IoT Edge.

Diagram znázorňující řešení I O T Každý tenant se připojí ke sdílené webové aplikaci, která přijímá data z I O T Hubs a aplikace funkcí. Zařízení se připojují ke službě Device Provisioning a k I O T Hubs.

V předchozím diagramu se každý tenant připojí ke sdílené webové aplikaci, která přijímá data ze služby IoT Hubs a aplikace funkcí. Zařízení se připojují ke službě Device Provisioning a ke službě IoT Hubs.

Tento přístup vyžaduje větší úsilí vývojáře k vytvoření, nasazení a údržbě řešení (oproti přístupu aPaaS). Méně funkcí je předem připravené pro usnadnění implementace. To znamená, že tento přístup také nabízí větší kontrolu, protože méně předpokladů je vloženo do základní platformy.

Vzory kořenové architektury

Následující tabulka uvádí běžné vzory pro řešení IoT s více tenanty. Každý vzor obsahuje následující informace:

  • Název vzoru, který je založený na kombinaci cíle, modelu a typu nasazení.
  • Cíl nasazení představující předplatné Azure pro nasazení prostředků.
  • Model tenantů , na který model odkazuje, jak je popsáno v modelech s více tenanty
  • Model nasazení, který odkazuje na jednoduché nasazení s minimálními aspekty nasazení, vzorem Geode nebo vzorem razítka nasazení.
Vzor Cíl nasazení Model tenantů Model nasazení
Jednoduchá SaaS Předplatné poskytovatele služeb Plně víceklient Stručně
Horizontální SaaS Předplatné poskytovatele služeb Vodorovně dělené Razítko nasazení
Automatizovaný jeden tenant Buď předplatné poskytovatele služeb, nebo předplatné zákazníka Jeden tenant na zákazníka Stručně

Jednoduchá SaaS

Diagram znázorňující architekturu I O T Tenanti sdílejí prostředí I O T Central, Azure Data Explorer, Power B I a Azure Logic Apps.

Cíl nasazení Model tenantů Model nasazení
Předplatné poskytovatele služeb Plně víceklient Stručně

Jednoduchý přístup SaaS je nejjednodušší implementací řešení SaaS IoT. Jak ukazuje předchozí diagram, veškerá infrastruktura je sdílená a infrastruktura nemá použito žádné geografické razítko ani měřítko. Infrastruktura se často nachází v rámci jednoho předplatného Azure.

Azure IoT Central podporuje koncept organizací. Organizace umožňují poskytovateli řešení snadno oddělit tenanty zabezpečeným, hierarchickým způsobem a zároveň sdílet základní návrh aplikace napříč všemi tenanty.

Komunikace se systémy mimo IoT Central, například pro dlouhodobou analýzu dat, podél studené cesty nebo připojení k obchodním operacím, se provádí prostřednictvím jiných nabídek Microsoft PaaS a aPaaS. Mezi tyto další nabídky můžou patřit následující služby:

Pokud porovnáte přístup Simple SaaS s modelem aPaaS s jedním tenantem, je mnoho charakteristik podobné. Hlavní rozdíl mezi těmito dvěma modely spočívá v tom, že v automatizovanémmodelu jednoho tenanta nasadíte pro každého tenanta samostatnou instanci IoT Central, zatímco v modelu Simple SaaS s modelem aPaaS místo toho nasadíte sdílenou instanci pro více zákazníků a pro každého tenanta vytvoříte organizaci IoT Central.

Při sdílení víceklientské datové vrstvy v tomto modelu budete muset implementovat zabezpečení na úrovni řádků, jak je popsáno v architekturových přístupech k úložišti a datům ve víceklientských řešeních, aby bylo možné izolovat zákaznická data.

Výhody:

  • Snadnější správa a provoz vzhledem k ostatním přístupům, které jsou zde uvedeny.

Rizika:

  • Tento přístup se nemusí snadno škálovat na velmi vysoký počet zařízení, zpráv nebo tenantů.

  • Vzhledem k tomu, že všechny služby a komponenty jsou sdílené, může selhání v jakékoli komponentě ovlivnit všechny vaše tenanty. Jedná se o riziko spolehlivosti a vysoké dostupnosti vašeho řešení.

  • Je důležité zvážit, jak spravovat dodržování předpisů, provoz, životní cyklus tenanta a zabezpečení dílčích parků zařízení. Tyto aspekty jsou důležité kvůli sdílené povaze tohoto typu řešení v řídicích rovinách, správě a komunikaci.

Horizontální SaaS

Cíl nasazení Model tenantů Model nasazení
Předplatné poskytovatele služeb Vodorovně dělené Razítko nasazení

Běžným přístupem ke škálovatelnosti je horizontální dělení řešení. To znamená, že máte některé sdílené komponenty a některé součásti pro jednotlivé zákazníky.

V rámci řešení IoT existuje mnoho komponent, které je možné horizontálně rozdělit. Horizontálně dělené subsystémy jsou obvykle uspořádány pomocí vzoru razítka nasazení, který se integruje s větším řešením.

Příklad vodorovného SaaS

Následující příklad architektury rozděluje IoT Central na koncového zákazníka, který slouží jako portál pro správu zařízení, komunikaci zařízení a správu. To se často provádí takovým způsobem, že koncový zákazník, který řešení využívá, má plnou kontrolu nad přidáním, odebráním a aktualizací samotných zařízení bez zásahu dodavatele softwaru. Zbytek řešení se řídí standardním vzorem sdílené infrastruktury, který řeší analýzu horkých cest, obchodní integrace, správu SaaS a potřeby analýzy zařízení.

Diagram řešení I O T Každý tenant má vlastní organizaci I O T Central, která odesílá telemetrii do sdílené aplikace funkcí a zpřístupňuje je podnikovým uživatelům tenantů prostřednictvím webové aplikace.

Každý tenant má vlastní organizaci IoT Central, která odesílá telemetrii do sdílené aplikace funkcí a zpřístupňuje ji firemním uživatelům tenantů prostřednictvím webové aplikace.

Výhody:

  • Obecně se dá snadno spravovat a provozovat, i když pro komponenty s jedním tenantem může být vyžadována další správa.
  • Flexibilní možnosti škálování, protože vrstvy se škálují podle potřeby.
  • Dopad selhání komponent je snížen. I když selhání sdílené komponenty ovlivňuje všechny zákazníky, horizontálně škálované komponenty ovlivňují pouze zákazníky, kteří jsou přidruženi ke konkrétním instancím škálování.
  • Vylepšené přehledy o spotřebě jednotlivých tenantů pro dělené komponenty
  • Dělené komponenty poskytují jednodušší přizpůsobení pro jednotlivé tenanty.

Rizika:

  • Zvažte škálování řešení, zejména pro všechny sdílené komponenty.
  • Spolehlivost a vysoká dostupnost jsou potenciálně ovlivněné. Jedno selhání sdílených komponent může mít vliv na všechny tenanty najednou.
  • Přizpůsobení součásti rozdělené na tenanta vyžaduje dlouhodobé aspekty DevOps a správy.

Níže jsou uvedeny nejběžnější komponenty, které jsou obvykle vhodné pro horizontální dělení.

Databáze

Můžete se rozhodnout rozdělit databáze. Často se jedná o telemetrická data a úložiště dat zařízení, která jsou rozdělená na oddíly. Často se používá více úložišť dat pro různé konkrétní účely, jako jsou teplé a archivní úložiště nebo informace o stavu tenantů předplatného.

Databáze pro každého tenanta oddělte pro následující výhody:

  • Podpora standardů dodržování předpisů Data každého tenanta jsou izolovaná napříč instancemi úložiště dat.
  • Opravte problémy s hlučnou sousedou.

Správa, komunikace a správa zařízení

Aplikace Azure IoT Hub Device Provisioning, IoT Hub a IoT Central je často možné nasazovat jako horizontálně dělené komponenty. Pokud tento přístup dodržujete, musíte mít další službu, která přesměruje zařízení do příslušné služby Device Provisioning pro správu, řízení a telemetrii daného tenanta. Další informace najdete v dokumentu white paper o horizontálním navýšení kapacity řešení Azure IoT na podporu milionů zařízení.

To často umožňuje koncovým zákazníkům spravovat a řídit vlastní flotily zařízení, která jsou přímo a plně izolovaná.

Pokud je rovina komunikace zařízení horizontálně rozdělená na oddíly, musí být telemetrická data rozšířena o data pro zdrojového tenanta, aby procesor streamu věděl, která pravidla tenanta se mají na datový stream použít. Pokud například zpráva telemetrie vygeneruje oznámení v procesoru streamu, procesor streamu bude muset určit správnou cestu oznámení pro přidruženého tenanta.

Zpracování datových proudů

Dělením zpracování datových proudů povolíte přizpůsobení analýzy v rámci procesorů datových proudů.

Automatizovaný jeden tenant

Automatizovaný přístup s jedním tenantem je založený na podobném rozhodovacím procesu a návrhu podnikového řešení.

Diagram znázorňující architekturu I O T pro tři tenanty Každý tenant má své vlastní identické izolované prostředí s organizací I O T Central a dalšími komponentami vyhrazenými pro ně.

Každý tenant má své vlastní identické izolované prostředí s organizací IoT Central a dalšími komponentami vyhrazenými pro ně.

Cíl nasazení Model tenantů Model nasazení
Buď předplatné poskytovatele služeb, nebo předplatné zákazníka Jeden tenant na zákazníka Stručně

Důležitým rozhodovacím bodem v tomto přístupu je volba předplatného Azure, do kterého se mají komponenty nasadit. Pokud jsou komponenty nasazené do vašeho předplatného, máte větší kontrolu a lepší přehled o nákladech na řešení, ale vyžaduje, abyste měli více aspektů zabezpečení a zásad správného řízení řešení. Naopak pokud je řešení nasazené v předplatném zákazníka, je zákazník nakonec zodpovědný za zabezpečení a zásady správného řízení nasazení.

Tento model podporuje vysoký stupeň škálovatelnosti. Důvodem je to, že požadavky na tenanta a předplatné jsou obecně omezujícími faktory ve většině řešení. Proto izolujte každého tenanta tak, aby měl velký rozsah pro škálování úloh jednotlivých tenantů, aniž by se na vás v rámci vývoje řešení významně snažil.

Tento model má také obecně nízkou latenci ve srovnání s jinými vzory, protože můžete nasadit komponenty řešení na základě zeměpisné oblasti vašich zákazníků. Geografické spřažení umožňuje kratší síťové cesty mezi zařízením IoT a nasazením Azure.

V případě potřeby můžete automatizované nasazení rozšířit tak, aby podporovalo vylepšenou latenci nebo škálování, a to tím, že umožníte rychlé nasazení dalších instancí řešení pro zákazníka v existujících nebo nových zeměpisných oblastech.

Automatizovaný přístup s jedním tenantem je podobný jednoduchému modelu SaaS aPaaS. Hlavní rozdíl mezi těmito dvěma modely spočívá v tom, že v automatizovaném přístupu s jedním tenantem nasadíte pro každého tenanta samostatnou instanci IoT Central, zatímco v jednoduchém modelu SaaS s modelem aPaaS nasadíte sdílenou instanci IoT Central s několika organizacemi IoT Central.

Výhody:

  • Relativně snadné řízení a provoz.
  • Izolace tenanta je v podstatě zaručená.

Rizika:

  • Počáteční automatizace může být pro nové vývojové pracovníky složitá.
  • Je potřeba vynutit zabezpečení přihlašovacích údajů mezi zákazníky pro správu nasazení vyšší úrovně, jinak se můžou kompromisy rozšířit mezi zákazníky.
  • Očekává se, že náklady budou vyšší, protože výhody škálování sdílené infrastruktury napříč zákazníky nejsou dostupné.
  • Pokud poskytovatel řešení vlastní údržbu každé instance, můžete mít k údržbě mnoho instancí.

Zvýšení škálování SaaS

Když rozšíříte rozsah řešení na velmi velká nasazení, na základě limitů služeb, geografických obav a dalších faktorů existují specifické problémy. Další informace o rozsáhlých architekturách nasazení IoT najdete v tématu Horizontální navýšení kapacity řešení Azure IoT pro podporu milionů zařízení.

Přispěvatelé

Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.

Hlavní autoři:

Další přispěvatelé:

Další kroky