Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Deze verwijzing biedt gemeten verbruik van basislijnresources voor Azure IoT-bewerkingen implementaties bij inactiviteit (geen actieve workloads). Gebruik deze profielen om te controleren of uw hardware voldoet aan de minimale vereisten en om basislijnen voor resourcebewaking vast te stellen.
Overzicht
Azure IoT-bewerkingen implementeert meerdere onderdelen in verschillende Kubernetes-naamruimten. De totale resourcevoetafdruk is afhankelijk van twee factoren: het geheugenprofiel van de MQTT-broker (waarmee de toewijzing van het geheugen per pod wordt bepaald) en de brokerkardinaliteit (aantal front-endreplica's, back-endpartities en redundantiefactor, waarmee wordt bepaald hoeveel pods worden geïmplementeerd). Hogere kardinaliteit betekent meer pods en een hoger geheugenprofiel betekent dat elke pod meer geheugen gebruikt.
Er zijn drie configuraties gemeten op clusters met één knooppunt bij inactiviteit (geen verbonden assets, geen actieve gegevensstromen, bijna-nul verkeer). Dit zijn basislijnnummers, geen maximumwaarden. Productieworkloads verhogen het verbruik aanzienlijk:
| Configuration | Geheugenprofiel | Kardinaliteit | Node-piekgeheugen | Azure IoT-bewerkingen naamruimte Peak RSS | Total Pod Peak RSS | Aantal pods |
|---|---|---|---|---|---|---|
| Config A | Piepklein | 1 frontend 1 partitie redundancyfactor 2 |
~4.979 MiB | ~1.298 MiB | ~5.409 MiB | 55 |
| Config B | Low | 2 frontends 2 partities redundantiefactor 2 |
~5.130 MiB | ~1559 MiB | ~5.695 MiB | 58 |
| Config C | Gemiddeld | 2 frontends 2 partities redundantiefactor 2 |
~6.088 MiB | ~2.407 MiB | ~6.564 MiB | 58 |
Note
Het verschil tussen Config A en Config B is afkomstig van zowel hogere kardinaliteit (meer brokerpods) als een ander geheugenprofiel. Het verschil tussen Config B en Config C is uitsluitend van het geheugenprofiel (dezelfde kardinaliteit, hetzelfde aantal pods). Zie voorbeelden van productie-implementatie voor geladen scenario's.
Uitsplitsing van naamruimte
De volgende tabel toont het piek-RSS-geheugen per naamruimte voor alle drie de configuraties in inactieve toestand:
| Namespace | Configuratie A, Klein (MiB) | Configuratie B, Laag (MiB) | Config C, Middelgroot (MiB) | Beschrijving |
|---|---|---|---|---|
| azure-iot-operations | 1,298 | 1,559 | 2,407 | Azure IoT-bewerkingen kernservices (broker, gegevensstromen, connectors, waarneembaarheid) |
| azure-arc | 1,964 | 1,985 | 1,990 | Azure Arc-agents en -controllers |
| certificaatbeheer | 1,351 | 1,357 | 1,362 | Certificaatbeheer |
| gatekeeper-system | 338 | 338 | 350 | Beleidsafdwinging |
| azure-extensions-usage-system | 279 | 277 | 278 | Factureringsoperator |
| arc-workload-identity | 90 | 90 | 91 | Webhooks voor workloadidentiteiten |
| azure-secret-store | 87 | 88 | 87 | Geheime synchronisatiecontroller |
| Totaal | ~5.409 | ~5.695 | ~6.564 |
Note
- Azure Arc, certificaatbeheer, gatekeeper en andere infrastructuurnaamruimten verbruiken ~3,8-4,1 GB, ongeacht de brokerconfiguratie. Deze overhead is de vaste kostenpost voor het draaien van een cluster waarvoor Arc is ingeschakeld met Azure IoT-bewerkingen.
-
Alleen de
azure-iot-operationsnaamruimte wordt geschaald met het geheugenprofiel en de kardinaliteitskeuzen, van ~1,3 GB (kleine, minimale kardinaliteit) tot ~2,4 GB (gemiddeld, hogere kardinaliteit). - Reken op ten minste 6 GB geheugen dat is toegewezen aan de Azure IoT-bewerkingen-infrastructuur in niet-belaste toestand, zonder rekening te houden met workloads.
Resourceverbruik van MQTT-brokerpods
De MQTT-broker is het grootste variabeleonderdeel. Geheugenverschillen tussen configuraties zijn afkomstig van zowel het geheugenprofiel (toewijzing per pod) als de kardinaliteit (aantal pods). De volgende tabel toont niet-actieve RSS per pod. Deze aantallen groeien met verkeer:
| Pod | Configuratie A, Tiny (MiB) | Configuratie B, Laag (MiB) | Config C, Middelgroot (MiB) | Aantekeningen |
|---|---|---|---|---|
| aio-broker-frontend-0 | 29 | 33 | 169 | Het geheugen per pod schaalt mee met het profiel. |
| aio-broker-frontend-1 | N/A | 33 | 169 | Niet aanwezig bij Config A (één frontendreplica) |
| aio-broker-backend-1-0 | 41 | 66 | 211 | Het geheugengebruik per pod schaalt mee met het profiel |
| aio-broker-backend-1-1 | 41 | 65 | 210 | replica van de redundantiefactor |
| aio-broker-backend-2-0 | N/A | 66 | 212 | Niet aanwezig in configuratie A (één partitie) |
| aio-broker-backend-2-1 | N/A | 65 | 211 | Niet aanwezig in configuratie A (één partitie) |
| aio-broker-health-manager-0 | 41 | 41 | 42 | Constant voor alle profielen |
| aio-broker-operator-0 | 60 | 60 | 56 | Constant voor alle profielen |
| aio-broker-diagnostics-probe-0 | 24 | 43 | 43 | |
| aio-broker-diagnostics-service-0 | 49 | 66 | 66 | |
| aio-broker-authentication-0 | 24 | 24 | 24 | Constant tussen profielen |
| aio-broker-webhook-0 | 33 | 35 | 32 | Constant voor alle profielen |
Brokerconfiguratie per profiel getest
| Configuratie | Configuratie A (klein) | Configuratie B (laag) | Configuratie C (gemiddeld) |
|---|---|---|---|
| Front-endreplica’s | 1 | 2 | 2 |
| Backendpartities | 1 | 2 | 2 |
| Factor voor backend-redundantie | 2 | 2 | 2 |
| Totaal aantal brokerpods | 10 | 13 | 13 |
| Inactief frontendgeheugen per pod | ~29 MiB | ~33 MiB | ~169 MiB |
| Inactief backendgeheugen per pod | ~41 MiB | ~66 MiB | ~211 MiB |
| Maximale berichtgrootte | 4 MB | 16 MB | 64 MB |
Verbruik van andere Azure IoT-bewerkingen-onderdelen
Deze onderdelen hebben consistent niet-actief resourcegebruik, ongeacht het geheugenprofiel of de kardinaliteit:
| Component | Piekwaarde RSS (MiB) | Maximaal aantal CPU-kernen | Aantekeningen |
|---|---|---|---|
| adr-schema-registry (x2) | ~52 per stuk | 0.002 | Schemaregister-pods |
| aio-akri-operator-0 | ~39 | 0.001 | Detectie van Akri-apparaten |
| aio-akri-adr-service-0 | ~30 | 0.001 | Akri Azure Device Registry-service (ADR) |
| aio-dataflow-dev-0 | ~67 | 0.002 | Runtime van gegevensstroom |
| aio-dataflow-operator-0 | ~56 | 0.001 | Gegevensstroomoperator |
| aio-operator | ~114 | 0.003 | operator voor Azure IoT-bewerkingen |
| aio-observability (x2) | ~125 per stuk | 0.005 | OpenTelemetry collectors |
| aio-observability-operator | ~106 | 0.003 | Operator waarneembaarheid |
| aio-observability-cluster-metrics-agent | ~114 | 0.004 | Agent voor metrische gegevens |
| aio-wasm-graph-controller-0 | ~30 | 0.001 | WebAssembly (WASM)-grafiekcontroller |
CPU-verbruik
CPU-verbruik is minimaal bij inactiviteit voor alle configuraties die zijn getest:
| Configuration | Azure IoT-bewerkingen naamruimte maximaal CPU-gebruik | Totale piek-CPU van het cluster | % van Node |
|---|---|---|---|
| Configuratie A (Klein) | 0,025 kernen | 0,099 kernen | 1,3% |
| Configuratie B (Laag) | 0,044 kernen | 0.104 kernen | 1,3% |
| Configuratie C (gemiddeld) | 0,048 kernen | 0,093 kernen | 1,2% |
CPU-gebruik is te verwaarlozen bij inactiviteit. Verwacht onder productiebelasting aanzienlijk hoger CPU-verbruik dat evenredig is met de berichtdoorvoer en het aantal geconfigureerde front-end-/back-endmedewerkers.
Richtlijnen voor het aanpassen van de grootte van hardware
Op basis van deze inactieve basislijnmetingen zijn de volgende minimale hardwareaanbevelingen van toepassing op implementaties met één knooppunt. Werkelijke vereisten zijn hoger onder productieverkeer:
| Geheugenprofiel | Min RAM (met hoofdruimte) | Aanbevolen RAM | Gebruikssituatie |
|---|---|---|---|
| Tiny | 8 GB | 8-10 GB | Weinig verkeer, alleen kleine pakketten |
| Low | 10 GB | 12-16 GB | Beperkt geheugen, kleine pakketten |
| Gemiddeld | 12 GB | 16-32 GB | Gemiddelde verkeers- en berichtgrootten |
| Hoog | 16 GB | 32+ GB | Hoge doorvoer, grote berichten |
Belangrijk
Deze aanbevelingen zijn verantwoordelijk voor de ~4 GB vaste infrastructuuroverhead (Azure Arc, cert-manager, gatekeeper) plus de variabele Azure IoT-bewerkingen footprint van onderdelen. Voor productieworkloads is extra ruimte vereist voor MQTT-berichtbuffering, gegevensverwerking en OPC UA-connectoractiviteit.