summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSachin Prabhu <sprabhu@redhat.com>2020-08-19 14:19:14 +0100
committerspuiuk <sachin.prabhu@gmail.com>2020-08-24 12:26:57 +0100
commite29841ad6a65d2f79f18181a5ac256f321bba756 (patch)
treed53a866499300ecc5ee5dfbed70a6c99fc1c7a0d
parentedc1659267596a285d56cd4854f4cab3dcf23d52 (diff)
downloadsamba-integration-e29841ad6a65d2f79f18181a5ac256f321bba756.tar.gz
samba-integration-e29841ad6a65d2f79f18181a5ac256f321bba756.tar.xz
samba-integration-e29841ad6a65d2f79f18181a5ac256f321bba756.zip
Move replicated volume creation to its own task
Use the gluster module in ansible instead of the gluster-cluster ansible script. Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
-rw-r--r--vagrant/ansible/cluster-vars.yml16
-rw-r--r--vagrant/ansible/roles/glusterfs.setup/tasks/main.yml9
-rw-r--r--vagrant/ansible/roles/glusterfs.setup/tasks/new_volume.yml30
-rw-r--r--vagrant/ansible/roles/samba-glusterfs.setup/tasks/main.yml24
4 files changed, 46 insertions, 33 deletions
diff --git a/vagrant/ansible/cluster-vars.yml b/vagrant/ansible/cluster-vars.yml
index 086ae1e..dc47866 100644
--- a/vagrant/ansible/cluster-vars.yml
+++ b/vagrant/ansible/cluster-vars.yml
@@ -20,9 +20,9 @@ gluster_infra_lv_logicalvols:
- { vgname: 'vg_vdd', thinpool: 'vg_vdd_thinpool', lvname: 'vg_vdd_b', lvsize: '4G' }
gluster_infra_mount_devices:
- - { path: '/bricks/brick0', vgname: 'vg_vdb', lvname: 'vg_vdb_a' }
- - { path: '/bricks/brick1', vgname: 'vg_vdc', lvname: 'vg_vdc_a' }
- - { path: '/bricks/brick2', vgname: 'vg_vdd', lvname: 'vg_vdd_a' }
+ - { path: '/bricks/brick-repl-0', vgname: 'vg_vdb', lvname: 'vg_vdb_a' }
+ - { path: '/bricks/brick-repl-1', vgname: 'vg_vdc', lvname: 'vg_vdc_a' }
+ - { path: '/bricks/brick-repl-2', vgname: 'vg_vdd', lvname: 'vg_vdd_a' }
- { path: '/bricks/brick3', vgname: 'vg_vdb', lvname: 'vg_vdb_b' }
- { path: '/bricks/brick4', vgname: 'vg_vdc', lvname: 'vg_vdc_b' }
- { path: '/bricks/brick5', vgname: 'vg_vdd', lvname: 'vg_vdd_b' }
@@ -49,10 +49,10 @@ cluster_hosts:
#
- storage0
- storage1
-gluster_cluster_volume: vol
-gluster_cluster_replica_count: 2
-gluster_cluster_transport: 'tcp'
-gluster_cluster_bricks: '/bricks/brick0/vol,/bricks/brick1/vol'
+
+replicate_cluster_volume: "vol-replicate"
+replicate_cluster_replica_count: "{{ cluster_hosts|length }}"
+replicate_cluster_bricks: '/bricks/brick-repl-0/vol,/bricks/brick-repl-1/vol,/bricks/brick-repl-2/vol'
#Autogenerate these values containing ip addresses
ctdb_network_private_interfaces:
@@ -70,4 +70,4 @@ samba_netbios_name: "GLUSTERTEST"
samba_users:
- { username: 'test1', password: 'x', uid: '2001' }
- { username: 'test2', password: 'x', uid: '2002' }
-samba_share: "gluster-{{ gluster_cluster_volume }}"
+samba_share: "gluster-{{ replicate_cluster_volume }}"
diff --git a/vagrant/ansible/roles/glusterfs.setup/tasks/main.yml b/vagrant/ansible/roles/glusterfs.setup/tasks/main.yml
index b6e34a5..2210fda 100644
--- a/vagrant/ansible/roles/glusterfs.setup/tasks/main.yml
+++ b/vagrant/ansible/roles/glusterfs.setup/tasks/main.yml
@@ -7,7 +7,10 @@
- name: Ensure glusterd service is enabled
service: name=glusterd state=started enabled=yes
-- include_role:
- name: gluster.cluster
+- include_tasks:
+ file: "new_volume.yml"
vars:
- gluster_cluster_hosts: "{{ cluster_hosts }}"
+ cluster_volume: "{{ replicate_cluster_volume }}"
+ cluster_bricks: "{{ replicate_cluster_bricks }}"
+ cluster_replica_count: "{{ replicate_cluster_replica_count }}"
+ cluster_type: "replicate"
diff --git a/vagrant/ansible/roles/glusterfs.setup/tasks/new_volume.yml b/vagrant/ansible/roles/glusterfs.setup/tasks/new_volume.yml
new file mode 100644
index 0000000..ec10897
--- /dev/null
+++ b/vagrant/ansible/roles/glusterfs.setup/tasks/new_volume.yml
@@ -0,0 +1,30 @@
+- name: Create Replicate Volumes
+ gluster_volume:
+ state: present
+ name: "{{ cluster_volume }}"
+ bricks: '{{ cluster_bricks }}'
+ cluster: "{{ cluster_hosts }}"
+ replicas: "{{ cluster_replica_count }}"
+ run_once: yes
+ when: cluster_type == 'replicate'
+
+- name: Set volume options
+ gluster_volume:
+ state: present
+ name: "{{ cluster_volume }}"
+ options:
+ {
+ features.cache-invalidation: 'on',
+ features.cache-invalidation-timeout: '600',
+ performance.cache-samba-metadata: 'on',
+ performance.stat-prefetch: 'on',
+ performance.cache-invalidation: 'on',
+ performance.md-cache-timeout: '600',
+ network.inode-lru-limit: '200000',
+ performance.nl-cache: 'on',
+ performance.nl-cache-timeout: '600',
+ performance.readdir-ahead: 'on',
+ performance.parallel-readdir: 'on',
+ }
+ run_once: true
+
diff --git a/vagrant/ansible/roles/samba-glusterfs.setup/tasks/main.yml b/vagrant/ansible/roles/samba-glusterfs.setup/tasks/main.yml
index 15963e8..2624917 100644
--- a/vagrant/ansible/roles/samba-glusterfs.setup/tasks/main.yml
+++ b/vagrant/ansible/roles/samba-glusterfs.setup/tasks/main.yml
@@ -46,7 +46,7 @@
src: smb_share.conf.j2
dest: "/etc/samba/smb.shares/{{ samba_share }}.conf"
vars:
- cluster_volume: "{{ gluster_cluster_volume }}"
+ cluster_volume: "{{ replicated_cluster_volume }}"
- name: Include share configuration into smb.conf
lineinfile:
@@ -54,32 +54,12 @@
line: "include = /etc/samba/smb.shares/{{ samba_share }}.conf"
insertafter: EOF
-- name: Set volume options
- gluster_volume:
- state: present
- name: "{{ gluster_cluster_volume }}"
- options:
- {
- features.cache-invalidation: 'on',
- features.cache-invalidation-timeout: '600',
- performance.cache-samba-metadata: 'on',
- performance.stat-prefetch: 'on',
- performance.cache-invalidation: 'on',
- performance.md-cache-timeout: '600',
- network.inode-lru-limit: '200000',
- performance.nl-cache: 'on',
- performance.nl-cache-timeout: '600',
- performance.readdir-ahead: 'on',
- performance.parallel-readdir: 'on',
- }
- run_once: true
-
- name: Mount glusterfs using fuse mount and set world writable permissions
block:
- name: Mount gluster volume using glusterfs
mount:
path: /mnt-fuse
- src: 'localhost:/vol'
+ src: "localhost:/{{ replicated_cluster_volume }}"
fstype: glusterfs
state: mounted