diff --git a/contrib/network-storage/glusterfs/roles/glusterfs/server/tasks/main.yml b/contrib/network-storage/glusterfs/roles/glusterfs/server/tasks/main.yml
index 03d2908328b67ad98b4a69c52c70e8f4129ce3cc..b8fe9f9e3a17f4bf08de2152046821f4aba18fb3 100644
--- a/contrib/network-storage/glusterfs/roles/glusterfs/server/tasks/main.yml
+++ b/contrib/network-storage/glusterfs/roles/glusterfs/server/tasks/main.yml
@@ -36,7 +36,7 @@
     - "{{ gluster_brick_dir }}"
     - "{{ gluster_mount_dir }}"
 
-- name: Configure Gluster volume.
+- name: Configure Gluster volume with replicas
   gluster_volume:
     state: present
     name: "{{ gluster_brick_name }}"
@@ -46,6 +46,18 @@
     host: "{{ inventory_hostname }}"
     force: yes
   run_once: true
+  when: groups['gfs-cluster']|length > 1
+
+- name: Configure Gluster volume without replicas
+  gluster_volume:
+    state: present
+    name: "{{ gluster_brick_name }}"
+    brick: "{{ gluster_brick_dir }}"
+    cluster: "{% for item in groups['gfs-cluster'] -%}{{ hostvars[item]['ip']|default(hostvars[item].ansible_default_ipv4['address']) }}{% if not loop.last %},{% endif %}{%- endfor %}"
+    host: "{{ inventory_hostname }}"
+    force: yes
+  run_once: true
+  when: groups['gfs-cluster']|length <= 1
 
 - name: Mount glusterfs to retrieve disk size
   mount: