Hi!
I'm sorry, but it does not work, While there are hosts with dozens of GB RAM
free, the allocator still selects a CLOUDSTACK-7857-full host an the deployment
fails.
I did set vm.allocation.algorithm to firstfitleastconsumed and
vm.allocation.algorithm to firstfitleastconsumed and restarted the management
server.
But I get:
--------
2016-02-11 09:31:31,665 WARN [c.c.h.x.r.CitrixResourceBase]
(DirectAgent-73:ctx-6fa5171b) (logid:54f88baa) Unable to start VM(i-39-1894-VM)
on host(bc07803d-d696-4b27-84c6-7ff20960fb19) due to Task failed! Task record:
uuid: 6661aea4-ad0a-1c09-0725-988ca32f715f
nameLabel: Async.VM.start_on
nameDescription:
allowedOperations: []
currentOperations: {}
created: Thu Feb 11 09:31:30 CET 2016
finished: Thu Feb 11 09:31:30 CET 2016
status: failure
residentOn: com.xensource.xenapi.Host@69af9bad
progress: 1.0
type: <none/>
result:
errorInfo: [HOST_NOT_ENOUGH_FREE_MEMORY, 1086324736, 599031808]
otherConfig: {}
subtaskOf: com.xensource.xenapi.Task@aaf13f6f
subtasks: []
Task failed! Task record: uuid:
6661aea4-ad0a-1c09-0725-988ca32f715f
---------
The selected host is alone in its cluster, and indeed has less than 1GB RAM
free. That's 99% used, while the disable threshold is set 0.88. So why did ACS
chose this cluster/host at all?
Did I actually use this new allocator? In the log file, I still see
"FirstFitAllocator".
Thanks
Martin
-----Ursprüngliche Nachricht-----
Von: Martin Emrich [mailto:[email protected]]
Gesendet: Donnerstag, 11. Februar 2016 09:20
An: [email protected]
Betreff: AW: Still having capacity calculation problems with XenServer.
Hi!
That sounds similar to my idea :) Looks like it is already part of 4.7.1, I
will give it a try...
Thanks
Martin
-----Ursprüngliche Nachricht-----
Von: Koushik Das [mailto:[email protected]]
Gesendet: Donnerstag, 11. Februar 2016 04:43
An: <[email protected]>
Betreff: Re: Still having capacity calculation problems with XenServer.
Check if the fix for CLOUDSTACK-8181 helps.
> On 10-Feb-2016, at 7:33 PM, Martin Emrich <[email protected]> wrote:
>
> Hi!
>
> I am still/again having issues with the capacity calculation on Cloudstack:
>
> https://issues.apache.org/jira/browse/CLOUDSTACK-2344
> https://issues.apache.org/jira/browse/CLOUDSTACK-7857
>
> As these Issues are still in 4.7.1, I thought about implementing a fix
> myself, I thought of a "LeastMemoryUsedAllocator". Used instead of the
> FirstFitAllocator, it should always return the host with the most free memory
> left, thus "Pushing" the problem to the point where all hosts are nearly
> full. (Of course, a "real" fix would be preferred, when Cloudstack would try
> the next host instead of returning a deployment error).
>
> I have the latest source code and Eclipse ready, found the example
> "RandomAllocator", but now I am stuck:
>
>
> - How do I get the memory used on each host inside the Allocator?
>
> - And how do I actually build the plugin? Can I build it, and get
> some small .jar file, and just put that in the server and use it in
> host.allocators.order?
>
> Yes, it sounds naïve, but I maybe it could be that simple... As my cloud is
> unusable despite having hundreds of gigabytes of RAM available, I'm eager to
> dive into cloudstack dev ;)
>
> Thanks
>
> Martin
>