[one-users] integrating cgroup into OpenNebula-KVM?

Csom Gyula csom at interface.hu
Tue Jul 13 01:04:04 PDT 2010


Hi,
regarding ONE plans I have no clue:) Otherwise in our system (currently under development)
we are using cgroups also (especially we are using it in order to guarantee CPU performance
which is required for vms like web application servers or kinda). We are using cgroups in the
following way:

1. The vm cpu number is technically bound to VCPU (both at OpenNebula and libvirt).
2. We are using cpu shares in order to give the proper share.
3. We are using the ONE hook system [1] in order to trigger the cgroups script.

We are using the following convenctions:
4. System share: 90% goes to vms and 10% goes to the system itself.
5. We are not overcommiting cpu resources since KVM has problems with such environments
    [2]:
    * physical cpu number must be equal to the vcpu number
    * the total number of vcpus on a given host cannot exceed the numbers of physical cpus

BTW: Our solution will reach the alpha state this month, if interested I might post it here.

Cheers,
Gyula

---

[1] http://www.opennebula.org/documentation:rel1.4:oned_conf#hook_system
[2] SMP overcommiting problem: http://www.mail-archive.com/kvm@vger.kernel.org/msg32079.html
http://www.mail-archive.com/kvm@vger.kernel.org/msg33739.html. The route cause seems to be
spin locks: they might cause dead locks in SMP systems when overcommitting host resources.
The problem is also named "lock holder preemption", you might find related articles on the web,
for instance: http://www.amd64.org/fileadmin/user_upload/pub/2008-Friebel-LHP-GI_OS.pdf.
<http://www.reservoir-fp7.eu/index.php?mact=News,cntnt01,detail,0&cntnt01articleid=66&cntnt01returnid=108>
________________________________
Feladó: users-bounces at lists.opennebula.org [users-bounces at lists.opennebula.org] ; meghatalmazó: Shi Jin [jinzishuai at gmail.com]
Küldve: 2010. július 13. 1:28
Címzett: opennebula user list
Tárgy: [one-users] integrating cgroup into OpenNebula-KVM?

Hi there,

Redhat is going to include cgroups in the new RHEL-6, which is a great way to do quality of service (QoS) control on the resources, such as VM CPU, memory, network etc.
Especially on CPU power, I remember the OpenNebula template has a variable CPU but it is not really used under KVM but rather a scheduling criteria.
With cgroups, the CPU can have a meaning used to give each VM their proper share of the system computing power.
I wonder if there is any plans to integrate this into OpenNebula.

Thank you very much.

--
Shi Jin, Ph.D.




More information about the Users mailing list