diff --git a/roles/vmhost/files/ksm.service b/roles/vmhost/files/ksm.service new file mode 100644 index 0000000..aeb77c9 --- /dev/null +++ b/roles/vmhost/files/ksm.service @@ -0,0 +1,12 @@ +# vim: set ft=dosini : +[Unit] +Description=Kernel Same-Page Merging + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/bin/sh -c "echo 1 > /sys/kernel/mm/ksm/run" +ExecStop=/bin/sh -c "echo 0 > /sys/kernel/mm/ksm/run" + +[Install] +WantedBy=multi-user.target diff --git a/roles/vmhost/tasks/main.yml b/roles/vmhost/tasks/main.yml index 310c052..59e5af2 100644 --- a/roles/vmhost/tasks/main.yml +++ b/roles/vmhost/tasks/main.yml @@ -69,3 +69,18 @@ immediate=yes state=enabled notify: save firewalld configuration + +- name: ensure systemd ksm unit is installed + copy: + src=ksm.service + dest=/etc/systemd/system/ksm.service + mode=0644 + notify: reload systemd +- name: ensure systemd ksm unit starts at boot + service: + name=ksm + enabled=yes +- name: ensure systemd ksm unit is running + service: + name=ksm + state=started