You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/iot/iot-overview-scalability-high-availability.md
+24-7Lines changed: 24 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ services: iot
6
6
author: asergaz
7
7
ms.author: sergaz
8
8
ms.topic: overview
9
-
ms.date: 02/24/2025
9
+
ms.date: 03/13/2025
10
10
# Customer intent: As a solution builder, I want a high-level overview of the options for scalability, high availability, and disaster recovery in an IoT solution so that I can easily find relevant content for my scenario.
11
11
---
12
12
@@ -30,13 +30,20 @@ The following diagram shows a high-level view of the components in a typical clo
30
30
31
31
---
32
32
33
-
## IoT solution scalability
33
+
## Scalability
34
34
35
35
An IoT solution might need to support millions of connected assets and devices. You need to ensure that the components in your solution can scale to meet the demands.
36
36
37
37
# [Edge-based solution](#tab/edge)
38
38
39
-
Deploy Azure IoT Operations on a multi-node cluster to ensure that you can handle increased traffic or workload demands. When Azure IoT Operations runs on a multi-node cluster, it can process more data and take advantage of the high-availability capabilities of Kubernetes. The MQTT Broker does automatically replicates states across multiple nodes governed by the Broker's *cardinality* setting. Replicas are distributed across different nodes in a multi-node cluster and data isn't lost if there's one set of replicas running and healthy. To learn more, see [Configure broker settings for high availability, scaling, and memory usage](../manage-mqtt-broker/howto-configure-availability-scale.md#configure-cardinality-directly).
39
+
Deploy Azure IoT Operations on a multi-node cluster to ensure that you can handle increased traffic or workload demands. When Azure IoT Operations runs on a multi-node cluster, it can process more data and take advantage of the scabalability and high-availability capabilities of Kubernetes.
40
+
41
+
You can horizontally scale the MQTT broker of Azure IoT Operations by adding more frontend replicas and backend partitions. The frontend replicas are responsible for accepting MQTT connections from clients and forwarding them to the backend partitions. The backend partitions are responsible for storing and delivering messages to the clients. The frontend pods distribute message traffic across the backend pods. The backend redundancy factor determines the number of data copies to provide resiliency against node failures in the cluster. To learn more, see [Configure broker settings for high availability, scaling, and memory usage](../iot-operations/manage-mqtt-broker/howto-configure-availability-scale.md).
42
+
43
+
Azure Device Registry is a backend service that enables the cloud and edge management of assets. Device Registry projects assets defined in your edge environment as Azure resources in the cloud. It provides a single unified registry so that all apps and services that interact with your assets can connect to a single source. Device Registry also manages the synchronization between assets in the cloud and assets as custom resources in Kubernetes on the edge, allowing you to scale your solution to millions of connected assets.
44
+
45
+
You can scale the data flow profile to adjust the number of instances that run the data flows. Increasing the instance count can improve the throughput of the data flows by creating multiple clients to process the data. When using data flows with cloud services that have rate limits per client, increasing the instance count can help you stay within the rate limits. Scaling can also improve the resiliency of the data flows by providing redundancy in case of failures. To learn more, see [Scaling data flow profiles](../iot-operations/connect-to-cloud/howto-configure-dataflow-profile.md).
46
+
40
47
41
48
# [Cloud-based solution](#tab/cloud)
42
49
@@ -74,13 +81,23 @@ IoT solutions are often business-critical. You need to ensure that your solution
74
81
75
82
# [Edge-based solution](#tab/edge)
76
83
84
+
Azure IoT Operations features an MQTT broker that's enterprise grade and compliant with standards. The MQTT broker is scalable, highly available, and Kubernetes-native. It provides the messaging plane for IoT Operations, enables bidirectional edge/cloud communication, and powers [event-driven applications](/azure/architecture/guide/architecture-styles/event-driven) at the edge. To ensure zero data loss and high availability during deployment upgrades, the MQTT broker implements rolling updates across the MQTT broker pods.
85
+
86
+
The state store is a distributed storage system, deployed as part of Azure IoT Operations. Using the state store, applications can get, set, and delete key-value pairs, without needing to install more services, such as Redis. The state store also provides versioning of the data, and also the primitives for building distributed locks, ideal for highly available applications. To learn more, see [Persisting data in the state store](../iot-operations/create-edge-apps/overview-state-store.md).
87
+
88
+
On multi-node clusters with at least three nodes, you have the option of enabling fault tolerance for storage with [Azure Container Storage enabled by Azure Arc](/azure/azure-arc/container-storage/overview) when you deploy Azure IoT Operations.
89
+
90
+
[Dapr is offered as part of MQTT broker](../iot-operations/create-edge-apps/howto-develop-dapr-apps.md), abstracting away details of MQTT session management, message QoS and acknowledgment, and built-in key-value stores, making it a practical choice for developing a highly available application.
91
+
92
+
For information on high availability across availability zones and regions for Azure Device Registry, see [Reliability in Azure Device Registry](../reliability/reliability-device-registry.md).
93
+
77
94
# [Cloud-based solution](#tab/cloud)
78
95
79
-
To learn more about the high availability and disaster recovery capabilities the IoT services in your solution, see the following articles:
96
+
To learn more about the high availability and disaster recovery capabilities of the cloud-based IoT services in your solution, see the following articles:
0 commit comments