I'm using docker 1.4.0 with lxc-1.0.6 and cgroup-lite-1.1.5 on Ubuntu 12.04. I have 3 hard disks (/dev/[sdb-sdd]
) that I write to from 3 distinct containers. They have only one XFS partition, mounted in /mnt/vol[1-3] respectively. I launch the containers with docker (using the lxc exec-driver):
docker run --rm=true -v /mnt/vol1:/mnt -ti stackbrew/ubuntu:trusty /bin/bash
When I do dd
in from three concurrent containers:
dd if=/dev/zero of=/mnt/testfile bs=4M count=250 oflag=direct
I observe a fair assignment of bps
units distributed among them even though the devices are distinct (of course). If I execute a single container, I observe 60 MB/s (these are really old disks). If I execute two containers, I see 30 MB/s and 20 MB/s for three.
Nothing I try in terms of schedulers, weights and throttle units seems to make a difference. Any ideas why?