Orchestration metadata and states
diff --git a/glusterfs/meta/salt.yml b/glusterfs/meta/salt.yml
new file mode 100644
index 0000000..7054db7
--- /dev/null
+++ b/glusterfs/meta/salt.yml
@@ -0,0 +1,6 @@
+orchestrate:
+  server:
+    priority: 110
+  client:
+    priority: 120
+
diff --git a/glusterfs/orchestrate/client.sls b/glusterfs/orchestrate/client.sls
new file mode 100644
index 0000000..50a1d9d
--- /dev/null
+++ b/glusterfs/orchestrate/client.sls
@@ -0,0 +1,8 @@
+glusterfs.client:
+  salt.state:
+    - tgt: 'glusterfs:client'
+    - tgt_type: pillar
+    - sls: glusterfs.client
+    - require:
+      - salt: glusterfs.server.setup
+
diff --git a/glusterfs/orchestrate/init.sls b/glusterfs/orchestrate/init.sls
deleted file mode 100644
index 2909c58..0000000
--- a/glusterfs/orchestrate/init.sls
+++ /dev/null
@@ -1,25 +0,0 @@
-glusterfs_server_service:
-  salt.state:
-    - tgt: 'roles:glusterfs.server'
-    - tgt_type: grain
-    - sls: glusterfs.server.service
-
-glusterfs_server_setup:
-  salt.state:
-    - tgt: 'roles:glusterfs.server'
-    - tgt_type: grain
-    {%- if grains['saltversion'] < "2016.3.0" %}
-    - batch: 1
-    {%- endif %}
-    - sls: glusterfs.server.setup
-    - require:
-      - salt: glusterfs_server_service
-
-glusterfs_client:
-  salt.state:
-    - tgt: 'roles:glusterfs.client'
-    - tgt_type: grain
-    - sls: glusterfs.client
-    - require:
-      - salt: glusterfs_server_setup
-
diff --git a/glusterfs/orchestrate/server.sls b/glusterfs/orchestrate/server.sls
new file mode 100644
index 0000000..8591d0f
--- /dev/null
+++ b/glusterfs/orchestrate/server.sls
@@ -0,0 +1,18 @@
+glusterfs.server.service:
+  salt.state:
+    - tgt: 'glusterfs:server'
+    - tgt_type: pillar
+    - queue: True
+    - sls: glusterfs.server.service
+    - batch: 1
+
+glusterfs.server.setup:
+  salt.state:
+    - tgt: 'glusterfs:server'
+    - tgt_type: pillar
+    - queue: True
+    - sls: glusterfs.server.setup
+    - batch: 1
+    - require:
+      - salt: glusterfs.server.service
+