open ebs zfs
This commit is contained in:
54
ansible/roles/k8s_storage_ebs_local_deploy/tasks/disks.yaml
Normal file
54
ansible/roles/k8s_storage_ebs_local_deploy/tasks/disks.yaml
Normal file
@ -0,0 +1,54 @@
|
||||
---
|
||||
- name: setup disks on storage nodes
|
||||
delegate_to: "{{ node }}"
|
||||
delegate_facts: true
|
||||
become: true
|
||||
block:
|
||||
|
||||
- name: ensure parted is installed
|
||||
community.general.pacman:
|
||||
name: parted
|
||||
state: latest
|
||||
update_cache: false
|
||||
when:
|
||||
- ansible_os_family == 'Archlinux'
|
||||
|
||||
- name: create containerd image partition
|
||||
community.general.parted:
|
||||
device: "{{ item.disk }}"
|
||||
align: optimal
|
||||
name: "{{ item.part }}"
|
||||
label: gpt
|
||||
number: 1
|
||||
part_start: 0%
|
||||
part_end: 100%
|
||||
state: present
|
||||
fs_type: ext4
|
||||
with_items:
|
||||
- disk: /dev/vdc
|
||||
part: ebs-ssd
|
||||
- disk: /dev/vdd
|
||||
part: ebs-hdd
|
||||
|
||||
- name: create containerd partition filesystem
|
||||
community.general.filesystem:
|
||||
dev: "{{ item }}"
|
||||
fstype: ext4
|
||||
resizefs: true
|
||||
state: present
|
||||
with_items:
|
||||
- /dev/disk/by-partlabel/ebs-ssd
|
||||
- /dev/disk/by-partlabel/ebs-hdd
|
||||
|
||||
- name: mount ebs disks
|
||||
ansible.posix.mount:
|
||||
state: mounted
|
||||
src: "{{ item.src }}"
|
||||
path: "{{ item.path }}"
|
||||
fstype: ext4
|
||||
boot: true
|
||||
with_items:
|
||||
- src: /dev/disk/by-partlabel/ebs-ssd
|
||||
path: /ebs/ssd
|
||||
- src: /dev/disk/by-partlabel/ebs-hdd
|
||||
path: /ebs/hdd
|
46
ansible/roles/k8s_storage_ebs_local_deploy/tasks/main.yaml
Normal file
46
ansible/roles/k8s_storage_ebs_local_deploy/tasks/main.yaml
Normal file
@ -0,0 +1,46 @@
|
||||
---
|
||||
- name: setup disks for ebs
|
||||
ansible.builtin.include_tasks:
|
||||
file: disks.yaml
|
||||
with_items:
|
||||
- "{{ groups['k8s_storage'] }}"
|
||||
loop_control:
|
||||
loop_var: node
|
||||
|
||||
- name: create target directory for open-ebs files
|
||||
become: false
|
||||
ansible.builtin.file:
|
||||
path: "{{ ansible_search_path[0] }}/files/ebs"
|
||||
state: directory
|
||||
mode: 0775
|
||||
|
||||
- name: download the open-ebs operator (lite) manifest
|
||||
become: false
|
||||
ansible.builtin.uri:
|
||||
url: "https://openebs.github.io/charts/{{ item }}"
|
||||
dest: "{{ ansible_search_path[0] }}/files/ebs/{{ item }}"
|
||||
creates: "{{ ansible_search_path[0] }}/files/ebs/{{ item }}"
|
||||
mode: 0664
|
||||
with_items:
|
||||
- openebs-operator-lite.yaml
|
||||
|
||||
- name: template out the open-ebs storage class definitions
|
||||
ansible.builtin.template:
|
||||
src: ebs_storage_class.yaml.j2
|
||||
dest: "{{ ansible_search_path[0] }}/files/ebs/ebs_storage_class_{{ item }}.yaml"
|
||||
with_items:
|
||||
- ssd
|
||||
- hdd
|
||||
|
||||
- name: install the open-ebs operator (lite)
|
||||
kubernetes.core.k8s:
|
||||
src: "{{ ansible_search_path[0] }}/files/ebs/openebs-operator-lite.yaml"
|
||||
state: present
|
||||
|
||||
- name: install the open-ebs storage classes
|
||||
kubernetes.core.k8s:
|
||||
src: "{{ ansible_search_path[0] }}/files/ebs/ebs_storage_class_{{ item }}.yaml"
|
||||
state: present
|
||||
with_items:
|
||||
- ssd
|
||||
- hdd
|
Reference in New Issue
Block a user