Azure IoT-referentiearchitectuur

Azure Functions
Azure IoT Hub
Azure Stream Analytics
Azure Digital Twins

U kunt aangepaste IoT-oplossingen maken door Azure PaaS-onderdelen (platform-as-a-service) samen te stellen, zoals in dit artikel wordt beschreven. In het artikel en dit diagram worden Azure-onderdelen en -services beschreven die ioT-oplossingen vaak gebruiken, maar geen enkele oplossing maakt gebruik van al deze onderdelen.

Architectuur

Diagram met architectuur voor IoT-toepassingen met behulp van Azure PaaS-onderdelen.

Een Visio-bestand van deze architectuur downloaden.

Workflow

Azure IoT-oplossingen hebben betrekking op:

  • Dingen, meestal apparaten die gegevens genereren.
  • Inzichten die u over de gegevens opdeelt.
  • Acties die u uitvoert op basis van inzichten.

Een motor verzendt bijvoorbeeld temperatuurgegevens. U gebruikt deze gegevens om te evalueren of de motor naar verwachting presteert. U gebruikt het inzicht in de prestaties van de motor om prioriteit te geven aan het onderhoudsschema.

Apparaten

Azure IoT ondersteunt een groot aantal apparaten, van microcontrollers met Azure RTOS en Azure Sphere tot ontwikkelaarsborden zoals MX Chip en Raspberry Pi. Azure IoT biedt ook ondersteuning voor slimme servergateways die aangepaste code kunnen uitvoeren. Apparaten kunnen lokale verwerking uitvoeren via een service zoals Azure IoT Edge of rechtstreeks verbinding maken met Azure, zodat ze gegevens kunnen verzenden naar en ontvangen van de IoT-oplossing.

Wanneer apparaten zijn verbonden met de cloud, zijn er verschillende services die helpen bij het opnemen van gegevens. Azure IoT Hub is een cloudgatewayservice waarmee apparaten veilig kunnen worden verbonden en beheerd. Azure IoT Hub Device Provisioning Service (DPS) maakt zero-touch just-in-time-inrichting mogelijk waarmee een groot aantal apparaten op een veilige en schaalbare manier kan worden geregistreerd. Azure Digital Twins maakt virtuele modellen van echte systemen mogelijk.

Inzichten

Zodra apparaten zijn verbonden met de cloud, kunt u hun gegevens verwerken en verkennen om aangepaste inzichten over hun omgeving te verkrijgen. Op hoog niveau zijn er drie manieren om gegevens te verwerken: dynamisch pad, warm pad en koud pad. De paden verschillen in hun vereisten voor latentie en gegevenstoegang.

  • Het dynamische pad analyseert gegevens in bijna realtime wanneer deze binnenkomen. Telemetrie van dynamisch pad moet worden verwerkt met een zeer lage latentie. Het dynamische pad maakt doorgaans gebruik van een stroomverwerkingsengine. Overweeg het gebruik van services zoals Azure Stream Analytics of Azure HDInsight. De uitvoer kan een waarschuwing activeren of naar een gestructureerde indeling worden geschreven die kan worden opgevraagd met behulp van analytische hulpprogramma's.
  • Het warme pad analyseert gegevens die langere vertragingen kunnen opvangen voor meer gedetailleerde verwerking. Overweeg Azure Data Explorer voor het opslaan en analyseren van grote hoeveelheden gegevens.
  • Het koude pad voert batchverwerking uit met langere intervallen, zoals elk uur of dagelijks. Het koude pad werkt doorgaans via grote hoeveelheden gegevens, die kunnen worden opgeslagen in Azure Data Lake Storage. Resultaten hoeven niet zo tijdig te zijn als in de dynamische of warme paden. Overweeg om Azure Machine Learning of Azure Databricks te gebruiken om koude gegevens te analyseren.

Acties

U kunt de inzichten die u over uw gegevens verzamelt, gebruiken om uw omgeving te beheren en te beheren. Acties voor bedrijfsintegratie kunnen het volgende omvatten:

  • Informatieve berichten opslaan.
  • Alarmen aansteken.
  • E-mail of sms-berichten verzenden.
  • Integratie met bedrijfstoepassingen zoals CRM (Customer Relationship Management) en Enterprise Resource Planning (ERP).

U kunt de volgende services gebruiken voor beheer en bedrijfsintegratie:

  • Power BI maakt verbinding met, modellen en visualiseert uw gegevens. Met Power BI kunt u samenwerken aan gegevens en kunstmatige intelligentie gebruiken om gegevensgestuurde beslissingen te nemen.
  • Azure Kaarten maakt locatiebewuste web- en mobiele toepassingen met behulp van georuimtelijke API's, SDK's en services zoals zoeken, kaarten, routering, tracering en verkeer.
  • Azure Cognitive Search biedt een zoekservice over verschillende soorten inhoud. Cognitive Search omvat indexering, AI-verrijking en querymogelijkheden.
  • Azure API Management biedt één locatie voor het beheren van al uw API's.
  • Azure-app Service implementeert webtoepassingen die worden geschaald met uw organisatie.
  • Azure Mobile Apps bouwt platformoverschrijdende en systeemeigen apps voor iOs, Android, Windows of Mac.
  • Dynamics 365 combineert CRM en ERP in de cloud.
  • Microsoft Power Automate (Microsoft Flow) is een SaaS-aanbieding voor het automatiseren van werkstromen in toepassingen en andere SaaS-services.
  • Azure Logic Apps maakt en automatiseert werkstromen die uw apps, gegevens, services en systemen integreren.

Azure biedt ook verschillende services waarmee u uw volledige IoT-oplossing kunt bewaken en veilig kunt houden. Diagnostische services omvatten Azure Monitor. Beveiligingsservices zoals Microsoft Entra ID en Microsoft Defender for IoT helpen u bij het beheren, weergeven en beheren van beveiligingsinstellingen en detectie en reactie van bedreigingen.

Onderdelen

Overwegingen

Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die kunnen worden gebruikt om de kwaliteit van een workload te verbeteren. Zie Microsoft Azure Well-Architected Framework voor meer informatie.

Beheerbaarheid

U kunt Azure Digital Twins gebruiken om verbonden omgevingen te beheren en te bewaken. Een digitale dubbel is een virtueel model van een echte omgeving die wordt aangestuurd met gegevens van bedrijfssystemen en IoT-apparaten. Bedrijven en organisaties gebruiken digitale dubbels om inzichten en acties mogelijk te maken. Ontwikkelaars en architecten gebruiken digitale dubbeloplossingen om intelligente en verbonden omgevingen te implementeren, zoals:

  • Voorspellend onderhoud in productie.
  • Zichtbaarheid van toeleveringsketen.
  • Slimme planken voor realtime voorraad.
  • Verbinding maken huizen en slimme gebouwen.

Betrouwbaarheid

Betrouwbaarheid zorgt ervoor dat uw toepassing kan voldoen aan de toezeggingen die u aan uw klanten hebt gedaan. Zie Overzicht van de betrouwbaarheidspijler voor meer informatie.

Een belangrijk aandachtspunt voor flexibele IoT-oplossingen is bedrijfscontinuïteit en herstel na noodgevallen. Ontwerpen voor hoge beschikbaarheid (HA) en herstel na noodgevallen (DR) kunnen u helpen bij het definiëren en bereiken van de vereiste uptimedoelstellingen voor uw oplossing.

Verschillende Azure-services bieden verschillende opties voor redundantie en failover om u te helpen de bedrijfstijddoelen te bereiken die het beste bij uw bedrijfsdoelstellingen passen. Voor het opnemen van een van deze HA/DR-alternatieven in uw IoT-oplossing is een zorgvuldige evaluatie van de afwegingen tussen:

  • Tolerantieniveau dat u nodig hebt.
  • Implementatie- en onderhoudscomplexiteit.
  • Gevolgen voor de kosten van verkochte goederen (COGS).

U vindt servicespecifieke prestatiegegevens in de documentatie voor elke Azure IoT-service.

Beveiliging

Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie Overzicht van de beveiligingspijler voor meer informatie. Deze sectie bevat overwegingen voor het bouwen van veilige oplossingen.

Zero Trust-beveiligingsmodel

Zero Trust is een beveiligingsmodel dat ervan uitgaat dat schendingen plaatsvinden en elke toegangspoging behandelt alsof deze afkomstig is van een open netwerk. Zero Trust gaat ervan uit dat u de basisbeginselen hebt geïmplementeerd, zoals het beveiligen van identiteiten en het beperken van de toegang.

Basisbeveiligingsimplementatie omvat expliciet het verifiëren van gebruikers, het hebben van inzicht in hun apparaten en het kunnen nemen van dynamische toegangsbeslissingen met behulp van realtime risicodetectie. Nadat u de basisbeginselen hebt uitgevoerd, kunt u uw focus verplaatsen naar de volgende vertrouwensvereisten voor IoT-oplossingen:

  • Gebruik een sterke identiteit om apparaten te verifiëren.
  • Gebruik minimale bevoegde toegang om de straal te beperken.
  • Bewaak de apparaatstatus om toegang tot apparaten te gaten of markeer apparaten voor herstel.
  • Updates uitvoeren om apparaten in orde te houden.
  • Bewaken om opkomende bedreigingen te detecteren en erop te reageren.

Betrouwbare en veilige communicatie

Alle gegevens die worden ontvangen en verzonden naar een apparaat, moeten betrouwbaar zijn. Tenzij een apparaat de volgende cryptografische mogelijkheden kan ondersteunen, moet het worden beperkt tot lokale netwerken en moet alle communicatie tussen netwerken via een veldgateway gaan:

  • Gegevensversleuteling en digitale handtekeningen met een duidelijk veilig, openbaar geanalyseerd en breed geïmplementeerd algoritme voor symmetrische sleutelversleuteling.
  • Ondersteuning voor TLS 1.2 voor TCP of andere op stromen gebaseerde communicatiepaden of DTLS 1.2 voor op datagram gebaseerde communicatiepaden. Ondersteuning voor X.509-certificaatafhandeling is optioneel. U kunt de verwerking van X.509-certificaten vervangen door de meer rekenefficiënte en draadefficiënte vooraf gedeelde sleutelmodus voor TLS, die u kunt implementeren met ondersteuning voor de AES- en SHA-2-algoritmen.
  • Archief met sleutels die kunnen worden bijgewerkt en apparaatsleutels. Elk apparaat moet uniek sleutelmateriaal of tokens hebben die het aan het systeem identificeren. De apparaten moeten de sleutel veilig opslaan op het apparaat (bijvoorbeeld met behulp van een beveiligd sleutelarchief). Het apparaat moet de sleutels of tokens periodiek kunnen bijwerken of reactief in noodsituaties, zoals bij een schending van het systeem.
  • De firmware en toepassingssoftware op het apparaat moeten updates toestaan om het herstellen van vastgestelde beveiligingsproblemen mogelijk te maken.

Veel apparaten zijn te beperkt om deze vereisten te ondersteunen. In dat geval moet u een veldgateway gebruiken. Apparaten maken via een lokaal netwerk veilig verbinding met de veldgateway en de gateway zorgt voor beveiligde communicatie met de cloud.

Bescherming tegen fysieke manipulatie

Aanbevolen apparaatontwerp bevat functies die bescherming bieden tegen fysieke manipulatiepogingen, om de beveiliging, integriteit en betrouwbaarheid van het algehele systeem te waarborgen.

Voorbeeld:

  • Kies microcontrollers/microprocessoren of aanvullende hardware die veilige opslag bieden en cryptografische sleutels gebruiken, bijvoorbeeld door integratie van een TPM (Trusted Platform Module).
  • Anker beveiligd opstartlaadprogramma en beveilig software laden in de TPM.
  • Gebruik sensoren om inbraakpogingen te detecteren en pogingen om de apparaatomgeving te manipuleren, met waarschuwingen en mogelijke 'digitale zelfvernietiging' van het apparaat.

Kostenoptimalisatie

Kostenoptimalisatie gaat over manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie Overzicht van de pijler kostenoptimalisatie voor meer informatie.

Gebruik in ieder geval de prijscalculator om een schatting van de kosten te maken. Andere overwegingen worden beschreven in de sectie Kosten in Microsoft Azure Well-Architected Framework.

Prestatie-efficiëntie

Prestatie-efficiëntie is de mogelijkheid om op efficiënte wijze uw werkbelasting te schalen om te voldoen aan de vereisten die gebruikers eraan stellen. Zie overzicht van de pijler Prestatie-efficiëntie voor meer informatie.

Bouw uw oplossing om op wereldwijde schaal te implementeren. Bouw uw IoT-toepassing met afzonderlijke services die onafhankelijk van elkaar kunnen worden geschaald voor optimale schaalbaarheid. In deze sectie worden overwegingen voor schaalbaarheid voor verschillende Azure-services beschreven.

IoT Hub

Elke IoT-hub wordt ingericht met een bepaald aantal eenheden in een specifieke prijs- en schaalcategorie. De laag en het aantal eenheden bepalen het maximale dagelijkse quotum voor berichten dat apparaten naar de hub kunnen verzenden. Zie IoT Hub-quota en bandbreedtebeperking voor meer informatie. U kunt een hub opschalen zonder dat bestaande bewerkingen worden onderbroken.

Houd rekening met de volgende schaalfactoren voor IoT Hub:

  • Het maximale dagelijkse quotum van berichten naar IoT Hub.
  • Het quotum van verbonden apparaten in een IoT Hub-instantie.
  • Opnamedoorvoer: hoe snel IoT Hub berichten kan opnemen.
  • Doorvoer verwerken: hoe snel de binnenkomende berichten worden verwerkt.

Berichten van apparaten worden op basis van de apparaat-id automatisch in partities verdeeld door IoT Hub. Alle berichten vanaf een bepaald apparaat worden altijd in dezelfde partitie bezorgd, maar één partitie kan berichten van meerdere apparaten bevatten. De eenheid van parallellisering is daarom de partitie-id.

Azure Functions

Wanneer Azure Functions wordt gelezen vanuit een Azure Event Hubs-eindpunt , is er een maximum aantal functie-exemplaren per Event Hub-partitie. De maximale verwerkingssnelheid wordt bepaald door hoe snel een functie-exemplaar de gebeurtenissen uit een enkele partitie kan verwerken. De functie moet berichten in batches verwerken.

Stream Analytics

Stream Analytics-taken worden het beste geschaald als ze parallel zijn op alle punten in de Stream Analytics-pijplijn, van invoer tot query naar uitvoer. Bij een volledig parallelle taak kan het werk door Stream Analytics worden verdeeld over meerdere rekenknooppunten. Zie Query-parallellisatie gebruiken in Azure Stream Analytics voor meer informatie.

Medewerkers

Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.

Hoofdauteur:

Andere inzender:

Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.

Volgende stappen