[one-users] Making scheduler allocation aware

Javier Fontan jfontan at gmail.com
Wed Nov 3 12:16:25 PDT 2010


Hello,

Sorry for the delay in the response.

It looks that the problem is OpenNebula calculating available memory.
For xen >= 3.2 there is a reliable way to get available memory that is
calling "xm info" and getting "max_free_memory" attribute.
Unfortunately for kvm or xen < 3.2 there is not such attribute. I
suppose you are using kvm as you tell about "free" command.

I began analyzing the kvm IM probe that gets memory information and
there is a problem on the way to get total memory. Here is how it now
gets memory information:

TOTALMEMORY: runs virsh info that gets the real physical memory
installed in the machine
FREEMEMORY: runs free command and gets the free column data without
buffers and cache
USEDMEMORY: runs top command and gets used memory from it (this counts
buffers and cache)

This is a big problem as those values do not match one with another (I
don't really know how I failed to see this before). Here is the
monitoring data from a host without VMs.

--8<------
TOTALMEMORY=8193988
USEDMEMORY=7819952
FREEMEMORY=7911924
------>8--

As you can see it makes no sense at all. Even the TOTALMEMORY that is
got from virsh info is very misleading for oned as the host linux
instance does not have access to all that memory (some is consumed by
the hypervisor itself) as seen calling a free command:

--8<------
             total       used       free     shared    buffers     cached
Mem:       8193988    7819192     374796          0      64176    7473992
------>8--

I am also copying this text as an issue to solve this problem
http://dev.opennebula.org/issues/388. It is masked to be solved for
2.0.1 but the change will be compatible with 1.4 as it seems the the
only changed needed is the IM problem.

I can not offer you an immediate solution but we'll try to come up
with one as soon as possible.

Bye

On Wed, Nov 3, 2010 at 7:08 PM, Rangababu Chakravarthula
<rbabu at hexagrid.com> wrote:
> Hello Javier
> Please let us know if you want us to provide more detailed information with
> examples?
>
> Ranga
>
> On Fri, Oct 29, 2010 at 9:46 AM, Rangababu Chakravarthula
> <rbabu at hexagrid.com> wrote:
>>
>> Javier
>>
>> We saw that VM's were being deployed to the host where the allocated
>> memory of all the VM's was higher than the available memory on the host.
>>
>> We think OpenNebula is executing free command on the host to determine if
>> there is any room and since free would always return the actual memory that
>> is being consumed and not the allocated, opennebula would push the new jobs
>> to the host.
>>
>> That's the reason we want OpenNebula to be aware of memory allocated to
>> the VM's on the host.
>>
>> Ranga
>>
>> On Thu, Oct 28, 2010 at 2:02 PM, Javier Fontan <jfontan at gmail.com> wrote:
>>>
>>> Hello,
>>>
>>> Could you describe the problem you had? By default the scheduler will
>>> not overcommit cpu nor memory.
>>>
>>> Bye
>>>
>>> On Thu, Oct 28, 2010 at 4:50 AM, Shashank Rachamalla
>>> <shashank.rachamalla at hexagrid.com> wrote:
>>> > Hi
>>> >
>>> > We have a requirement where in the scheduler should not allow memory
>>> > over
>>> > committing while choosing a host for new vm. In order to achieve this,
>>> > we
>>> > have changed the way in which FREEMEMORY is being calculated for each
>>> > host:
>>> >
>>> > FREE MEMORY = TOTAL MEMORY -  [ Sum of memory values allocated to VMs
>>> > which
>>> > are currently running on the host ]
>>> >
>>> > Please let us know if the above approach is fine or is there any better
>>> > way
>>> > to accomplish the task. We are using opennebula 1.4.
>>> >
>>> > --
>>> > Regards,
>>> > Shashank Rachamalla
>>> >
>>> > _______________________________________________
>>> > Users mailing list
>>> > Users at lists.opennebula.org
>>> > http://lists.opennebula.org/listinfo.cgi/users-opennebula.org
>>> >
>>> >
>>>
>>>
>>>
>>> --
>>> Javier Fontan, Grid & Virtualization Technology Engineer/Researcher
>>> DSA Research Group: http://dsa-research.org
>>> Globus GridWay Metascheduler: http://www.GridWay.org
>>> OpenNebula Virtual Infrastructure Engine: http://www.OpenNebula.org
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opennebula.org
>>> http://lists.opennebula.org/listinfo.cgi/users-opennebula.org
>>
>
>



-- 
Javier Fontan, Grid & Virtualization Technology Engineer/Researcher
DSA Research Group: http://dsa-research.org
Globus GridWay Metascheduler: http://www.GridWay.org
OpenNebula Virtual Infrastructure Engine: http://www.OpenNebula.org



More information about the Users mailing list