Parameters Optimization of Omada SDN Controller for a Better Performance under Large-Scale Network (V5.4.6 or above)
Omada Software Controller is capable of managing up to 10,000 devices starting from version 5.4.6. Considering the computer specifications and network performance, we set the maximum number of devices managed by one Omada Software Controller to 3000 by default, which can satisfy most usage scenarios.
If it is necessary to manage more than 3000 devices with one controller, this paper will help to adjust the upper limit of devices by modifying some parameters and optimize the system performance with limited server specifications.
- INSTALLATION_FOLDER indicates the installation folder of the Omada SDN Controller, and the default path on Windows is “C:\Users\YOURACCOUNTNAME\Omada Controller”, where YOURACCOUNTNAME is the system account name, while on Linux is “/opt/tplink/EAPController”.
- Omada server means the computer or server running the Omada SDN Controller program.
Before modification, please backup the files. Login to the Controller page, go to Maintenance – Backup & Restore and save the backup file. Also, please backup the source files before modifying the files below.
Upgrading the software will overwrite the previous modified configuration. It is recommended to record the modified configuration items, and then modify them after upgrading. Do not backup the previous configuration file and directly replace the file after upgrading.
1. What to do to manage more than 3000 devices with one controller?
To increase the number of managed devices, please use the text editing tools to open “INSTALLATION_FOLDER\properties\omada.properties” file, and modify “max.device=3000” parameter.
For example, if you would like to change the upper limit to 10000, the parameters should be modified as “max.device=10000”.
Managing more devices requires a more powerful server. The below table indicates the minimum specifications for the Omada server.
64 cores or more
64 GB or more
500GB SSD is highly recommended.
The above operation will help increase the upper limit, but significantly increase the system load. Below is some advice to optimize the system performance when encountering similar issues.
2. What to do when the CPU is chronically overloaded?
Generally speaking, chronic CPU overload is caused by the limited capacity of the heap memory, which can be understood as the RAM assigned dedicated to controller operation. The controller’s heap memory defaults to half of the server’s RAM.
If your Omada server is dedicated to running the controller program and more heap memory capacity assigned will not influence the system operation, then you can expand the RAM capacity of the server by configuring as follows:
Use the text editing tools to open “INSTALLATION_FOLDER\bin\start.bat” file (Windows) or “INSTALLATION_FOLDER/bin/control.sh” file (Linux) and add two parameters to set the heap memory, “-Xms” and -Xmx”.
For example, “java -Xms20480m -Xmx20480m -XX:MaxHeapFreeRatio=60 -XX:MinHeapFreeRatio=30 -XX:+HeapDumpOnOutOfMemoryError” means to assign 20 GB heap memory to the controller program.
Note: After you modify the “start.bat” file on Windows, you need to double-click it to start the controller, rather than double-click the shortcut on the Desktop. Launching via the shortcut will not make the modification take effect. On Linux, you can still start via the “tpeap start” command.
3. Parameter optimization for Linux.
If you use Omada Controller on Linux to manage large-scale networks, you may find that when the device number exceeds a certain value (e.g., 1000), you will experience problems such as frequent device re-adoption and slow webpage loading. This may be related to some limitations of the Linux system, and it is recommended that you follow the configurations below for performance optimization.
Maximum number of open files. By default, each Linux user can open a maximum of 1024 files, which limits the operation performance of the Omada Controller.
If you find “Too many open files” logs in the running log (/INSTALLATION_FOLDER/log/server.log), then you need to change the parameter. It is recommended that you modify the parameter before installing or running the controller to avoid performance limitations.
Edit “/etc/security/limits.conf”, add the following parameters, save the file, log out and log back in to make the changes take effect.
* soft nofile 65535
* hard nofile 65535
Is this faq useful?
Your feedback helps improve this site.