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 vaak door IoT-oplossingen worden gebruikt, maar geen enkele oplossing gebruikt al deze onderdelen.
Architectuur
Een Visio-bestand van deze architectuur downloaden.
Werkstroom
Azure IoT-oplossingen omvatten:
- 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 ondersteunt ook smart-servergateways die aangepaste code kunnen uitvoeren. Apparaten kunnen lokale verwerkingen uitvoeren via een service zoals Azure IoT Edge, of gewoon 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 u een groot aantal apparaten op een veilige en schaalbare manier kunt registreren. Azure Digital Twins maakt virtuele modellen van systemen in de echte wereld mogelijk.
Inzichten
Zodra apparaten zijn verbonden met de cloud, kunt u hun gegevens verwerken en verkennen om aangepaste inzichten over hun omgeving te krijgen. 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.
- Met het dynamische pad worden gegevens bijna in realtime geanalyseerd wanneer deze binnenkomen. Dynamische padtelemetrie 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 worden geschreven naar een gestructureerde indeling die kan worden opgevraagd met behulp van analytische hulpprogramma's.
- Het warme pad analyseert gegevens die langere vertragingen kunnen opvangen voor gedetailleerdere 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 over 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 het gebruik van Azure Machine Learning of Azure Databricks 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:
- Het opslaan van informatieve berichten.
- Alarmeren.
- E-mail of sms-berichten verzenden.
- Integratie met zakelijke toepassingen zoals customer relationship management (CRM) en Enterprise Resource Planning (ERP).
U kunt de volgende services gebruiken voor beheer en bedrijfsintegratie:
- Power BI maakt verbinding met uw gegevens, modelleert en visualiseert deze. Met Power BI kunt u samenwerken aan gegevens en kunstmatige intelligentie gebruiken om gegevensgestuurde beslissingen te nemen.
- Azure Maps 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 voor verschillende typen inhoud. Cognitive Search bevat mogelijkheden voor indexering, AI-verrijking en query's.
- Azure API Management biedt één locatie voor het beheren van al uw API's.
- Azure App Service implementeert webtoepassingen die met uw organisatie kunnen worden geschaald.
- 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 beveiligen. Diagnostische services omvatten Azure Monitor. Met beveiligingsservices zoals Azure Active Directory (Azure AD) en Microsoft Defender voor IoT kunt u beveiligingsinstellingen en detectie en reactie op bedreigingen beheren, weergeven en beheren.
Onderdelen
- Azure RTOS
- Azure Sphere
- Azure IoT Edge
- Azure IoT Hub
- Azure IoT Hub DPS (Device Provisioning Service)
- Azure Digital Twins
- Azure Event Hubs
- Azure Functions
- Azure Stream Analytics
- Azure HDInsight
- Azure Data Explorer
- Azure Data Lake
- Azure Machine Learning
- Azure Databricks
- Power BI
- Azure Maps
- Azure Cognitive Search
- API Management
- Azure App Service
- Azure Mobile Apps
- Dynamics 365
- Microsoft Power Automate (Microsoft Flow)
- Azure Logic Apps
- Azure Monitor
- Azure AD
- Microsoft Defender for IoT
Overwegingen
Deze overwegingen implementeren de pijlers van het Azure Well-Architected Framework, 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 oplossingen voor digitale dubbels om intelligente en verbonden omgevingen te implementeren, zoals:
- Voorspellend onderhoud in de productie.
- Zichtbaarheid van de toeleveringsketen.
- Slimme planken voor realtime inventarisatie.
- Verbonden woningen en slimme gebouwen.
Betrouwbaarheid
Betrouwbaarheid zorgt ervoor dat uw toepassing kan voldoen aan de toezeggingen die u aan uw klanten doet. Zie Overzicht van de betrouwbaarheidspijler voor meer informatie.
Een belangrijk aandachtspunt voor tolerante IoT-oplossingen is bedrijfscontinuïteit en herstel na noodgevallen. Ontwerpen voor hoge beschikbaarheid (HA) en herstel na noodgevallen (DR) kan u helpen bij het definiëren en bereiken van de vereiste uptime-doelen voor uw oplossing.
Verschillende Azure-services bieden verschillende opties voor redundantie en failover om u te helpen de bedrijfstijddoelen te bereiken die het beste aansluiten bij uw bedrijfsdoelstellingen. Het opnemen van een van deze ha/dr-alternatieven in uw IoT-oplossing vereist een zorgvuldige evaluatie van de afwegingen tussen de:
- Tolerantieniveau dat u nodig hebt.
- Implementatie- en onderhoudscomplexiteit.
- Kosten van verkochte goederen (COGS) impact.
U vindt servicespecifieke prestatie-informatie 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 behandelt elke toegangspoging 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 het expliciet verifiëren van gebruikers, inzicht hebben in hun apparaten en dynamische toegangsbeslissingen kunnen nemen 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 toegang met minimale bevoegdheden om de straal te beperken.
- Bewaak de apparaatstatus om toegang te instellen of apparaten te markeren 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 verlopen:
- Gegevensversleuteling en digitale handtekeningen met een bewijsbaar veilig, openbaar geanalyseerd en breed geïmplementeerd versleutelingsalgoritmen voor symmetrische sleutels.
- 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 X.509-certificaatverwerking vervangen door de meer rekenefficiënte en wire-efficiënte modus voor vooraf gedeelde sleutels 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 voor 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 hele systeem te waarborgen.
Bijvoorbeeld:
- Kies microcontrollers/microprocessors of aanvullende hardware die veilige opslag en het gebruik van cryptografisch sleutelmateriaal biedt, zoals TPM-integratie (Trusted Platform Module).
- Veranker beveiligd opstartlaadprogramma en beveilig het laden van software in de TPM.
- Gebruik sensoren voor het detecteren van inbraakpogingen en pogingen om de apparaatomgeving te manipuleren, met waarschuwingen en mogelijke 'digitale zelfvernietiging' van het apparaat.
Kostenoptimalisatie
Kostenoptimalisatie gaat over het zoeken naar manieren om onnodige kosten te verminderen en operationele efficiëntie te verbeteren. Zie Overzicht van de pijler kostenoptimalisatie voor meer informatie.
Over het algemeen gebruikt u de Azure-prijscalculator om de kosten te schatten. 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 prestatie-efficiëntiepijler voor meer informatie.
Bouw uw oplossing voor wereldwijde implementatie. Voor optimale schaalbaarheid bouwt u uw IoT-toepassing met discrete services die onafhankelijk kunnen worden geschaald. In deze sectie worden overwegingen voor de schaalbaarheid van 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 quota en beperking IoT Hub 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 leest van 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 kunnen het beste worden geschaald als ze op alle punten in de Stream Analytics-pijplijn parallel zijn, van invoer tot query tot 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. Het is oorspronkelijk geschreven door de volgende inzenders.
Hoofdauteur:
- Matthew Cosner - Nederland | Principal Software Engineering Manager
Andere inzender:
- Armando Blanco Garcia | Senior Program Manager
Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.
Volgende stappen
- Referentiearchitectuur voor Microsoft Azure IoT
- IoT-beveiligingsarchitectuur (Internet of Things)
- Zero Trust cyberbeveiliging voor het Internet of Things
- Technische richtlijnen voor Azure Business Continuity
- Herstel na noodgevallen en hoge beschikbaarheid voor Azure-toepassingen