diff --git a/roles/kubernetes/preinstall/defaults/main.yml b/roles/kubernetes/preinstall/defaults/main.yml
index c775f748dbb591396ab09cc4e22eb81c754ebb8d..dd5cbf810414fd72fe27ed6cfa9e64ef2996fd82 100644
--- a/roles/kubernetes/preinstall/defaults/main.yml
+++ b/roles/kubernetes/preinstall/defaults/main.yml
@@ -28,6 +28,7 @@ openstack_username: "{{ lookup('env','OS_USERNAME')  }}"
 openstack_password: "{{ lookup('env','OS_PASSWORD')  }}"
 openstack_region: "{{ lookup('env','OS_REGION_NAME')  }}"
 openstack_tenant_id: "{{ lookup('env','OS_TENANT_ID')|default(lookup('env','OS_PROJECT_ID'),true)  }}"
+openstack_domain_name: "{{ lookup('env','OS_USER_DOMAIN_NAME')  }}"
 
 # For the vsphere integration, kubelet will need credentials to access
 # vsphere apis
diff --git a/roles/kubernetes/preinstall/templates/openstack-cloud-config.j2 b/roles/kubernetes/preinstall/templates/openstack-cloud-config.j2
index 77668f295167a60b7f5889a62b456f2f46ce6422..8f13fc6b94723b0f2a186c32aa6a42ef28798fc2 100644
--- a/roles/kubernetes/preinstall/templates/openstack-cloud-config.j2
+++ b/roles/kubernetes/preinstall/templates/openstack-cloud-config.j2
@@ -3,4 +3,7 @@ auth-url={{ openstack_auth_url }}
 username={{ openstack_username }}
 password={{ openstack_password }}
 region={{ openstack_region }}
-tenant-id={{ openstack_tenant_id }}
\ No newline at end of file
+tenant-id={{ openstack_tenant_id }}
+{% if openstack_domain_name is defined and openstack_domain_name != "" %}
+domain-name={{ openstack_domain_name }}
+{% endif %}