Ref: https://github.com/harvester/harvester/issues/2827
Verify Steps:
- Install Harvester with any nodes
- Login to Dashboard and Navigate to hosts
- Edit node1’s Ksmtuned to
Run
and ThresCoef to85
then Click Save - Login to node1’s console, execute
kubectl get ksmtuned -oyaml --field-selector metadata.name=<node1>
- Fields in
spec
should be the same as Dashboard configured - Create an image for VM creation
- Create multiple VMs with 2Gi+ memory and schedule on
<node1>
(memory size reflect to ’s maximum size, total of VMs’ memory should greater than 40%) - Execute
watch -n1 grep . /sys/kernel/mm/ksm/*
to monitor ksm’s status change/sys/kernel/mm/ksm/run
should be update to1
after VMs started/sys/kernel/mm/ksm/page_*
should updating continuously
- Login to Dashboard then navigate to Hosts, click
- In the Tab of Ksmtuned, values in Statistics section should not be
0
. (data in this section will be updated per min, so it not equals to console’s output was expected.) - Update ’s Ksmtuned to check
Enable Merge Across Nodes
- Monitor data in Step.8 should reflect to:
/sys/kernel/mm/ksm/run
should be updated to2
/sys/kernel/mm/ksm/pages_*
should be updated to0
- Restart all VMs scheduling to
<node1>
- Monitor data in Step.8 should reflect to:
/sys/kernel/mm/ksm/run
should be updated to1
/sys/kernel/mm/ksm/pages_*
should be updated and less than Step.8 monitored