2ed6a1936a
Prior to this patch, the metadata_workers parameter defaults to $os_workers (calculated here [0]) but, even tho it's capped at 12 workers this number still redundant. There are a few differences of how the OVN metadata agent works compared with the OVS metadata agents: 1) The OVN metadata workers are deployed onto the compute nodes and not on the controllers/gateways as the OVS ones are. This means it's better distributed. 2) Even tho we could have multiple workers, the OVN SB IDL in the OVN metadata agents acquires a lock while listening to OVSDB events. Therefore, even tho we could have dozens of agents only one of them is listening to the events. 3) Instantiating IDLs means maintaining in-memory replicas of the OVSDB (or, the tables of that DB that is being watched). This puts a burden on OVSDBs to maintain all these replicas updated, reducing this number workers also reduces the burden on the OVSDBs. This patch is reducing the default number of OVN metadata agents to two (per compute). Two because that keeps it HA, in case the active agente dies the lock moves to the other one and the service will keep working. [0] |
||
---|---|---|
.. | ||
acceptance | ||
classes | ||
functions | ||
unit | ||
shared_examples.rb | ||
spec_helper.rb | ||
spec_helper_acceptance.rb |