Limit the specific CPUs or cores a container can use.
If cpuset-cpus is configured in the container layout, then the value
will be used when running the container cli with --cpuset-cpus.
If 'all' is used as a value, we'll then take all available cpus,
computed by: "0-" + str(psutil.cpu_count()-1)
If unset (default), the cpuset-cpus value is computed by using psutil with a
new function which returns a comma-separated list range of CPUs that a
container can use.
This parameter is particulary useful for NFV:
https://bugzilla.redhat.com/show_bug.cgi?id=1750781
Indeed, for NFV workloads, in order to achieve 0 packet loss, linux processes,
ovs-dpdk (if applicable) and VMs are isolated thanks to kernel args (isolcpus)
and tuned profiles (cpu-partitioning).
Change-Id: I9443ad60affe9c7823b17daa259efee542c6fe22
To w/a the missing a container rename feature of podman, implement
renaming via removing of the original container and re-applying it from
the same configs but using the new name.
This fixes idempotency issues when service containers are executed
under ephemeral names created via the paunch's unique containers names
generator, while it is expected to have them executed under its wanted
config names.
Change-Id: If851604d25b6c7982d950bb9e13dceada3bfc161
Closes-Bug: #1805410
Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
Image pulls often fail due to network or registry load. This change
implements pull retries, up to 4 times with jittered exponential
backoff.
Closes-Bug #1752036
Change-Id: I09c601f357200e734aa9d887c6ce6b4e53fc2589