Kommentar
Å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.
Den här artikeln beskriver två exempel Azure IoT Operations distributioner som samlar in data från gränsen och överför dem till molnet. De här exemplen baseras på verkliga scenarier som tar hänsyn till maskinvarukapacitet och datavolymer. Använd de här exemplen för att bättre förstå hur mycket data Azure IoT Operations kan hantera med viss maskinvara.
Microsoft använde liknande konfigurationer och datavolymer för att verifiera Azure IoT Operations och mäta dess prestanda.
Kluster med en nod
Det här exemplet visar funktionerna i Azure IoT Operations när den körs på en värd med relativt låg maskinvaruspecifikation. I det här exemplet distribueras Azure IoT Operations till ett kluster med en enda nod. Data som genereras från tillgångar aggregeras först med en PLC och skickas sedan till Azure IoT Operations-anslutningsappen för OPC UA.
Konfiguration
Exempel på maskinvaruspecifikationer:
K3:er på den Azure virtuella datorn (Standard_D4ds_v5 med Intel Xeon Platinum 8370C), 4 kärnor (4 vCPU), 16 GB minne, 30 GB lagringsutrymme.
AKS-EE på P3 Tiny Workstation (13:e generationens Intel® Core™ i7-13700 vPro-processor®), 16 kärnor (24 trådar), 32 GB minne, 1 TB lagring.
Viktigt!
För närvarande är K3:er på Ubuntu 24.04 och vSphere Kubernetes Service de enda plattformarna för att distribuera Azure IoT Operations i produktion. Mer information finns i Miljöer som stöds.
Följande tabell visar MQTT-koordinatorkonfigurationen för exemplet med en nod:
| Parameter | Värde |
|---|---|
| frontend-replikat | 1 |
| frontend-arbetare | 2 |
| backend-redundansfaktor | 2 |
| backendarbetare | 1 |
| backendPartitions | 1 |
| minnesprofil | Låg |
Dataflödet från slutpunkt till slutpunkt i exemplet ser ut så här:
Assets -> PLC -> Connector for OPC UA -> MQTT broker -> Data flows -> Event Hubs
Datavolymerna i exemplet är:
- 125 tillgångar aggregerade av en enda OPC UA-server.
- 6 250 taggar baserade på 50 taggar per tillgång. Varje tagg uppdateras 2/sekund och har en genomsnittlig storlek på 20 byte.
- Kontakten för OPC UA skickar 125 meddelanden per sekund till MQTT-mäklare.
- En dataflödespipeline skickar 6 250 taggar till en Event Hubs-slutpunkt.
I det här exemplet rekommenderar Microsoft att du använder Event Hubs eftersom du bara kan skapa en dataflödesinstans med en processor med 4 kärnor. Om du väljer Event Grid kan det bara hantera 100 meddelanden per sekund.
Prestanda
Viktiga prestandamått för det här exemplet är:
- Azure IoT Operations och dess beroenden förbrukar mellan 6 GB och 8 GB RAM-minne.
- Azure IoT Operations och dess beroenden förbrukar i genomsnitt 2 400–2 600 millicores.
- 100 % av data skickas till Event Hubs.
- Dataprocessfördröjningen från slutpunkt till slutpunkt är mindre än 10 sekunder med tanke på idealiska nätverksförhållanden.
Kluster med flera noder
När Azure IoT Operations körs på ett kluster med flera noder kan det bearbeta mer data och dra nytta av kubernetes funktioner med hög tillgänglighet. I det här exemplet finns Azure IoT Operations i ett kluster med 5 noder och bearbetar cirka 50 000 datapunkter per sekund från två olika datakällor.
Konfiguration
Exempel på maskinvaruspecifikationer:
K3:er med 5 noder med Azure virtuella datorer (Standard_D8d_v5 med Intel Xeon Platinum 8370C), 8 kärnor (8 vCPU), 32 GB minne, 30 GB.
K3S med 5 noder med P3 Tiny Workstations (13:e generationens Intel® Core™ i7-13700 vPro-processor®), 16 kärnor (24 trådar), 32 GB minne, 1 TB lagring.
Viktigt!
För närvarande är K3:er på Ubuntu 24.04 och vSphere Kubernetes Service de enda plattformarna för att distribuera Azure IoT Operations i produktion. Mer information finns i Miljöer som stöds.
Följande tabell visar MQTT-koordinatorkonfigurationen för exemplet med flera noder:
| Parameter | Värde |
|---|---|
| frontend-replikat | 5 |
| frontend-arbetare | 4 |
| backend-redundansfaktor | 2 |
| backendarbetare | 4 |
| backendPartitions | 5 |
| minnesprofil | Högt |
I det här exemplet finns det två typer av datakällor. En ansluter via anslutning för OPC UA och en ansluter via MQTT-mäklare.
I det här exemplet representerar en tillgång inte en verklig utrustning, utan är en logisk gruppering som aggregerar datapunkter och skickar meddelanden.
Det första dataflödet från slutpunkt till slutpunkt i exemplet ser ut så här:
Assets -> PLC -> Connector for OPC UA -> MQTT broker -> Data flows -> Event Hubs
Datavolymerna i det första dataflödet i exemplet är:
- 85 tillgångar, aggregerade av fem OPC UA-servrar.
- 85 000 taggar baserat på 1 000 taggar för varje tillgång. Varje tagg uppdateras 1/sekund och har en genomsnittlig storlek på 8 byte. Cirka 50 % av taggvärdena ändrar varje cykel. Uppdateringshastigheten för datapunkter är 45 000/sekund.
- Anslutningen för OPC UA skickar 85 meddelanden/sekund till MQTT-broker.
- En dataflödespipeline skickar 85 000 taggar till en Event Hubs-slutpunkt.
Det andra dataflödet från slutpunkt till slutpunkt i exemplet ser ut så här:
MQTT client (Paho) -> MQTT Broker -> Data flows -> Event Hubs
Datavolymerna i det andra dataflödet i exemplet är:
- Två MQTT-klienter anslutna direkt till MQTT-broker.
- Varje klient publicerar 10 000 värden/sekund.
- Ungefär 1/3 av taggvärdena ändrar varje cykel.
- Kodad med JSON-format. Varje objekt (värde) med en ungefärlig storlek på 180 byte.
Prestanda
Viktiga prestandamått för det här exemplet är:
- Azure IoT Operations och dess beroenden förbrukar mellan 25 GB och 30 GB RAM-minne.
- Azure IoT Operations och dess beroenden förbrukar i genomsnitt 2 500–3 000 millicores.
- 100 % av data skickas till Event Hubs.
- Dataprocessfördröjningen från slutpunkt till slutpunkt är mindre än 10 sekunder med tanke på idealiska nätverksförhållanden.