Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
              Gäller för: IoT Edge 1.5
 IoT Edge 1.5
Viktigt!
IoT Edge 1.5 LTS är den version som stöds. IoT Edge 1.4 LTS upphör från och med den 12 november 2024. Om du har en tidigare version läser du Uppdatera IoT Edge.
IoT Edge-runtime är en uppsättning program som förvandlar en enhet till en IoT Edge-enhet. Med körningskomponenterna kan IoT Edge-enheter ta emot kod för att köras på distans och kommunicera resultaten.
IoT Edge-runtime ansvarar för följande funktioner på IoT Edge-enheter:
- Installera och uppdatera arbetslaster. 
- Underhåll Säkerhetsstandarder för Azure IoT Edge. 
- Se till att IoT Edge-modulerna fortsätter att köras . 
- Rapportera modulens hälsa till molnet för fjärrövervakning. 
- Hantera kommunikation mellan: - Underordnade enheter och IoT Edge-enheter
- Moduler på en IoT Edge-enhet
- En IoT Edge-enhet och molnet
- IoT Edge-enheter
 
Ansvarsområdena för IoT Edge-körningen delas in i två kategorier: kommunikation och modulhantering. Dessa två roller utförs av två komponenter som ingår i IoT Edge-körningen. IoT Edge-agenten distribuerar och övervakar modulerna, medan IoT Edge-hubben ansvarar för kommunikation.
Både IoT Edge-agenten och IoT Edge-hubben är moduler, precis som alla andra moduler som körs på en IoT Edge-enhet. De kallas ibland för körningsmoduler.
IoT Edgeagent
IoT Edge-agenten är en av två moduler i Azure IoT Edge-körningen. Den instansierar moduler, ser till att de fortsätter att köras och rapporterar sin status till IoT Hub. Dessa konfigurationsdata skrivs som en egenskap för modultvillingen för IoT Edge-agenten.
IoT Edge-säkerhetsdaemonen startar IoT Edge-agenten vid enhetsstart. Agenten hämtar sin modultvilling från IoT Hub och granskar distributionsmanifestet. Distributionsmanifestet är en JSON-fil som deklarerar de moduler som måste startas.
Varje objekt i distributionsmanifestet innehåller specifik information om en modul och används av IoT Edge-agenten för att styra modulens livscykel. Mer information om alla egenskaper som används av IoT Edge-agenten för att styra moduler finns i Egenskaper för IoT Edge-agenten och IoT Edge-hubbmodultvillingarna.
IoT Edge-agenten skickar körningssvar till IoT Hub. Här är en lista över möjliga svar:
- 200 - OK
- 400 – Distributionskonfigurationen är felaktig eller ogiltig.
- 417 – Enheten har ingen konfigurationsuppsättning för distribution.
- 412 – Schemaversionen i distributionskonfigurationen är ogiltig.
- 406 – IoT Edge-enheten är offline eller skickar inte statusrapporter.
- 500 – Ett fel uppstod i IoT Edge-miljön.
Mer information om hur du skapar distributionsmanifest finns i Lär dig hur du distribuerar moduler och upprättar vägar i IoT Edge.
Säkerhet
IoT Edge-agenten spelar en viktig roll för säkerheten för en IoT Edge-enhet. Den utför till exempel åtgärder som att verifiera en moduls avbildning innan den startas.
För mer information om säkerhetsramverket för Azure IoT Edge, läs om IoT Edge-säkerhetschefen.
IoT Edge-hubb
IoT Edge-hubben är den andra modulen som utgör Azure IoT Edge-körningen. Den fungerar som en lokal proxy för IoT Hub genom att exponera samma protokollslutpunkter som IoT Hub. Den här konsekvensen innebär att klienter kan ansluta till IoT Edge-miljön precis som de skulle göra med IoT Hub.
IoT Edge-hubben är inte en fullständig lokal version av IoT Hub. Vissa uppgifter delegeras till IoT Hub. IoT Edge-hubben laddar till exempel automatiskt ned auktoriseringsinformation från IoT Hub på sin första anslutning för att göra det möjligt för en enhet att ansluta. När den första anslutningen har upprättats cachelagras auktoriseringsinformation lokalt av IoT Edge-hubben. Framtida anslutningar från den enheten är auktoriserade utan att behöva ladda ned auktoriseringsinformation från molnet igen.
Molnkommunikation
För att minska den bandbredd som din IoT Edge-lösning använder optimerar IoT Edge-hubben hur många faktiska anslutningar som görs till molnet. IoT Edge-hubben tar logiska anslutningar från moduler eller underordnade enheter och kombinerar dem för en enda fysisk anslutning till molnet. Informationen om den här processen är transparent för resten av lösningen. Klienterna tror att de har en egen anslutning till molnet trots att alla skickas via samma anslutning. IoT Edge-hubben kan antingen använda AMQP eller MQTT-protokollet för att kommunicera uppströms med molnet, oberoende av protokoll som används av underordnade enheter. IoT Edge-hubben har dock för närvarande endast stöd för att kombinera logiska anslutningar till en enda fysisk anslutning med hjälp av AMQP som uppströmsprotokoll och dess multiplexingfunktioner. AMQP är standarduppströmsprotokollet.
IoT Edge-hubben kan avgöra om den är ansluten till IoT Hub. Om anslutningen går förlorad sparar IoT Edge-hubben meddelanden eller tvillinguppdateringar lokalt. När en anslutning har återupprättats synkroniseras alla data. Den plats som används för denna temporära cache bestäms av en egenskap för IoT Edge-hubbens modultvilling. Cachens storlek är inte begränsad och växer så länge enheten har lagringskapacitet. Mer information finns i Offlinefunktioner.
Lokal kommunikation
IoT Edge-hubben underlättar lokal kommunikation. Den möjliggör kommunikation från enhet till modul och mellan moduler genom att förmedla meddelanden så att enheter och moduler förblir oberoende av varandra. IoT Edge-hubben stöder de meddelanderoutningsfunktioner som stöds av IoT Hub.
Använda routning
Koordinatormekanismen använder samma routningsfunktioner som IoT Hub för att ange hur meddelanden skickas mellan enheter eller moduler. De första enheterna eller modulerna anger de indata som de accepterar meddelanden på och de utdata som de skriver meddelanden till. Sedan kan en lösningsutvecklare dirigera meddelanden mellan en källa (till exempel utdata) och ett mål (till exempel indata) med potentiella filter.
Routning kan användas av enheter eller moduler som skapats med Azure IoT Device SDK:er med hjälp av AMQP-protokollet. Alla meddelande-IoT Hub-primitiver (till exempel telemetri), direkta metoder, C2D, tvillingar, stöds men kommunikation över användardefinierade ämnen stöds inte.
Mer information om vägar finns i Lär dig hur du distribuerar moduler och upprättar vägar i IoT Edge.
Tillgängliga funktioner för förmedlingsmekanism:
| Egenskaper | Routning | 
|---|---|
| D2C-telemetri | ✔ | 
| Lokal telemetri | ✔ | 
| DirectMethods | ✔ | 
| Tvilling | ✔ | 
| C2D för enheter | ✔ | 
| Beställning | ✔ | 
| Filtrering | ✔ | 
| Användardefinierade ämnen | |
| Enhet-till-enhet | |
| Lokal sändning | 
Ansluta till IoT Edge-hubben
IoT Edge-hubben accepterar anslutningar från enhets- eller modulklienter, antingen via MQTT-protokollet eller AMQP-protokollet.
Anmärkning
IoT Edge-hubben stöder klienter som ansluter med MQTT eller AMQP. Den stöder inte klienter som använder HTTP.
När en klient ansluter till IoT Edge-hubben händer följande:
- Om TLS (Transport Layer Security) används (rekommenderas) skapas en TLS-kanal för att upprätta en krypterad kommunikation mellan klienten och IoT Edge-hubben.
- Autentiseringsinformation skickas från klienten till IoT Edge-hubben för att identifiera sig själv.
- IoT Edge-hubben auktoriserar eller avvisar anslutningen baserat på dess auktoriseringsprincip.
Säkra anslutningar (TLS)
Som standard accepterar IoT Edge-hubben endast anslutningar som skyddas med TLS (Transport Layer Security), till exempel krypterade anslutningar som en tredje part inte kan dekryptera.
När en klient ansluter på port 8883 (MQTTS) eller 5671 (AMQPS) till IoT Edge-hubben upprättas en TLS-kanal. Under TLS-handskakningen skickar IoT Edge-hubben sin certifikatkedja som klienten behöver verifiera. För att verifiera certifikatkedjan måste rotcertifikatet för IoT Edge-hubben installeras som ett betrott certifikat på klienten. Om rotcertifikatet inte kan verifieras avvisas klientbiblioteket av IoT Edge hubben på grund av ett certifikatverifieringsfel.
Stegen som ska följas för att installera det här rotcertifikatet för mäklaren på enhetsklienter beskrivs i den transparenta gatewayen och i dokumentationen för att förbereda en nedströmsenhet. Moduler kan använda samma rotcertifikat som IoT Edge-hubben med hjälp av daemon-API:et för IoT Edge.
Autentisering
IoT Edge Hub accepterar endast anslutningar från enheter eller moduler som har en IoT Hub-identitet. Till exempel de som är registrerade i IoT Hub och har någon av de tre klientautentiseringsmetoderna som stöds av IoT Hub för att bevisa sin identitet: Autentisering med symmetriska nycklar, självsignerad X.509-autentisering, X.509 CA-signerad autentisering. Dessa IoT Hub-identiteter kan verifieras lokalt av IoT Edge-hubben så att anslutningar fortfarande kan göras offline.
IoT Edge-moduler stöder för närvarande endast symmetrisk nyckelautentisering.
Auktorisering
Genom att verifiera att en klient tillhör dess uppsättning betrodda klienter som definierats i IoT Hub. Uppsättningen av betrodda klienter anges genom att konfigurera förälder/barn- eller enhets/modulrelationer i IoT Hub. När en modul skapas i IoT Edge upprättas automatiskt en förtroenderelation mellan den här modulen och dess IoT Edge-enhet. Detta är den enda auktoriseringsmodell som stöds av mekanismen för routning och förmedling.
Fjärrkonfiguration
IoT Edge-hubben styrs helt av molnet. Den hämtar sin konfiguration från IoT Hub via sin modultvilling. Tvillingen innehåller en önskad egenskap som kallas vägar som deklarerar hur meddelanden skickas i en distribution. Mer information om vägar finns i deklarera vägar.
Dessutom kan flera konfigurationer göras genom att konfigurera miljövariabler på IoT Edge-hubben.
Telemetri för körningskvalitet
IoT Edge samlar in anonym telemetri från värdkörnings- och systemmodulerna för att förbättra produktkvaliteten. Den här informationen kallas telemetri för körningskvalitet. Den insamlade telemetrin skickas regelbundet som meddelanden från enhet till molnet till IoT Hub från IoT Edge-agenten. Dessa meddelanden visas inte i kundens vanliga telemetri och förbrukar ingen meddelandekvot.
IoT Edge-agenten och hubben genererar mått som du kan samla in för att förstå enhetens prestanda. En delmängd av dessa mått samlas in av IoT Edge-agenten som en del av telemetri för körningskvalitet. Metrikvärdena som samlas in för telemetri av kvalitet under körning är märkta med taggen ms_telemetry. Information om alla tillgängliga mått finns i Åtkomst till inbyggda mått.
All personlig eller organisatoriskt identifierbar information, till exempel enhets- och modulnamn, tas bort före uppladdning för att säkerställa den anonyma karaktären hos telemetrin för körningskvalitet.
IoT Edge-agenten samlar in telemetri för körningskvalitet varje timme och skickar ett meddelande till IoT Hub var 24:e timme.
Om du vill avregistrera dig från att skicka telemetri för körningskvalitet från dina enheter finns det två sätt att göra det:
- 
              SendRuntimeQualityTelemetryAnge miljövariabeln tillfalseför edgeAgent
- Avmarkera alternativet i Azure-portalen under distributionen.
 
              
               
              
              