-
Notifications
You must be signed in to change notification settings - Fork 42.2k
Description
In #12540, docker event stream was proposed as part of the pod lifecycle event generator (PLEG) to reduce number of docker operations.
However, even without adopting the docker event stream, we can still implement a PLEG solely by periodically relisting the containers. The generic PLEG in #13571 is an example.
This would still improve the average resource usage of kubelet and docker because only one goroutine queries docker at a higher frequency (as opposed to all pod workers). The drawback, on the other hand, is that kubelet's reaction time to container events would be equal or greater than the relist period. We should try to understand the limit of pure relisting by running some micro-benchmark using docker, so that we know how much benefits the container event stream can bring us.
Metrics:
- latency
- cpu usage percentiles
Parameters to vary:
- op: list, inspect
- period
- number of containers
- GCE machine size
The next step would be benchmarking the docker event stream.
/cc @kubernetes/goog-node