Pro Mosquitto Hardware Requirements
Single Node Server Hardware Requirements
Hardware requirements for Pro Mosquitto vary based on the number of client connections and the expected message rates. Below are the specifications divided into three categories: minimum, recommended, and recommended for stream processing.
Minimum | Recommended | Recommended (with Stream Processing) | Comment | |
---|---|---|---|---|
RAM | 128 MB | 4 GB | 16 GB | Additional RAM is essential for handling high message rates and stream processing. |
CPU | 1 core 32-bit ARM | Recent 4+ core AMD/Intel | Recent 4+ core AMD/Intel | Multicore CPUs enhance performance for larger client connections and processing tasks. |
Storage | 20 MB | 200 MB | 40 GB | Stream processing requires significantly more storage space. |
Cluster System Requirements
For high-availability deployments, each node in the Pro Mosquitto cluster requires specific hardware resources. Below are the requirements for Mosquitto nodes and load balancers, which can be either deployed on separate hardware or combined on the same host.
Server Hardware for Mosquitto Cluster Nodes
Mosquitto Node | Load Balancer | Combined (Mosquitto Node + Load Balancer) | |
---|---|---|---|
CPU | 4+ Cores | 4+ Cores | 8+ Cores |
RAM | 8 GB | 8 GB | 8 GB |
Storage | 5 GB (R/W speed 500 MB/s +) | 5 GB (R/W speed 500 MB/s +) | 5 GB (R/W speed 500 MB/s +) |
The hardware requirements specified in this section represent the optimal setup for high-performance and large-scale deployments of Pro Mosquitto. However, for smaller use cases or less demanding environments, it is possible to run the cluster with lower resources. Adjustments to CPU, RAM, and storage can be made based on the expected workload and message throughput.
Network Requirements for Cluster Deployment
To ensure seamless communication and synchronization across all nodes in a high-availability setup, the following network setup is recommended:
- Public Network: All nodes require access to a public network with public IP addresses to facilitate MQTT client connections and access to the Management Center.
- Private Network: A private network (or VPN) is essential for secure communication between nodes, load balancers, and the Management Center.
- Communication between nodes and the Management Center is conducted via TCP.
- Load balancers handle SSL termination for secure data exchanges.
Network Speed Recommendations
- A 100 Mbit or 1 Gbit network connection is recommended, depending on the expected bandwidth and message throughput.
- For optimal performance, especially in high-bandwidth scenarios, a 1 Gbit network is highly recommended.
- The maximum bandwidth capability of a Mosquitto cluster node is approximately 30 MB/sec (240 Mbit/sec) under ideal conditions.