
The current implementation of alarm aggregation sets a snmp trapdest on all subclouds to signal the system controller that the alarm status of the subcloud has changed. This trap is handled by the dcorch-snmp process which will then trigger a rpc request to dcorch-engine which will in turn request an alarm summary update from the subcloud. While this implementation has a throttling mechanism, it has been observed to bog down dorch-engine performance as the number of subclouds is increased. To improve scalability: - eliminate the dcorch-snmp process and associated subcloud trapdest - move existing alarm aggregation handling from dcorch to dcmanager process along with the db table. Alarm status will be gathered by dcmanager-manager process as part of the subcloud audit. - remove periodic alarm audit - remove alarm rpc client - change frequent alarm related info logs to debug Test cases: - install dc system with multiple subclouds - add/manage subclouds - add alarms of various severity to subclouds - run alarm summary cli command and test alarm rest api calls - unmanage/poweroff/delete subclouds Change-Id: I8bd6c89f0b8a544e4d394af5bbbb86599a63823e Story: 2007267 Task: 38757 Signed-off-by: Gerry Kopec <gerry.kopec@windriver.com>
controllers
API request processing
- root.py:
-
API root request
- quota_manager.py
-
Controller for all the quota related request
- restcomm.py:
-
common functionality used in API