diff --git a/ansible-5/playbooks/glusterfs.yml b/ansible-5/playbooks/glusterfs-cluster.yml similarity index 81% rename from ansible-5/playbooks/glusterfs.yml rename to ansible-5/playbooks/glusterfs-cluster.yml index a2d4c62..f028359 100644 --- a/ansible-5/playbooks/glusterfs.yml +++ b/ansible-5/playbooks/glusterfs-cluster.yml @@ -8,11 +8,16 @@ become: true vars: + glusterd: + version: 9.2-1 + unit: glusterd + envfile: /etc/sysconfig/glusterd # glusterfs_default_release: 6 # glusterfs_ppa_version: 6 # glusterfs_daemon: glusterd cluster: - cubox-i + - cubox-m move_brick: - gitea @@ -23,7 +28,7 @@ # with_items: "{{mounts[inventory_hostname]}}" roles: - - glusterfs + - glusterfs-server post_tasks: # - name: check service is up diff --git a/ansible-5/roles/glusterfs/defaults/main.yaml b/ansible-5/roles/glusterfs-server/defaults/main.yaml similarity index 92% rename from ansible-5/roles/glusterfs/defaults/main.yaml rename to ansible-5/roles/glusterfs-server/defaults/main.yaml index 0520584..64209ea 100644 --- a/ansible-5/roles/glusterfs/defaults/main.yaml +++ b/ansible-5/roles/glusterfs-server/defaults/main.yaml @@ -3,13 +3,19 @@ # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # + +glusterd: + version: 9.2-1 + unit: glusterd + envfile: /etc/sysconfig/glusterd + cluster: - cubox-i -nodes: - - name: cubox-i - uuid: 8c6d97da-f712-41d5-829a-906de5113479 - - name: home - uuid: c59792a8-72d6-463b-8309-e66c6bc96d35 +#cubox-inodes: +# - name: cubox-i +# uuid: 8c6d97da-f712-41d5-829a-906de5113479 +# - name: home +# uuid: c59792a8-72d6-463b-8309-e66c6bc96d35 volumes: brick_folder: brick diff --git a/ansible-5/roles/glusterfs-server/handlers/main.yml b/ansible-5/roles/glusterfs-server/handlers/main.yml new file mode 100644 index 0000000..ff10d53 --- /dev/null +++ b/ansible-5/roles/glusterfs-server/handlers/main.yml @@ -0,0 +1,9 @@ +--- +# handlers/main.yml +# define handlers here + + +- name: restart glusterd + ansible.builtin.systemd: + name: "{{ glusterd.unit }}" + state: restarted diff --git a/ansible-5/roles/glusterfs-server/tasks/create_cluster.yaml b/ansible-5/roles/glusterfs-server/tasks/create_cluster.yaml new file mode 100644 index 0000000..6a9b3cc --- /dev/null +++ b/ansible-5/roles/glusterfs-server/tasks/create_cluster.yaml @@ -0,0 +1,7 @@ +--- +# create the cluster + +- name: Create a trusted storage pool + gluster.gluster.gluster_peer: + state: present + nodes: "{{cluster}}" diff --git a/ansible-5/roles/glusterfs/tasks/install.yaml b/ansible-5/roles/glusterfs-server/tasks/install-6.9.yaml similarity index 100% rename from ansible-5/roles/glusterfs/tasks/install.yaml rename to ansible-5/roles/glusterfs-server/tasks/install-6.9.yaml diff --git a/ansible-5/roles/glusterfs-server/tasks/install.yaml b/ansible-5/roles/glusterfs-server/tasks/install.yaml new file mode 100644 index 0000000..c4a4277 --- /dev/null +++ b/ansible-5/roles/glusterfs-server/tasks/install.yaml @@ -0,0 +1,39 @@ +--- +# install available glusterfs-server + +# install packages +- name: Ensure glusterfs server is installed. + ansible.builtin.apt: + name: "{{ item }}" + update_cache: yes + cache_valid_time: 3600 + update_cache_retries: 10 + state: present + with_items: + - glusterfs-server={{glusterd.version}} + - xfsprogs + - xfsdump + notify: + - restart glusterd + +- name: create systemd environment file + ansible.builtin.template: + src: systemd/environment.j2 + dest: "{{glusterd.envfile}}" + owner: root + group: root + mode: '0644' + notify: + - restart glusterd + +- name: enable systemd unit + ansible.builtin.systemd: + name: "{{ glusterd.unit }}" + enabled: yes + notify: + - restart glusterd + +- name: start glusterd + ansible.builtin.systemd: + name: "{{ glusterd.unit }}" + state: started diff --git a/ansible-5/roles/glusterfs/tasks/install_src.yaml b/ansible-5/roles/glusterfs-server/tasks/install_src.yaml similarity index 100% rename from ansible-5/roles/glusterfs/tasks/install_src.yaml rename to ansible-5/roles/glusterfs-server/tasks/install_src.yaml diff --git a/ansible-5/roles/glusterfs/tasks/main.yml b/ansible-5/roles/glusterfs-server/tasks/main.yml similarity index 82% rename from ansible-5/roles/glusterfs/tasks/main.yml rename to ansible-5/roles/glusterfs-server/tasks/main.yml index 4acca99..02e99f0 100644 --- a/ansible-5/roles/glusterfs/tasks/main.yml +++ b/ansible-5/roles/glusterfs-server/tasks/main.yml @@ -5,7 +5,9 @@ # name: geerlingguy.glusterfs # when: ansible_architecture != 'armv7l' -- include_tasks: install_src.yaml +- include_tasks: install.yaml + +- include_tasks: create_cluster.yaml #- include_tasks: manage_volumes.yml diff --git a/ansible-5/roles/glusterfs/tasks/manage_volumes.yml b/ansible-5/roles/glusterfs-server/tasks/manage_volumes.yml similarity index 100% rename from ansible-5/roles/glusterfs/tasks/manage_volumes.yml rename to ansible-5/roles/glusterfs-server/tasks/manage_volumes.yml diff --git a/ansible-5/roles/glusterfs/tasks/prometheus_exporter.yml b/ansible-5/roles/glusterfs-server/tasks/prometheus_exporter.yml similarity index 100% rename from ansible-5/roles/glusterfs/tasks/prometheus_exporter.yml rename to ansible-5/roles/glusterfs-server/tasks/prometheus_exporter.yml diff --git a/ansible-5/roles/glusterfs/tasks/recover_nodes.yaml b/ansible-5/roles/glusterfs-server/tasks/recover_nodes.yaml similarity index 100% rename from ansible-5/roles/glusterfs/tasks/recover_nodes.yaml rename to ansible-5/roles/glusterfs-server/tasks/recover_nodes.yaml diff --git a/ansible-5/roles/glusterfs/tasks/remove_volume.yml b/ansible-5/roles/glusterfs-server/tasks/remove_volume.yml similarity index 100% rename from ansible-5/roles/glusterfs/tasks/remove_volume.yml rename to ansible-5/roles/glusterfs-server/tasks/remove_volume.yml diff --git a/ansible-5/roles/glusterfs-server/templates/systemd/environment.j2 b/ansible-5/roles/glusterfs-server/templates/systemd/environment.j2 new file mode 100644 index 0000000..cf216fb --- /dev/null +++ b/ansible-5/roles/glusterfs-server/templates/systemd/environment.j2 @@ -0,0 +1,2 @@ +LOG_LEVEL=INFO +GLUSTERD_OPTIONS=