This feature reduces the API call rate to Cilium and tries to ensure netreap only makes calls when needed. This helps in high density scenarios to reduce the CIlium agent API overhead. This feature consists of three main changes:
The allocation events from Nomad include the NodeID where the allocation is assigned. We can use that to drop events early in processing by comparing the event NodeID with the local agent NodeID. This reduces the load on Cilium agents in the cluster as they are no longer queried about allocations that don't exist on the node.
netreap only needs to watch the Allocation event stream and can ignore events for terminal allocations. Nomad will handle cleaning up the endpoint in that case.
Only call the Cilium endpoint patch API if the labels to apply to the endpoint have actually changed. Cilium will do a full endpoint regeneration even if the labels are the same so only doing that on label change this greatly cuts down on load.
This feature reduces the API call rate to Cilium and tries to ensure netreap only makes calls when needed. This helps in high density scenarios to reduce the CIlium agent API overhead. This feature consists of three main changes:
Allocation
event stream and can ignore events for terminal allocations. Nomad will handle cleaning up the endpoint in that case.