diff --git a/roles/kubernetes/master/tasks/main.yml b/roles/kubernetes/master/tasks/main.yml
index 7deff686127746048248969dbbc1acac0d78a81c..2cfb6b0ffa4ba01de3aea8bf75bee22217dcf729 100644
--- a/roles/kubernetes/master/tasks/main.yml
+++ b/roles/kubernetes/master/tasks/main.yml
@@ -72,9 +72,8 @@
 - name: Restart apiserver
   command: "/bin/true"
   notify: restart kube-apiserver
-  when: is_gentoken_calico|default(false) or kube_apiserver_copy.stdout_lines
+  when: is_gentoken_calico|default(false)
 
-# reload-systemd
 - meta: flush_handlers
 
 - name: Enable apiserver
@@ -127,9 +126,3 @@
     name: kubelet
     state: restarted
   changed_when: false
-
-- name: Enable apiserver
-  service:
-    name: kube-apiserver
-    enabled: yes
-    state: started
diff --git a/roles/kubernetes/master/templates/kube-apiserver.service.j2 b/roles/kubernetes/master/templates/kube-apiserver.service.j2
index 9e8bffe7123850a25aa90a5745b9cc01a3417c4d..dbfd58f1c836fe00663230b9689d4cf941431653 100644
--- a/roles/kubernetes/master/templates/kube-apiserver.service.j2
+++ b/roles/kubernetes/master/templates/kube-apiserver.service.j2
@@ -1,25 +1,25 @@
 [Unit]
 Description=Kubernetes API Server
 Documentation=https://github.com/GoogleCloudPlatform/kubernetes
-Requires=kube-apiserver.service
-After=kube-apiserver.service
+Requires=etcd.service
+After=etcd.service
 
 [Service]
 EnvironmentFile=/etc/kubernetes/kube-apiserver.env
 User=kube
 ExecStart={{ bin_dir }}/kube-apiserver \
-	    $KUBE_LOGTOSTDERR \
-	    $KUBE_LOG_LEVEL \
-	    $KUBE_ETCD_SERVERS \
-	    $KUBE_API_ADDRESS \
-	    $KUBE_API_PORT \
-	    $KUBELET_PORT \
-	    $KUBE_ALLOW_PRIV \
-	    $KUBE_SERVICE_ADDRESSES \
-	    $KUBE_ADMISSION_CONTROL \
-	    $KUBE_RUNTIME_CONFIG \
+        $KUBE_LOGTOSTDERR \
+        $KUBE_LOG_LEVEL \
+        $KUBE_ETCD_SERVERS \
+        $KUBE_API_ADDRESS \
+        $KUBE_API_PORT \
+        $KUBELET_PORT \
+        $KUBE_ALLOW_PRIV \
+        $KUBE_SERVICE_ADDRESSES \
+        $KUBE_ADMISSION_CONTROL \
+        $KUBE_RUNTIME_CONFIG \
         $KUBE_TLS_CONFIG \
-	    $KUBE_API_ARGS
+        $KUBE_API_ARGS
 Restart=on-failure
 Type=notify
 LimitNOFILE=65536
diff --git a/roles/kubernetes/node/handlers/main.yml b/roles/kubernetes/node/handlers/main.yml
index e0294b3d2924f94b08cacc5c1da8e03d91390759..81d7ca2c7baf5e49f789d264f8a8423d57f79d3a 100644
--- a/roles/kubernetes/node/handlers/main.yml
+++ b/roles/kubernetes/node/handlers/main.yml
@@ -7,7 +7,7 @@
   command: /bin/true
   notify:
     - reload systemd
-    - restart kubelet
+    - reload kubelet
 
 - name: set is_gentoken_calico fact
   set_fact:
diff --git a/roles/network_plugin/handlers/main.yml b/roles/network_plugin/handlers/main.yml
index 4a6e9e36065d98fff18e386f863ebcb4eadb441f..14b526b675e00936fa39a2a0005c6826aec13cb6 100644
--- a/roles/network_plugin/handlers/main.yml
+++ b/roles/network_plugin/handlers/main.yml
@@ -1,16 +1,16 @@
 ---
-- name: restart systemd-calico-node
+- name: restart calico-node
   command: /bin/true
   notify:
     - reload systemd
-    - restart calico-node
+    - reload calico-node
 
-- name: restart systemd-docker
+- name: restart docker
   command: /bin/true
   notify:
     - reload systemd
-    - restart docker
-    - restart kubelet
+    - reload docker
+    - reload kubelet
 
 - name: delete default docker bridge
   command: ip link delete docker0
@@ -19,18 +19,19 @@
 
 - name : reload systemd
   shell: systemctl daemon-reload
+  when: init_system == "systemd"
 
-- name: restart calico-node
+- name: reload calico-node
   service:
     name: calico-node
     state: restarted
 
-- name: restart docker
+- name: reload docker
   service:
     name: docker
     state: restarted
 
-- name: restart kubelet
+- name: reload kubelet
   service:
     name: kubelet
     state: restarted
diff --git a/roles/network_plugin/tasks/calico.yml b/roles/network_plugin/tasks/calico.yml
index 9bd3f0829a68eb133ec1e0422484c0a03b299d65..f9a77fa47f3b903aa2127f3685f524e3b4c57bd3 100644
--- a/roles/network_plugin/tasks/calico.yml
+++ b/roles/network_plugin/tasks/calico.yml
@@ -57,7 +57,7 @@
 - name: Calico | Write calico-node systemd init file
   template: src=calico/calico-node.service.j2 dest=/etc/systemd/system/calico-node.service
   when: init_system == "systemd"
-  notify: restart systemd-calico-node
+  notify: restart calico-node
 
 - name: Calico | Write calico-node initd script
   template: src=calico/deb-calico.initd.j2 dest=/etc/init.d/calico-node owner=root mode=755
diff --git a/roles/network_plugin/tasks/main.yml b/roles/network_plugin/tasks/main.yml
index 6aa1c2e48e8ee9b25187abe7d4dbb65dac35a138..db184c352348ec3f44568d79ba00dd2635d6ecea 100644
--- a/roles/network_plugin/tasks/main.yml
+++ b/roles/network_plugin/tasks/main.yml
@@ -21,7 +21,7 @@
   template:
     src: systemd-docker.service
     dest: /lib/systemd/system/docker.service
-  notify: restart systemd-docker
+  notify: restart docker
   when: init_system == "systemd"
 
 - meta: flush_handlers