From: Tom Clegg Date: Mon, 5 Feb 2018 22:00:27 +0000 (-0500) Subject: 12991: Propagate memory and CPU limits to docker container. X-Git-Tag: 1.1.4~87^2 X-Git-Url: https://git.arvados.org/arvados.git/commitdiff_plain/2bae361432ff8f975803495b4fd0acfae02cd3ef 12991: Propagate memory and CPU limits to docker container. Arvados-DCO-1.1-Signed-off-by: Tom Clegg --- diff --git a/services/crunch-run/crunchrun.go b/services/crunch-run/crunchrun.go index a9f1c25d37..0facb3135b 100644 --- a/services/crunch-run/crunchrun.go +++ b/services/crunch-run/crunchrun.go @@ -952,6 +952,7 @@ func (runner *ContainerRunner) CreateContainer() error { runner.ContainerConfig.Volumes = runner.Volumes + maxRAM := int64(runner.Container.RuntimeConstraints.RAM) runner.HostConfig = dockercontainer.HostConfig{ Binds: runner.Binds, LogConfig: dockercontainer.LogConfig{ @@ -959,6 +960,10 @@ func (runner *ContainerRunner) CreateContainer() error { }, Resources: dockercontainer.Resources{ CgroupParent: runner.setCgroupParent, + NanoCPUs: int64(runner.Container.RuntimeConstraints.VCPUs) * 1000000000, + Memory: maxRAM, // RAM + MemorySwap: maxRAM, // RAM+swap + KernelMemory: maxRAM, // kernel portion }, }