mirror of
https://github.com/mrlesmithjr/ansible-manage-lvm.git
synced 2026-09-06 23:48:12 +03:00
* Refactor: aws code in its own tasks file to mitigate concerns about performance at scale
This commit is contained in:
@@ -0,0 +1,70 @@
|
|||||||
|
---
|
||||||
|
|
||||||
|
- name: centos | check for nvme devices
|
||||||
|
shell: |
|
||||||
|
set -o pipefail
|
||||||
|
cat /proc/partitions | awk '{print $4}' | grep -q nvme. ; echo $?
|
||||||
|
args:
|
||||||
|
executable: /bin/bash
|
||||||
|
register: blkdev_nvme
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: centos | check for amazon ebs devices
|
||||||
|
shell: |
|
||||||
|
set -o pipefail
|
||||||
|
lsblk -O -J | grep -qi "amazon elastic block store" ; echo $?
|
||||||
|
register: blkdev_awsebs
|
||||||
|
changed_when: false
|
||||||
|
args:
|
||||||
|
executable: /bin/bash
|
||||||
|
|
||||||
|
- name: centos | set flag for nvme subsystem
|
||||||
|
set_fact:
|
||||||
|
device_is_nvme: "{{ true if (blkdev_nvme.stdout == '0') else false }}"
|
||||||
|
|
||||||
|
- name: centos | set flag for aws ebs devices
|
||||||
|
set_fact:
|
||||||
|
device_is_awsebs: "{{ true if (blkdev_awsebs.stdout == '0') else false }}"
|
||||||
|
|
||||||
|
- name: Block to map renamed ec2 ebs nvmeXnY devices to their original sdX/xvdX names
|
||||||
|
when: device_is_nvme and device_is_awsebs|bool
|
||||||
|
become: true
|
||||||
|
block:
|
||||||
|
- name: centos | download nvme mapping binary helper
|
||||||
|
get_url:
|
||||||
|
url: "{{ ebsnvme_binary_helper_url }}"
|
||||||
|
dest: "{{ ebsnvme_binary_helper_tmp }}/"
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: centos | extract binary helper
|
||||||
|
unarchive:
|
||||||
|
src: "{{ ebsnvme_binary_helper_tmp }}/{{ ebsnvme_binary_helper_file }}"
|
||||||
|
dest: "{{ ebsnvme_binary_helper_tmp }}/"
|
||||||
|
remote_src: yes
|
||||||
|
mode: 0755
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: centos | copy binary helper
|
||||||
|
copy:
|
||||||
|
src: "{{ ebsnvme_binary_helper_tmp }}/go-ebsnvme"
|
||||||
|
dest: "{{ ebsnvme_binary_helper_path }}"
|
||||||
|
mode: a+x
|
||||||
|
remote_src: yes
|
||||||
|
|
||||||
|
- name: centos | template script helper
|
||||||
|
template:
|
||||||
|
src: 'ebsnvme-id.j2'
|
||||||
|
dest: "{{ ebsnvme_scrip_helper_path }}"
|
||||||
|
mode: a+x
|
||||||
|
|
||||||
|
- name: centos | template udev rule
|
||||||
|
template:
|
||||||
|
src: '70-ec2-nvme-devices.rules.j2'
|
||||||
|
dest: '/etc/udev/rules.d/70-ec2-nvme-devices.rules'
|
||||||
|
mode: 0755
|
||||||
|
register: udev_rule
|
||||||
|
|
||||||
|
- name: centos | reload and trigger udev rules
|
||||||
|
shell:
|
||||||
|
cmd: udevadm control --reload-rules && udevadm trigger
|
||||||
|
when: udev_rule.changed
|
||||||
+2
-68
@@ -5,74 +5,8 @@
|
|||||||
state: present
|
state: present
|
||||||
become: true
|
become: true
|
||||||
|
|
||||||
- name: centos | check for nvme devices
|
- include_tasks: amazon.yml
|
||||||
shell: |
|
when: ansible_system_vendor == 'Amazon EC2'
|
||||||
set -o pipefail
|
|
||||||
cat /proc/partitions | awk '{print $4}' | grep -q nvme. ; echo $?
|
|
||||||
args:
|
|
||||||
executable: /bin/bash
|
|
||||||
register: blkdev_nvme
|
|
||||||
changed_when: false
|
|
||||||
|
|
||||||
- name: centos | check for amazon ebs devices
|
|
||||||
shell: |
|
|
||||||
set -o pipefail
|
|
||||||
lsblk -O -J | grep -qi "amazon elastic block store" ; echo $?
|
|
||||||
register: blkdev_awsebs
|
|
||||||
changed_when: false
|
|
||||||
args:
|
|
||||||
executable: /bin/bash
|
|
||||||
|
|
||||||
- name: centos | set flag for nvme subsystem
|
|
||||||
set_fact:
|
|
||||||
device_is_nvme: "{{ true if (blkdev_nvme.stdout == '0') else false }}"
|
|
||||||
|
|
||||||
- name: centos | set flag for aws ebs devices
|
|
||||||
set_fact:
|
|
||||||
device_is_awsebs: "{{ true if (blkdev_awsebs.stdout == '0') else false }}"
|
|
||||||
|
|
||||||
- name: Block to map renamed ec2 ebs nvmeXnY devices to their original sdX/xvdX names
|
|
||||||
when: device_is_nvme and device_is_awsebs|bool
|
|
||||||
become: true
|
|
||||||
block:
|
|
||||||
- name: centos | download nvme mapping binary helper
|
|
||||||
get_url:
|
|
||||||
url: "{{ ebsnvme_binary_helper_url }}"
|
|
||||||
dest: "{{ ebsnvme_binary_helper_tmp }}/"
|
|
||||||
changed_when: false
|
|
||||||
|
|
||||||
- name: centos | extract binary helper
|
|
||||||
unarchive:
|
|
||||||
src: "{{ ebsnvme_binary_helper_tmp }}/{{ ebsnvme_binary_helper_file }}"
|
|
||||||
dest: "{{ ebsnvme_binary_helper_tmp }}/"
|
|
||||||
remote_src: yes
|
|
||||||
mode: 0755
|
|
||||||
changed_when: false
|
|
||||||
|
|
||||||
- name: centos | copy binary helper
|
|
||||||
copy:
|
|
||||||
src: "{{ ebsnvme_binary_helper_tmp }}/go-ebsnvme"
|
|
||||||
dest: "{{ ebsnvme_binary_helper_path }}"
|
|
||||||
mode: a+x
|
|
||||||
remote_src: yes
|
|
||||||
|
|
||||||
- name: centos | template script helper
|
|
||||||
template:
|
|
||||||
src: 'ebsnvme-id.j2'
|
|
||||||
dest: "{{ ebsnvme_scrip_helper_path }}"
|
|
||||||
mode: a+x
|
|
||||||
|
|
||||||
- name: centos | template udev rule
|
|
||||||
template:
|
|
||||||
src: '70-ec2-nvme-devices.rules.j2'
|
|
||||||
dest: '/etc/udev/rules.d/70-ec2-nvme-devices.rules'
|
|
||||||
mode: 0755
|
|
||||||
register: udev_rule
|
|
||||||
|
|
||||||
- name: centos | reload and trigger udev rules
|
|
||||||
shell:
|
|
||||||
cmd: udevadm control --reload-rules && udevadm trigger
|
|
||||||
when: udev_rule.changed
|
|
||||||
|
|
||||||
- name: centos | installing sg3_utils
|
- name: centos | installing sg3_utils
|
||||||
package:
|
package:
|
||||||
|
|||||||
Reference in New Issue
Block a user