diff --git a/kubernetes/control/configmap.sls b/kubernetes/control/configmap.sls
index 07b8189..8dcd161 100644
--- a/kubernetes/control/configmap.sls
+++ b/kubernetes/control/configmap.sls
@@ -2,7 +2,7 @@
 include:
   - kubernetes.control
 
-{%- for configmap_name, configmap in control.get('configmap', {}).iteritems() %}
+{%- for configmap_name, configmap in control.get('configmap', {}).items() %}
 {%- if configmap.enabled|default(True) %}
 
 {%- if configmap.pillar is defined %}
@@ -14,7 +14,7 @@
       {% macro load_support_file(pillar, grains) %}{% include support_fragment_file %}{% endmacro %}
 
       {%- set service_config_files = load_support_file(configmap.pillar, configmap.get('grains', {}))|load_yaml %}
-      {%- for service_config_name, service_config in service_config_files.config.iteritems() %}
+      {%- for service_config_name, service_config in service_config_files.config.items() %}
 
 /srv/kubernetes/configmap/{{ configmap_name }}/{{ service_config_name }}:
   file.managed:
diff --git a/kubernetes/control/job.sls b/kubernetes/control/job.sls
index b3a0696..4669759 100644
--- a/kubernetes/control/job.sls
+++ b/kubernetes/control/job.sls
@@ -2,7 +2,7 @@
 include:
   - kubernetes.control
 
-{%- for job_name, job in control.job.iteritems() %}
+{%- for job_name, job in control.job.items() %}
 
 /srv/kubernetes/jobs/{{ job_name }}-job.yml:
   file.managed:
diff --git a/kubernetes/control/role.sls b/kubernetes/control/role.sls
index ce7248d..8899eb8 100644
--- a/kubernetes/control/role.sls
+++ b/kubernetes/control/role.sls
@@ -2,7 +2,7 @@
 include:
   - kubernetes.control
 
-{%- for role_name, role in control.role.iteritems() %}
+{%- for role_name, role in control.role.items() %}
   {%- set role_name = role.name|default(role_name) %}
 
   {%- if role.get('namespace') or role.get('kind') == 'Role' %}
@@ -27,7 +27,7 @@
       role: {{ role|yaml }}
     {%- endif %}
 
-    {%- for binding_name, binding in role.get('binding', {}).iteritems() %}
+    {%- for binding_name, binding in role.get('binding', {}).items() %}
       {%- set binding_name = binding.name|default(binding_name) %}
       {%- if binding.get('namespace') or binding.get('kind') == 'RoleBinding' %}
         {%- set binding_kind = 'RoleBinding' %}
diff --git a/kubernetes/control/service.sls b/kubernetes/control/service.sls
index b88dd85..e7e9330 100644
--- a/kubernetes/control/service.sls
+++ b/kubernetes/control/service.sls
@@ -2,7 +2,7 @@
 include:
   - kubernetes.control
 
-{%- for service_name, service in control.service.iteritems() %}
+{%- for service_name, service in control.service.items() %}
   {%- if service.enabled %}
 
 /srv/kubernetes/services/{{ service.cluster }}/{{ service_name }}-svc.yml:
@@ -33,7 +33,7 @@
 
 {%- endfor %}
 
-{%- for node_name, node_grains in salt['mine.get']('*', 'grains.items').iteritems() %}
+{%- for node_name, node_grains in salt['mine.get']('*', 'grains.items').items() %}
 
   {%- if node_grains.get('kubernetes', {}).service is defined %}
     {%- set service = node_grains.get('kubernetes', {}).get('service', {}) %}
diff --git a/kubernetes/files/basic_auth.csv b/kubernetes/files/basic_auth.csv
index 8faa760..508765a 100644
--- a/kubernetes/files/basic_auth.csv
+++ b/kubernetes/files/basic_auth.csv
@@ -1,5 +1,5 @@
 {%- from "kubernetes/map.jinja" import master with context -%}
 {{ master.admin.password }},{{ master.admin.username }},admin
-{%- for name, user in master.auth.basic.get('user', {}).iteritems() %}
+{%- for name, user in master.auth.basic.get('user', {}).items() %}
 {{ user.password }},{{ user.name|default(name) }},{{ user.get('uid', user.get('name', name)) }}{% if user.groups is defined %},"{{ user.groups|join(',') }}"{% endif %}
 {%- endfor %}
diff --git a/kubernetes/files/collectd_calico_bird.conf b/kubernetes/files/collectd_calico_bird.conf
index e15eeaf..7f5b9aa 100644
--- a/kubernetes/files/collectd_calico_bird.conf
+++ b/kubernetes/files/collectd_calico_bird.conf
@@ -3,7 +3,7 @@
 
 <Module "collectd_calico_bird">
   {%- if plugin.endpoints is defined %}
-  {%- for key, val in plugin.endpoints.iteritems() %}
+  {%- for key, val in plugin.endpoints.items() %}
   {{ key }} "{{ val }}"
   {%- endfor %}
   {%- endif %}
diff --git a/kubernetes/files/configmap.yml b/kubernetes/files/configmap.yml
index d2469c0..12d885d 100644
--- a/kubernetes/files/configmap.yml
+++ b/kubernetes/files/configmap.yml
@@ -10,7 +10,7 @@
   {%- if pillar.get(service_name, {}).get('_support', {}).get('config', {}).get('enabled', False) %}
   {%- set support_fragment_file = service_name+'/meta/config.yml' %}
   {%- set service_config_files = load_support_file(support_fragment_file, configmap.pillar, configmap.get('grains', {}))|load_yaml %}
-  {%- for service_config_name, service_config in service_config_files.config.iteritems() %}
+  {%- for service_config_name, service_config in service_config_files.config.items() %}
   {{ service_config_name }}: |
     {{ load_support_file(service_config.source|replace('salt://', ''), configmap.pillar, configmap.get('grains', {}))|indent(4) }}
   {%- endfor %}
diff --git a/kubernetes/files/dockershim/default.master b/kubernetes/files/dockershim/default.master
index e0af9f5..c5f3174 100644
--- a/kubernetes/files/dockershim/default.master
+++ b/kubernetes/files/dockershim/default.master
@@ -23,7 +23,7 @@
 --cloud-config=/etc/kubernetes/cloud-config.conf \
 {%- endif %}
 {%- endif %}
-{%- for key, value in master.get('kubelet', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in master.get('kubelet', {}).get('daemon_opts', {}).items() %}
 --{{ key }}={{ value }} \
 {%- endfor %}
 "
diff --git a/kubernetes/files/dockershim/default.pool b/kubernetes/files/dockershim/default.pool
index 34ed343..85f8230 100644
--- a/kubernetes/files/dockershim/default.pool
+++ b/kubernetes/files/dockershim/default.pool
@@ -35,7 +35,7 @@
 {%- endif %}
 {%- endif %}
 --enable-controller-attach-detach={{ pool.get('enable-controller-attach-detach', 'false') }} \
-{%- for key, value in pool.get('kubelet', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in pool.get('kubelet', {}).get('daemon_opts', {}).items() %}
 --{{ key }}={{ value }} \
 {%- endfor %}
 "
diff --git a/kubernetes/files/job.yml b/kubernetes/files/job.yml
index 95103b9..6d85cfd 100644
--- a/kubernetes/files/job.yml
+++ b/kubernetes/files/job.yml
@@ -15,7 +15,7 @@
       hostPID: True
       {%- endif %}
       containers:
-      {%- for container_name, container in job.container.iteritems() %}
+      {%- for container_name, container in job.container.items() %}
         - name: {{ container_name }}
           image: {% if container.registry is defined %}{{ container.registry }}/{%- endif %}{{ container.image }}{%- if container.tag is defined %}:{{ container.tag }}{%- endif %}
           imagePullPolicy: {{ container.get('image_pull_policy', 'IfNotPresent') }}
@@ -53,7 +53,7 @@
       {%- endfor %}
       {%- if job.volume is defined %}
       volumes:
-      {%- for volume_name, volume in job.volume.iteritems() %}
+      {%- for volume_name, volume in job.volume.items() %}
         - name: {{ volume_name }}
           {%- if volume.type == 'empty_dir' %}
           emptyDir: {}
@@ -69,7 +69,7 @@
           configMap:
             name: {{ volume_name }}
             items:
-              {%- for name, item in volume.item.iteritems() %}
+              {%- for name, item in volume.item.items() %}
               - key: {{ item.key }}
                 path: {{ item.path }}
               {%- endfor %}
diff --git a/kubernetes/files/known_tokens.csv b/kubernetes/files/known_tokens.csv
index 328bedd..5b9d4ec 100644
--- a/kubernetes/files/known_tokens.csv
+++ b/kubernetes/files/known_tokens.csv
@@ -12,6 +12,6 @@
 {{ master.token.monitoring }},system:monitoring,system:monitoring
 {%- endif %}
 {{ master.token.dns }},system:dns,system:dns
-{%- for name, user in master.auth.token.get('user', {}).iteritems() %}
+{%- for name, user in master.auth.token.get('user', {}).items() %}
 {{ user.token }},{{ user.name|default(name) }},{{ user.get('uid', user.get('name', name)) }}{% if user.groups is defined %},"{{ user.groups|join(',') }}"{% endif %}
 {%- endfor %}
diff --git a/kubernetes/files/kube-addons/dns/kubedns-rc.yaml b/kubernetes/files/kube-addons/dns/kubedns-rc.yaml
index 1857aeb..7a415b0 100644
--- a/kubernetes/files/kube-addons/dns/kubedns-rc.yaml
+++ b/kubernetes/files/kube-addons/dns/kubedns-rc.yaml
@@ -111,7 +111,7 @@
           failureThreshold: 5
         args:
 {%- if common.addons.dns.get('dnsmasq', {}) %}
-{%- for option_name, option_value in common.addons.dns.dnsmasq.iteritems() %}
+{%- for option_name, option_value in common.addons.dns.dnsmasq.items() %}
         - --{{ option_name }}{% if option_value %}={{ option_value }}{% endif %}
 {%- endfor %}
 {%- endif %}
diff --git a/kubernetes/files/kubelet/default.master b/kubernetes/files/kubelet/default.master
index 7374f41..b43b65b 100644
--- a/kubernetes/files/kubelet/default.master
+++ b/kubernetes/files/kubelet/default.master
@@ -25,7 +25,7 @@
 --cloud-config=/etc/kubernetes/cloud-config.conf \
 {%- endif %}
 {%- endif %}
-{%- for key, value in master.get('kubelet', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in master.get('kubelet', {}).get('daemon_opts', {}).items() %}
 --{{ key }}={{ value }} \
 {%- endfor %}
 "
diff --git a/kubernetes/files/kubelet/default.pool b/kubernetes/files/kubelet/default.pool
index 28d2431..e8382ac 100644
--- a/kubernetes/files/kubelet/default.pool
+++ b/kubernetes/files/kubelet/default.pool
@@ -47,7 +47,7 @@
 {%- endif %}
 --enable-controller-attach-detach={{ pool.get('enable-controller-attach-detach', 'false') }} \
 {%- endif %}
-{%- for key, value in pool.get('kubelet', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in pool.get('kubelet', {}).get('daemon_opts', {}).items() %}
 --{{ key }}={{ value }} \
 {%- endfor %}
 "
diff --git a/kubernetes/files/manifest/kube-apiserver.manifest b/kubernetes/files/manifest/kube-apiserver.manifest
index 58afb82..a183efc 100644
--- a/kubernetes/files/manifest/kube-apiserver.manifest
+++ b/kubernetes/files/manifest/kube-apiserver.manifest
@@ -52,7 +52,7 @@
 {%- if master.apiserver.node_port_range is defined %}
       --service-node-port-range {{ master.apiserver.node_port_range }}
 {%- endif %}
-{%- for key, value in master.get('apiserver', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in master.get('apiserver', {}).get('daemon_opts', {}).items() %}
       --{{ key }}={{ value }}
 {% endfor %}
       1>>/var/log/kube-apiserver.log 2>&1
diff --git a/kubernetes/files/manifest/kube-controller-manager.manifest b/kubernetes/files/manifest/kube-controller-manager.manifest
index a3ee84b..d9e85ef 100644
--- a/kubernetes/files/manifest/kube-controller-manager.manifest
+++ b/kubernetes/files/manifest/kube-controller-manager.manifest
@@ -22,7 +22,7 @@
       --v={{ master.get('verbosity', 2) }}
       --root-ca-file=/etc/kubernetes/ssl/ca-{{ master.ca }}.crt
       --leader-elect=true
-{%- for key, value in master.get('controller_manager', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in master.get('controller_manager', {}).get('daemon_opts', {}).items() %}
       --{{ key }}={{ value }}
 {%- endfor %}
       1>>/var/log/kube-controller-manager.log 2>&1
diff --git a/kubernetes/files/manifest/kube-proxy.manifest.pool b/kubernetes/files/manifest/kube-proxy.manifest.pool
index 2fb1118..15b943c 100644
--- a/kubernetes/files/manifest/kube-proxy.manifest.pool
+++ b/kubernetes/files/manifest/kube-proxy.manifest.pool
@@ -24,7 +24,7 @@
 {%- if pool.network.engine == 'calico' %}
       --proxy-mode=iptables
 {%- endif %}
-{%- for key, value in pool.get('proxy', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in pool.get('proxy', {}).get('daemon_opts', {}).items() %}
       --{{ key }}={{ value }}
 {%- endfor %}
       1>>/var/log/kube-proxy.log 2>&1
diff --git a/kubernetes/files/manifest/kube-scheduler.manifest b/kubernetes/files/manifest/kube-scheduler.manifest
index 60ef676..fd881cc 100644
--- a/kubernetes/files/manifest/kube-scheduler.manifest
+++ b/kubernetes/files/manifest/kube-scheduler.manifest
@@ -21,7 +21,7 @@
       --kubeconfig /etc/kubernetes/scheduler.kubeconfig
       --v={{ master.get('verbosity', 2) }}
       --leader-elect=true
-{%- for key, value in master.get('scheduler', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in master.get('scheduler', {}).get('daemon_opts', {}).items() %}
       --{{ key }}={{ value }}
 {%- endfor %}
       1>>/var/log/kube-scheduler.log 2>&1
diff --git a/kubernetes/files/rc.yml b/kubernetes/files/rc.yml
index d2cad43..0a31b6c 100644
--- a/kubernetes/files/rc.yml
+++ b/kubernetes/files/rc.yml
@@ -47,9 +47,9 @@
       {%- if service.affinity is defined %}
         scheduler.alpha.kubernetes.io/affinity: >
           {
-          {%- for affinity_name, affinity in service.affinity.iteritems() %}
+          {%- for affinity_name, affinity in service.affinity.items() %}
             "{{ affinity.name }}": {
-              {%- for expression_name, expression in affinity.expression.iteritems() %}
+              {%- for expression_name, expression in affinity.expression.items() %}
               {%- if expression.name ==  'matchExpressions' %}
               "{{ affinity.get('type','required') }}DuringSchedulingIgnoredDuringExecution": {
                 "nodeSelectorTerms": [
@@ -96,7 +96,7 @@
       hostPID: True
       {%- endif %}
       containers:
-      {%- for container_name, container in service.container.iteritems() %}
+      {%- for container_name, container in service.container.items() %}
         - name: {{ container_name }}
           image: {% if container.registry is defined %}{{ container.registry }}/{%- endif %}{{ container.image }}{%- if container.tag is defined %}:{{ container.tag }}{%- endif %}
           imagePullPolicy: {{ container.get('image_pull_policy','IfNotPresent') }}
@@ -176,7 +176,7 @@
       {%- endfor %}
       {%- if service.volume is defined %}
       volumes:
-      {%- for volume_name, volume in service.volume.iteritems() %}
+      {%- for volume_name, volume in service.volume.items() %}
         - name: {{ volume_name }}
           {%- if volume.type == 'emptyDir' %}
           emptyDir: {}
@@ -192,7 +192,7 @@
           configMap:
             name: {{ volume_name }}-{{ volume.get('version', '1') }}
             items:
-              {%- for name, item in volume.item.iteritems() %}
+              {%- for name, item in volume.item.items() %}
               - key: {{ item.key }}
                 path: {{ item.path }}
               {%- endfor %}
diff --git a/kubernetes/files/rolebinding.yml b/kubernetes/files/rolebinding.yml
index 1befc8d..9857900 100644
--- a/kubernetes/files/rolebinding.yml
+++ b/kubernetes/files/rolebinding.yml
@@ -6,7 +6,7 @@
   namespace: {{ binding.namespace }}
   {%- endif %}
 subjects:
-  {%- for subject_name, subject in binding.subject.iteritems() %}
+  {%- for subject_name, subject in binding.subject.items() %}
   - kind: {{ subject.kind }}
     name: {{ subject.name|default(subject_name) }}
     apiGroup: rbac.authorization.k8s.io
diff --git a/kubernetes/master/controller.sls b/kubernetes/master/controller.sls
index 032a198..78a085c 100644
--- a/kubernetes/master/controller.sls
+++ b/kubernetes/master/controller.sls
@@ -145,7 +145,7 @@
         --cloud-config=/etc/kubernetes/cloud-config.conf
 {%- endif %}
 {%- endif %}
-{%- for key, value in master.get('apiserver', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in master.get('apiserver', {}).get('daemon_opts', {}).items() %}
         --{{ key }}={{ value }}
 {%- endfor %}"
 
@@ -188,7 +188,7 @@
         --allocate-node-cidrs=true
         --cluster-cidr={{ master.network.private_ip_range }}
 {%- endif %}
-{%- for key, value in master.get('controller_manager', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in master.get('controller_manager', {}).get('daemon_opts', {}).items() %}
         --{{ key }}={{ value }}
 {% endfor %}"
 
@@ -202,7 +202,7 @@
         --kubeconfig /etc/kubernetes/scheduler.kubeconfig
         --leader-elect=true
         --v={{ master.get('verbosity', 2) }}
-{%- for key, value in master.get('scheduler', {}).get('daemon_opts', {}).iteritems() %}
+{%- for key, value in master.get('scheduler', {}).get('daemon_opts', {}).items() %}
         --{{ key }}={{ value }}
 {% endfor %}"
 
@@ -260,7 +260,7 @@
 {%- endif %}
 
 
-{%- for name,namespace in master.namespace.iteritems() %}
+{%- for name,namespace in master.namespace.items() %}
 
 {%- if namespace.enabled %}
 
@@ -286,7 +286,7 @@
 
 {%- if master.registry.secret is defined %}
 
-{%- for name,registry in master.registry.secret.iteritems() %}
+{%- for name,registry in master.registry.secret.items() %}
 
 {%- if registry.enabled %}
 
diff --git a/kubernetes/master/kube-addons.sls b/kubernetes/master/kube-addons.sls
index 81cb768..dd023d1 100644
--- a/kubernetes/master/kube-addons.sls
+++ b/kubernetes/master/kube-addons.sls
@@ -94,7 +94,7 @@
 
 {%- if common.addons.storageclass is defined %}
 
-{%- for storageclass_name, storageclass in common.addons.get('storageclass', {}).iteritems() %}
+{%- for storageclass_name, storageclass in common.addons.get('storageclass', {}).items() %}
 {%- set storageclass_name = storageclass.get('name', storageclass_name) %}
 
 /etc/kubernetes/addons/storageclass/{{ storageclass_name }}.yaml:
diff --git a/kubernetes/master/setup.sls b/kubernetes/master/setup.sls
index 82af347..86ca5b0 100644
--- a/kubernetes/master/setup.sls
+++ b/kubernetes/master/setup.sls
@@ -55,7 +55,7 @@
 
 {%- if master.label is defined %}
 
-{%- for name,label in master.label.iteritems() %}
+{%- for name,label in master.label.items() %}
 
 {%- if label.enabled %}
 
diff --git a/kubernetes/pool/kube-proxy.sls b/kubernetes/pool/kube-proxy.sls
index b57ae6c..a420c56 100644
--- a/kubernetes/pool/kube-proxy.sls
+++ b/kubernetes/pool/kube-proxy.sls
@@ -37,7 +37,7 @@
     - user: root
     - group: root
     - mode: 644
-    - contents: DAEMON_ARGS=" --logtostderr=true --v={{ pool.get('verbosity', 2) }} --kubeconfig=/etc/kubernetes/proxy.kubeconfig {%- if pool.network.engine == 'calico' %} --proxy-mode=iptables{% endif %}{%- for key, value in pool.get('proxy', {}).get('daemon_opts', {}).iteritems() %} --{{ key }}={{ value }}{%- endfor %}"
+    - contents: DAEMON_ARGS=" --logtostderr=true --v={{ pool.get('verbosity', 2) }} --kubeconfig=/etc/kubernetes/proxy.kubeconfig {%- if pool.network.engine == 'calico' %} --proxy-mode=iptables{% endif %}{%- for key, value in pool.get('proxy', {}).get('daemon_opts', {}).items() %} --{{ key }}={{ value }}{%- endfor %}"
 
 pool_services:
   service.running:
