Hi!
Thank you for answer, Daniel, I should excuse for a long delay before
reply. It was caused by long offline discussion in our company .
Our business logic needs this top level cgroup. Parallels Cloud Server 6
users have use this
cgroup for a long time and want similar functionality. Also we believe
that VMWare virtual machines has specified limit:
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&...
"*Note*: For an SMP virtual machine, the sum of all vCPUs cannot exceed
the specified limit.
For example, 4 vCPU virtual machine with a limit of 1200MHz and equal
load among vCPUs would result in a max of 300MHz per vCPU."
Would anyone mind if we implement this feature as an optional parameter
in libvirt?
On 12/08/2015 12:27 PM, Daniel P. Berrange wrote:
On Mon, Dec 07, 2015 at 03:17:53PM +0300, Alexander Burluka wrote:
> Hello all!
>
> I would greatly appreciate your help with some cgroup question. Libvirt xml
> has cpu tuning section and quota element in it. That parameter sets up
> cpu.cfs_cgroup_us for every domain's vcpu. I set it to 55555 and has such
> hierarchy of cgroups:
> cpu.cfs_quota_us (-1)
> |
> |-emulator/cpu.cfs_quota_us (-1)
> |-vcpu0/cpu.cfs_quota_us (55555)
> |-vcpu1/cpu.cfs_quota_us (55555)
> |-vcpu2/cpu.cfs_quota_us (55555)
> ....
> \-vcpuN/cpu.cfs_quota_us (55555)
>
> Is there any way to set up upper level quota limit via libvirt without
> setting every vcpu? So I'd like to get next hierarchy:
> cpu.cfs_quota_us (55555)
> |
> |-emulator/cpu.cfs_quota_us (-1)
> |-vcpu0/cpu.cfs_quota_us (-1)
> |-vcpu1/cpu.cfs_quota_us (-1)
> |-vcpu2/cpu.cfs_quota_us (-1)
> ....
> \-vcpuN/cpu.cfs_quota_us (-1)
If you set it at the level up in the hierarchy, then the default case
ends up with all VMs having the same quota regardless of the number
of vCPUs they have. By setting it against the vcpu, the quota scales
as you hotplug/unplug vCPUs
Regards,
Daniel
--
Regards,
Alexander Burluka