diff --git a/README.md b/README.md
index 8b3856da087989199312dc7b8b2184d16de06517..edd01e508f07906d3f35e21a87049466730ace96 100644
--- a/README.md
+++ b/README.md
@@ -36,9 +36,6 @@ These defaults are good for tests purposes.
 
 Edit the inventory according to the number of servers
 ```
-[downloader]
-localhost ansible_connection=local ansible_python_interpreter=python2
-
 [kube-master]
 10.115.99.31
 
@@ -77,9 +74,6 @@ In node-mesh mode the nodes peers with all the nodes in order to exchange routes
 
 ```
 
-[downloader]
-localhost ansible_connection=local ansible_python_interpreter=python2
-
 [kube-master]
 node1 ansible_ssh_host=10.99.0.26
 node2 ansible_ssh_host=10.99.0.27
diff --git a/cluster.yml b/cluster.yml
index d68bf8ab3d6f71fecb23bc75dc4f6fddb7dfb499..faf0fea1816b00406484a87bba465902f26cec3d 100644
--- a/cluster.yml
+++ b/cluster.yml
@@ -1,10 +1,7 @@
 ---
-- hosts: downloader
-  roles:
-    - { role: download, tags: download }
-
 - hosts: k8s-cluster
   roles:
+    - { role: download, tags: download }
     - { role: kubernetes/preinstall, tags: preinstall }
     - { role: docker, tags: docker }
     - { role: kubernetes/node, tags: node }
diff --git a/inventory/inventory.example b/inventory/inventory.example
index ab0d1fca1d5e9e65b2710fc102b7819955aaef06..90bc3d5ac394a436a5e3f7b5b9aac650981c28f3 100644
--- a/inventory/inventory.example
+++ b/inventory/inventory.example
@@ -1,6 +1,3 @@
-[downloader]
-localhost ansible_connection=local ansible_python_interpreter=python2
-
 [kube-master]
 node1 ansible_ssh_host=10.99.0.26
 node2 ansible_ssh_host=10.99.0.27
diff --git a/inventory/local-tests.cfg b/inventory/local-tests.cfg
index 06fd3977b3f9d0e4c355c6ce0488a035d061882d..425ad23ef38bf628069632ef2bcbdde19462fbd7 100644
--- a/inventory/local-tests.cfg
+++ b/inventory/local-tests.cfg
@@ -1,8 +1,5 @@
 node1 ansible_connection=local local_release_dir={{ansible_env.HOME}}/releases
 
-[downloader]
-node1
-
 [kube-master]
 node1
 
diff --git a/roles/apps/k8s-kubedns b/roles/apps/k8s-kubedns
index d6df09a89721d98e2969a8abf29b4eb5e787fca6..b5015aed8ff5eed9c325911205cfbb23ad0e57be 160000
--- a/roles/apps/k8s-kubedns
+++ b/roles/apps/k8s-kubedns
@@ -1 +1 @@
-Subproject commit d6df09a89721d98e2969a8abf29b4eb5e787fca6
+Subproject commit b5015aed8ff5eed9c325911205cfbb23ad0e57be
diff --git a/roles/etcd/tasks/configure.yml b/roles/etcd/tasks/configure.yml
index 6f11a743b443f15266ee5471c87cac28d0577c5d..ab3a5052d39e68e7b78a7c875a8f4548ea6eb919 100644
--- a/roles/etcd/tasks/configure.yml
+++ b/roles/etcd/tasks/configure.yml
@@ -1,5 +1,5 @@
 ---
-- name: Copy etcd.service systemd file
+- name: Configure |  Copy etcd.service systemd file
   template:
     src: etcd.service.j2
     dest: /lib/systemd/system/etcd.service
@@ -8,7 +8,7 @@
   notify:
     - restart systemd-etcd
 
-- name: Write calico-node initd script
+- name: Configure |  Write calico-node initd script
   template:
     src: deb-etcd.initd.j2
     dest: /etc/init.d/etcd
@@ -17,11 +17,11 @@
   when: init_system == "sysvinit" and ansible_os_family == "Debian"
   notify: restart etcd
 
-- name: Create etcd environment vars file
+- name: Configure |  Create etcd environment vars file
   template:
     src: etcd.j2
     dest: /etc/etcd.env
   notify: restart etcd
 
-- name: Ensure etcd is running
+- name: Configure |  Ensure etcd is running
   service: name=etcd state=started enabled=yes
diff --git a/roles/etcd/tasks/install.yml b/roles/etcd/tasks/install.yml
index f594ae9bc6350d8c8550c3d9e36b616ffa3f28e0..c19b26c9c8584a9248092efdf8daffd4d4193e64 100644
--- a/roles/etcd/tasks/install.yml
+++ b/roles/etcd/tasks/install.yml
@@ -1,17 +1,16 @@
 ---
-- name: Create etcd user
+- name: INSTALL | Create etcd user
   user: name=etcd shell=/bin/nologin home=/var/lib/etcd
 
-- name: Install etcd binaries
+- name: INSTALL | Copy  etcd binaries
   synchronize:
      src: "{{ etcd_bin_dir }}/{{ item }}"
      dest: "{{ bin_dir }}"
      times: yes
      archive: no
      set_remote_user: false
-  delegate_to: "{{ groups['downloader'][0] }}"
+  delegate_to: "{{ inventory_hostname }}"
   with_items:
     - etcdctl
     - etcd
   notify: restart etcd
-
diff --git a/roles/kubernetes/master/tasks/main.yml b/roles/kubernetes/master/tasks/main.yml
index 9e50200f61ea654bcafb2f027dd6cd6f5c73ae66..7e941e42234d7d546bbbd9b06fa109634d8c6afe 100644
--- a/roles/kubernetes/master/tasks/main.yml
+++ b/roles/kubernetes/master/tasks/main.yml
@@ -12,7 +12,7 @@
      checksum: yes
      times: yes
      set_remote_user: false
-  delegate_to: "{{ groups['downloader'][0] }}"
+  delegate_to: "{{  inventory_hostname  }}"
 
 - name: Perms kubectl binary
   file: path={{ bin_dir }}/kubectl owner=kube mode=0755 state=file
diff --git a/roles/kubernetes/node/tasks/install.yml b/roles/kubernetes/node/tasks/install.yml
index 9fa4398f564c6fa7d079680c0324cf7488de3bb4..847db5390fc5b429075b4999281959d8120e5c6c 100644
--- a/roles/kubernetes/node/tasks/install.yml
+++ b/roles/kubernetes/node/tasks/install.yml
@@ -24,7 +24,7 @@
      times: yes
      archive: no
      set_remote_user: false
-  delegate_to: "{{ groups['downloader'][0] }}"
+  delegate_to: "{{  inventory_hostname  }}"
   notify:
     - restart kubelet
 
@@ -42,7 +42,7 @@
     times: yes
     archive: no
     set_remote_user: false
-  delegate_to: "{{ groups['downloader'][0] }}"
+  delegate_to: "{{  inventory_hostname  }}"
   when: kube_network_plugin == "calico"
   notify: restart kubelet
 
diff --git a/roles/network_plugin/tasks/calico.yml b/roles/network_plugin/tasks/calico.yml
index 79064239943e1ccc8c550edf5f5ed165a4e366bc..c75a4b3a11bde661a20c9de263545ca5f600964a 100644
--- a/roles/network_plugin/tasks/calico.yml
+++ b/roles/network_plugin/tasks/calico.yml
@@ -6,7 +6,7 @@
     archive: no
     times: yes
     set_remote_user: false
-  delegate_to: "{{ groups['downloader'][0] }}"
+  delegate_to: "{{  inventory_hostname  }}"
   notify: restart calico-node
 
 - name: Calico | install calicoctl