commit 3163318694fb4ae5136856918a6b911961988705
Author: John Kung <email address hidden>
Date: Wed Mar 9 16:28:30 2022 -0600
Config scale: improve route config scalability
As runtime puppet manifests apply can take significant time to complete,
when there are multiple runtime puppet manifest apply required,
the time required to enqueue and handle the manifests apply
can overwhelm the runtime config handling in larger DC system.
In order to handle this more efficiently, the runtime config system is
updated to allow for filter on whether a certain runtime class is
under apply and queue for its completion accordingly.
Duplicate config are discarded, since the config will be
generated with the latest hieradata.
The route api semantic checks factor out the non-critical
region checks to allow better concurrent processing.
The config applied update is made more efficient by also including
the config status update when requested.
Test Plan:
PASSED bootstrap and deploy SystemControllers
PASSED stress test create multiple routes on multiple hosts
PASSED verify created routes against ip route
PASSED check alarms config out of date
PASSED DC scaling add and manage large number of subclouds
Closes-Bug: 1964267
Signed-off-by: John Kung <email address hidden>
Change-Id: I9d6cf49a8a2b266c74aa1635010a11ca26e839b9
Reviewed: https:/ /review. opendev. org/c/starlingx /config/ +/832869 /opendev. org/starlingx/ config/ commit/ 3163318694fb4ae 5136856918a6b91 1961988705
Committed: https:/
Submitter: "Zuul (22348)"
Branch: master
commit 3163318694fb4ae 5136856918a6b91 1961988705
Author: John Kung <email address hidden>
Date: Wed Mar 9 16:28:30 2022 -0600
Config scale: improve route config scalability
As runtime puppet manifests apply can take significant time to complete,
when there are multiple runtime puppet manifest apply required,
the time required to enqueue and handle the manifests apply
can overwhelm the runtime config handling in larger DC system.
In order to handle this more efficiently, the runtime config system is
updated to allow for filter on whether a certain runtime class is
under apply and queue for its completion accordingly.
Duplicate config are discarded, since the config will be
generated with the latest hieradata.
The route api semantic checks factor out the non-critical
region checks to allow better concurrent processing.
The config applied update is made more efficient by also including
the config status update when requested.
Test Plan:
PASSED bootstrap and deploy SystemControllers
PASSED stress test create multiple routes on multiple hosts
PASSED verify created routes against ip route
PASSED check alarms config out of date
PASSED DC scaling add and manage large number of subclouds
Closes-Bug: 1964267 6c74aa1635010a1 1ca26e839b9
Signed-off-by: John Kung <email address hidden>
Change-Id: I9d6cf49a8a2b26