Hello,
I'm trying to test Memory balloon useful functionality, but l'm unable to make it
work successfuly.
Firstly, I enable the MOM on my Cluster:
Memory Balloon
Enable Memory Balloon Optimization
Secondly, I configure a VM virtual machine like this:
On system tab:
Memory Size : 28672 MB
Maximum memory : 28672 MB
On Ressource allocation tab:
Memory Allocation:
Physical Memory Guaranteed : 2048 MB
Memory Balloon Device: Enabled
Thirdly, I test
1- I boot the VM. After boot VM consume 200MB
2- I lauch perl program which consume 26GB.
3- During this, Host RAM usage is near 90%
4- I stop the perl program, and on guest side, RAM usage drop down to 200Mo
5- On host side, RAM usage keep to 24 - 26GB. I wait some time to show if the qemu-vm
process drop is host-ram-usage. Ram usage keep to 24GB.
6- I try to launch another VM like the first one (but with 8GB RAM and 2GB Guaranteed) ,
on the host (to "force" Mom ?) but I'm unable to lauch it, Host free mem is
insufficient
I change MoM log to debug to show something:
2018-07-31 11:49:31,887 - mom.RPCServer - INFO - ping()
2018-07-31 11:49:31,888 - mom.RPCServer - INFO - getStatistics()
2018-07-31 11:49:31,888 - mom.Monitor - DEBUG - Field 'mem_free' not known.
Ignoring.
2018-07-31 11:49:43,313 - mom.VdsmRpcBase - DEBUG - VM List:
[u'9632443f-d302-43f7-a279-778e64ee98f4']
2018-07-31 11:49:43,465 - mom.VdsmRpcBase - DEBUG - Memory stats: {'swap_out': 0,
'swap_usage': 0, 'mem_free': 28221020, 'major_fault': 0,
'swap_in': 0, 'swap_total': 0, 'mem_available': 28650472,
'minor_fault': 99, 'mem_unused': 28221020}
2018-07-31 11:49:43,468 - mom.Monitor - DEBUG - Collector
<mom.Collectors.GuestIoTuneOptional.GuestIoTuneOptional instance at 0x167de18> did
not return any data
2018-07-31 11:49:43,931 - mom.RPCServer - INFO - ping()
2018-07-31 11:49:43,932 - mom.RPCServer - INFO - getStatistics()
2018-07-31 11:49:43,932 - mom.Monitor - DEBUG - Field 'mem_free' not known.
Ignoring.
2018-07-31 11:49:44,258 - mom.Monitor - DEBUG - Field 'mem_free' not known.
Ignoring.
2018-07-31 11:49:44,284 - mom.Evaluator - DEBUG - debug: ('No shared pages, setting
ksm_merge_across_nodes to', 1)
2018-07-31 11:49:44,286 - mom.Evaluator - DEBUG - debug: ('entry:
apply_NUMA_policy',)
2018-07-31 11:49:44,286 - mom.Evaluator - DEBUG - debug: (1, '=ksm_merge_across_nodes
ACTUAL from kernel')
2018-07-31 11:49:44,286 - mom.Evaluator - DEBUG - debug: (1, '=ksmMergeAcrossNodes
REQUIRED from oVirt-engine')
2018-07-31 11:49:44,289 - mom.Evaluator - DEBUG - debug: ('exit: apply_NUMA_policy
return_value = ', 0)
2018-07-31 11:49:44,310 - mom.Policy - DEBUG - Results: [0, 1, 1, 1, 0, 1, 1, 0.2, 0.05,
0.2, 0.05, 0.0025, 'change_big_enough', 'shrink_guest',
'grow_guest', 0.22506353015141964, 'balloon_logic', [0],
'guest_qos', [0], 300, -50, 64, 1250, 10, 0.2, 'change_npages',
'apply_NUMA_policy', 6550590.4, 30058208, None, 0, 0, None, -1, 100000,
'check_and_set_quota', 'reset_quota_and_period', [None], 0,
'set_io_limits', 'reset_io_limits', [0]]
Does I miss something ? MoM behavior ?
Thanks for all !