Bug 1007282 - Vm try to run on host with overloaded RAM when only RAM filter is used. And vm is pinned to overloaded host.
Vm try to run on host with overloaded RAM when only RAM filter is used. And v...
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-engine (Show other bugs)
3.3.0
Unspecified Unspecified
unspecified Severity high
: ---
: 3.3.0
Assigned To: Martin Sivák
Lukas Svaty
sla
: Triaged
Depends On:
Blocks: 3.3snap1
  Show dependency treegraph
 
Reported: 2013-09-12 04:49 EDT by Ondra Machacek
Modified: 2016-02-10 15:17 EST (History)
10 users (show)

See Also:
Fixed In Version: is19
Doc Type: Bug Fix
Doc Text:
Cause: There was a leftover policy unaware check for pin to host hidden in the process. Consequence: Pin to host was enforced even though the cluster policy did not contain Pin To Host policy unit. Fix: Check removed. Result: Everything in the scheduling now uses only the configured policy units.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2014-01-21 17:18:38 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: SLA
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
allow automatic migration engine log (12.92 KB, text/plain)
2013-09-12 04:49 EDT, Ondra Machacek
no flags Details
dont allow migration engine log (10.26 KB, text/plain)
2013-09-12 04:50 EDT, Ondra Machacek
no flags Details


External Trackers
Tracker ID Priority Status Summary Last Updated
oVirt gerrit 19784 None None None Never
oVirt gerrit 20094 None None None Never
oVirt gerrit 20153 None None None Never

  None (edit)
Description Ondra Machacek 2013-09-12 04:49:58 EDT
Created attachment 796691 [details]
allow automatic migration engine log

Description of problem:
There are two hosts in cluster and cluster use only RAM filter policy.
host1 has overloaded RAM, host2 is not overloaded.
There is vm which is pinned to host1, if this vm is started, it tries to run
on host1, which has overloded RAM.

Version-Release number of selected component (if applicable):
is12

How reproducible:
always

Steps to Reproduce:
1. Have two hosts in one cluster. This cluster use policy which use only RAM filter.
2. Create vm which is pinned to host1
3. Overload host1 RAM resources ( I had 99% ) (host2 had ~6%)
4. Start vm.

Actual results:
Vm tries to run on host1.

Expected results:
Vm run on host2

Additional info:
Comment 1 Ondra Machacek 2013-09-12 04:50:34 EDT
Created attachment 796692 [details]
dont allow migration engine log
Comment 2 Doron Fediuck 2013-09-16 10:02:47 EDT
Ondra,
what is the difference between the 2 logs?
The 2nd one being failed by the engine:

2013-09-12 10:47:35,204 WARN  [org.ovirt.engine.core.bll.RunVmCommand] (pool-5-thread-49) CanDoAction of action RunVm failed. Reasons:VAR__ACTION__RUN,VAR__TYPE__VM,VAR__ACTION__RUN,VAR__TYPE__VM,VAR__ACTION__RUN,VAR__TYPE__VM

Also, we need more data on the actual memory calculations;
what optimizations did you use (rqm load / balloon / ksm / etc).
Comment 3 Ondra Machacek 2013-09-18 08:37:57 EDT
I tried it on is15, and I was able to reproduce only when vm has checked option
'do not allow migration'.
When there is vm with this checked, then vm try to run on host1 even when the
scheduler don't use pin-to-host filter, but only RAM filter.

When vm has checked 'allow auto/man migration', then vm starts on host2.

I didn't use any memory optimizations, disabled memory page sharing, no ksm, no
balooning.

The first log is with vm which has checked 'allow auto/man migration'.
The second log is with vm which has checked 'do not allow migration'.
Comment 5 Lukas Svaty 2013-10-31 04:45:38 EDT
tested in is20.2
Comment 6 Itamar Heim 2014-01-21 17:18:38 EST
Closing - RHEV 3.3 Released
Comment 7 Itamar Heim 2014-01-21 17:24:59 EST
Closing - RHEV 3.3 Released

Note You need to log in before you can comment on or make changes to this bug.