Dela via


Azure IoT Central-arkitektur

IoT Central är en färdig miljö som gör att du snabbt kan utvärdera ditt IoT-scenario. Det är en IoT-lösning (programplattform som en tjänst) och dess primära gränssnitt är ett webbgränssnitt. Det finns också ett REST-API som gör att du kan interagera med ditt program programmatiskt.

Den här artikeln innehåller en översikt över nyckelelementen i en IoT Central-lösningsarkitektur.

Diagram som visar arkitekturen på hög nivå för en I o T Central-lösning.

Viktiga funktioner i ett IoT Central-program är:

Hantera enheter

Med IoT Central kan du hantera flottan av IoT-enheter som skickar data till din lösning. Du kan till exempel:

  • Kontrollera vilka enheter som kan ansluta till ditt program och hur de autentiserar.
  • Använd enhetsmallar för att definiera vilka typer av enheter som kan ansluta till ditt program.
  • Hantera enheter genom att ange egenskaper eller anropa kommandon på anslutna enheter. Ange till exempel en måltemperaturegenskap för en termostatenhet eller anropa ett kommando för att utlösa en enhet för att uppdatera den inbyggda programvaran. Du kan ange egenskaper och anropa kommandon på:
  • Underhålla enhetsmetadata, till exempel kundadress eller senaste tjänstdatum.

Visa och analysera data

I ett IoT Central-program kan du visa och analysera data för enskilda enheter eller för aggregerade data från flera enheter:

  • Använd mappning för att omvandla komplex enhetstelemetri till strukturerade data i IoT Central.
  • Använd enhetsmallar för att definiera anpassade vyer för enskilda enheter av specifika typer. Du kan till exempel rita temperatur över tid för en enskild termostat eller visa en leveransbils liveplats.
  • Använd den inbyggda analysen för att visa aggregerade data för flera enheter. Du kan till exempel se den totala beläggningen i flera butiker eller identifiera de butiker som har de högsta eller lägsta beläggningspriserna.
  • Skapa anpassade instrumentpaneler som hjälper dig att hantera dina enheter. Du kan till exempel lägga till kartor, paneler och diagram för att visa enhetens telemetri.

Säkra din lösning

I IoT Central kan du konfigurera och hantera säkerhet inom följande områden:

  • Användaråtkomst till ditt program.
  • Enhetsåtkomst till ditt program.
  • Programmatisk åtkomst till ditt program.
  • Autentisering till andra tjänster från ditt program.
  • Spårningsloggar spårar aktivitet i ditt program.

Mer information finns i säkerhetsguiden för IoT Central.

Enheter

Enheter samlar in data från sensorer för att skicka som en ström av telemetri till ett IoT Central-program. En kylenhet skickar till exempel en ström med temperaturvärden eller en leveransbil strömmar sin plats.

En enhet kan använda egenskaper för att rapportera dess tillstånd, till exempel om en ventil är öppen eller stängd. Ett IoT Central-program kan också använda egenskaper för att ange enhetstillstånd, till exempel ställa in en måltemperatur för en termostat.

IoT Central kan också styra enheter genom att anropa kommandon på enheten. Du kan till exempel instruera en enhet att ladda ned och installera en uppdatering av den inbyggda programvaran.

Telemetri, egenskaper och kommandon som en enhet implementerar kallas gemensamt för enhetsfunktioner. Du definierar dessa funktioner i en modell som enheten och IoT Central-programmet delar. I IoT Central är den här modellen en del av enhetsmallen som definierar en viss typ av enhet. Mer information finns i Tilldela en enhet till en enhetsmall.

Enhetsimplementeringen bör följa IoT Plug and Play-konventionerna för att säkerställa att den kan kommunicera med IoT Central. Mer information finns i de olika språk-SDK :erna och exemplen.

Enheter ansluter till IoT Central med ett protokoll som stöds: MQTT, AMQP eller HTTP.

Gateways

Lokala gatewayenheter är användbara i flera scenarier, till exempel:

  • Enheter kan inte ansluta direkt till IoT Central eftersom de inte kan ansluta till Internet. Du kan till exempel ha en samling Bluetooth-aktiverade inaktiveringssensorer som behöver ansluta via en gatewayenhet.
  • Mängden data som genereras av dina enheter är hög. Minska kostnaderna genom att kombinera eller aggregera data i en lokal gateway innan du skickar dem till ditt IoT Central-program.
  • Din lösning kräver snabba svar på avvikelser i data. Du kan köra regler på en gatewayenhet som identifierar avvikelser och vidta en åtgärd lokalt utan att behöva skicka data till ditt IoT Central-program.

Gateway-enheter kräver vanligtvis mer bearbetningskraft än en fristående enhet. Ett alternativ för att implementera en gatewayenhet är att använda Azure IoT Edge och tillämpa något av standardmönstret för IoT Edge-gateway. Du kan också köra din egen anpassade gatewaykod på en lämplig enhet.

Exportera data

Även om IoT Central har inbyggda analysfunktioner kan du exportera data till andra tjänster och program.

Med transformeringar i en IoT Central-dataexportdefinition kan du ändra format och struktur för enhetsdata innan du exporterar dem till ett mål.

Orsaker till att exportera data är:

Lagring och analys

För långsiktig lagring och kontroll över arkiverings- och kvarhållningsprinciper kan du kontinuerligt exportera dina data till andra lagringsmål. Med hjälp av en separat lagringstjänst utanför IoT Central kan du använda andra analysverktyg för att härleda insikter från data i din lösning.

Affärsautomatisering

Med regler i IoT Central kan du utlösa externa åtgärder, till exempel att skicka ett e-postmeddelande eller utlösa en händelse, som svar på villkoren i IoT Central. Du kan till exempel meddela en tekniker om den omgivande temperaturen för en enhet når ett tröskelvärde.

Ytterligare beräkning

Du kan behöva transformera eller göra beräkningar på dina data innan de kan användas antingen i IoT Central eller någon annan tjänst. Du kan till exempel lägga till lokal väderinformation till platsdata som rapporterats av en leveransbil.

Utöka med REST API

Skapa integreringar som låter andra program och tjänster hantera ditt program. Du kan till exempel programmatiskt hantera enheterna i ditt program eller synkronisera användarinformation med ett externt system.

Skalbarhet

IoT Central-program använder internt flera Azure-tjänster, till exempel IoT Hub och Device Provisioning Service (DPS). Många av dessa underliggande tjänster är flera klientorganisationer. Men för att säkerställa fullständig isolering av kunddata använder IoT Central IoT-hubbar med en enda klientorganisation.

IoT Central skalar automatiskt sina IoT-hubbar baserat på belastningsprofilerna i ditt program. IoT Central kan skala upp enskilda IoT-hubbar och skala ut antalet IoT-hubbar i ett program. IoT Central skalar även automatiskt andra underliggande tjänster.

Dataexport

IoT Central-program använder ofta andra användardefinierade tjänster. Du kan till exempel konfigurera ditt IoT Central-program att kontinuerligt exportera data till tjänster som Azure Event Hubs och Azure Blob Storage.

Om en konfigurerad dataexport inte kan skriva till målet försöker IoT Central att överföra data igen i upp till 15 minuter, varefter IoT Central markerar målet som misslyckat. Misslyckade mål kontrolleras regelbundet för att kontrollera om de kan skrivas.

Du kan tvinga IoT Central att starta om de misslyckade exporterna genom att inaktivera och återaktivera dataexporten.

Granska metodtipsen för hög tillgänglighet och skalbarhet för den dataexportmåltjänst som du använder:

Hög tillgänglighet och haveriberedskap

HADR-funktioner beror på när du skapade ditt IoT Central-program:

Program som skapats före april 2021

Vissa program som skapades före april 2021 använder en enda IoT-hubb. För dessa program tillhandahåller IoT Central inte HADR-funktioner. Om IoT-hubben blir otillgänglig blir programmet otillgängligt.

az iot central device manual-failover Använd kommandot för att kontrollera om programmet fortfarande använder en enda IoT-hubb. Det här kommandot returnerar ett fel om programmet har en enda IoT-hubb.

Program som skapats efter april 2021 och före april 2023

För enhetsanslutning med hög tillgänglighet har ett IoT Central-program alltid minst två IoT-hubbar. Antalet hubbar kan växa eller krympa när IoT Central skalar programmet som svar på ändringar i belastningsprofilen.

IoT Central använder också tillgänglighetszoner för att göra olika tjänster som används med hög tillgänglighet.

En incident som kräver haveriberedskap kan sträcka sig från att en delmängd av tjänsterna blir otillgängliga till att en hel region blir otillgänglig. IoT Central följer olika återställningsprocesser beroende på incidentens art och omfattning. Om till exempel en hel Azure-region blir otillgänglig i kölvattnet av ett oåterkalleligt fel, redundansväxlar haveriberedskapsprogram till en annan region i samma geografiska område.

Program som skapats efter april 2023

IoT Central-program som skapats efter april 2023 har inledningsvis en enda IoT-hubb. Om IoT-hubben blir otillgänglig blir programmet otillgängligt. IoT Central skalar dock automatiskt programmet och lägger till en ny IoT-hubb för varje 10 000 anslutna enheter. Om du behöver flera IoT-hubbar för program med färre än 10 000 enheter skickar du en begäran till kundsupporten för IoT Central.

az iot central device manual-failover Använd kommandot för att kontrollera om ditt program för närvarande använder en enda IoT-hubb. Det här kommandot returnerar ett fel om programmet för närvarande har en enda IoT-hubb.