From aa3d9b3fa2cf085cd543b043041cc2079af3634e Mon Sep 17 00:00:00 2001 From: tei-k Date: Wed, 16 Sep 2020 19:02:03 +0900 Subject: [PATCH 1/5] Fix to support nvme in tuned --- provision/ansible/playbooks/roles/cassandra/tasks/main.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/provision/ansible/playbooks/roles/cassandra/tasks/main.yml b/provision/ansible/playbooks/roles/cassandra/tasks/main.yml index 01c24b142..84c211838 100644 --- a/provision/ansible/playbooks/roles/cassandra/tasks/main.yml +++ b/provision/ansible/playbooks/roles/cassandra/tasks/main.yml @@ -21,6 +21,12 @@ path: /etc/tuned/cassandra state: directory +- name: Replace plugin_disk.py of tuned for support nvme disk + replace: + path: /usr/lib/python2.7/site-packages/tuned/plugins/plugin_disk.py + regexp: '^(\s*device.parent.subsystem in \["scsi", "virtio", "xen")\]\)$' + replace: '\1, "nvme"])' + - name: Add Cassandra Tuned Profile template: src: tuned.conf.j2 From b5ec2eb99167d9c22e67d54ae120e19a2e68ed2d Mon Sep 17 00:00:00 2001 From: tei-k Date: Thu, 17 Sep 2020 09:42:49 +0900 Subject: [PATCH 2/5] Add restart tuned task --- .../ansible/playbooks/roles/cassandra/handlers/main.yml | 5 +++++ provision/ansible/playbooks/roles/cassandra/tasks/main.yml | 1 + 2 files changed, 6 insertions(+) diff --git a/provision/ansible/playbooks/roles/cassandra/handlers/main.yml b/provision/ansible/playbooks/roles/cassandra/handlers/main.yml index c04f16f32..e8a6179fc 100644 --- a/provision/ansible/playbooks/roles/cassandra/handlers/main.yml +++ b/provision/ansible/playbooks/roles/cassandra/handlers/main.yml @@ -3,3 +3,8 @@ systemd: name: cassandra state: restarted + +- name: restart tuned + systemd: + name: tuned + state: restarted diff --git a/provision/ansible/playbooks/roles/cassandra/tasks/main.yml b/provision/ansible/playbooks/roles/cassandra/tasks/main.yml index 84c211838..2246c4a0c 100644 --- a/provision/ansible/playbooks/roles/cassandra/tasks/main.yml +++ b/provision/ansible/playbooks/roles/cassandra/tasks/main.yml @@ -26,6 +26,7 @@ path: /usr/lib/python2.7/site-packages/tuned/plugins/plugin_disk.py regexp: '^(\s*device.parent.subsystem in \["scsi", "virtio", "xen")\]\)$' replace: '\1, "nvme"])' + notify: restart tuned - name: Add Cassandra Tuned Profile template: From 998b75442c253902b31444c44a9cbdf53d4953bf Mon Sep 17 00:00:00 2001 From: tei-k Date: Thu, 17 Sep 2020 09:53:23 +0900 Subject: [PATCH 3/5] Except nvme0n1 --- provision/ansible/playbooks/roles/cassandra/defaults/main.yml | 4 ++-- provision/ansible/playbooks/roles/cassandra/tasks/main.yml | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/provision/ansible/playbooks/roles/cassandra/defaults/main.yml b/provision/ansible/playbooks/roles/cassandra/defaults/main.yml index fa7c410e8..ce7990862 100644 --- a/provision/ansible/playbooks/roles/cassandra/defaults/main.yml +++ b/provision/ansible/playbooks/roles/cassandra/defaults/main.yml @@ -4,11 +4,11 @@ tuned_profile: virtual-guest # In AWS, sda and xvda are used depending on virtualization types. # https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/device_naming.html#available-ec2-device-names # In Azure, sda is used for OS. -tuned_disk_devices: '!sda, !xvda' +tuned_disk_devices: "!sda, !xvda, !nvme0n1" disk_read_ahead: 8 CASSANDRA_MEMTABLE_THRESHOLD: 0.33 CASSANDRA_STATE: stopped cassandra_dc_id: dc1 cassandra_rack_id: rack1 endpoint_snitch: GossipingPropertyFileSnitch -vm_max_map_count: '1048575' +vm_max_map_count: "1048575" diff --git a/provision/ansible/playbooks/roles/cassandra/tasks/main.yml b/provision/ansible/playbooks/roles/cassandra/tasks/main.yml index 2246c4a0c..6f1351b81 100644 --- a/provision/ansible/playbooks/roles/cassandra/tasks/main.yml +++ b/provision/ansible/playbooks/roles/cassandra/tasks/main.yml @@ -21,6 +21,8 @@ path: /etc/tuned/cassandra state: directory +# Tuned does not yet support nvme disk +# https://github.com/redhat-performance/tuned/issues/101 - name: Replace plugin_disk.py of tuned for support nvme disk replace: path: /usr/lib/python2.7/site-packages/tuned/plugins/plugin_disk.py From 9a049b9e36f1a53d8c7a337877aba04a6d2dff01 Mon Sep 17 00:00:00 2001 From: tei-k Date: Thu, 17 Sep 2020 11:13:05 +0900 Subject: [PATCH 4/5] Fix format --- provision/ansible/playbooks/roles/cassandra/defaults/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/provision/ansible/playbooks/roles/cassandra/defaults/main.yml b/provision/ansible/playbooks/roles/cassandra/defaults/main.yml index ce7990862..6688c6640 100644 --- a/provision/ansible/playbooks/roles/cassandra/defaults/main.yml +++ b/provision/ansible/playbooks/roles/cassandra/defaults/main.yml @@ -11,4 +11,4 @@ CASSANDRA_STATE: stopped cassandra_dc_id: dc1 cassandra_rack_id: rack1 endpoint_snitch: GossipingPropertyFileSnitch -vm_max_map_count: "1048575" +vm_max_map_count: 1048575 From 9fdc0108a4c4dcf28c00b4e8993c5cb17fb9ef32 Mon Sep 17 00:00:00 2001 From: Hiroyuki Yamada Date: Thu, 17 Sep 2020 13:20:33 +0900 Subject: [PATCH 5/5] Update provision/ansible/playbooks/roles/cassandra/tasks/main.yml --- provision/ansible/playbooks/roles/cassandra/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/provision/ansible/playbooks/roles/cassandra/tasks/main.yml b/provision/ansible/playbooks/roles/cassandra/tasks/main.yml index 6f1351b81..a9e9e31a1 100644 --- a/provision/ansible/playbooks/roles/cassandra/tasks/main.yml +++ b/provision/ansible/playbooks/roles/cassandra/tasks/main.yml @@ -23,7 +23,7 @@ # Tuned does not yet support nvme disk # https://github.com/redhat-performance/tuned/issues/101 -- name: Replace plugin_disk.py of tuned for support nvme disk +- name: Replace plugin_disk.py of tuned for supporting nvme disk replace: path: /usr/lib/python2.7/site-packages/tuned/plugins/plugin_disk.py regexp: '^(\s*device.parent.subsystem in \["scsi", "virtio", "xen")\]\)$'