From bcac3c62a261705cb4408abce2d9a23ce282ea87 Mon Sep 17 00:00:00 2001 From: Paul Rey Date: Wed, 1 Jul 2020 13:52:17 +0200 Subject: [PATCH] Add additional metadata configuration options to external Openstack CCM (kubernetes-sigs#6338) (#6339) * Add additional metadata configuration option to external Openstack CCM (kubernetes-sigs#6338) * Set the variable external_openstack_metadata_search_order undefined by default --- docs/openstack.md | 6 ++++++ inventory/sample/group_vars/all/openstack.yml | 1 + .../openstack/templates/external-openstack-cloud-config.j2 | 5 +++++ 3 files changed, 12 insertions(+) diff --git a/docs/openstack.md b/docs/openstack.md index ee1047ae9..c74ecbec4 100644 --- a/docs/openstack.md +++ b/docs/openstack.md @@ -108,5 +108,11 @@ The new cloud provider is configured to have Octavia by default in Kubespray. - "" ``` +- You can override the default OpenStack metadata configuration (see [#6338](https://github.com/kubernetes-sigs/kubespray/issues/6338) for explanation): + + ```yaml + external_openstack_metadata_search_order: "configDrive,metadataService" + ``` + - Run `source path/to/your/openstack-rc` to read your OpenStack credentials like `OS_AUTH_URL`, `OS_USERNAME`, `OS_PASSWORD`, etc. Those variables are used for accessing OpenStack from the external cloud provider. - Run the `cluster.yml` playbook diff --git a/inventory/sample/group_vars/all/openstack.yml b/inventory/sample/group_vars/all/openstack.yml index ca76bb092..71c392414 100644 --- a/inventory/sample/group_vars/all/openstack.yml +++ b/inventory/sample/group_vars/all/openstack.yml @@ -33,6 +33,7 @@ # - "" # external_openstack_network_public_networks: # - "" +# external_openstack_metadata_search_order: "configDrive,metadataService" ## The tag of the external OpenStack Cloud Controller image # external_openstack_cloud_controller_image_tag: "latest" diff --git a/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config.j2 b/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config.j2 index d807426a0..25a3ab089 100644 --- a/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config.j2 +++ b/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-config.j2 @@ -57,3 +57,8 @@ internal-network-name="{{ network_name }}" {% for network_name in external_openstack_network_public_networks %} public-network-name="{{ network_name }}" {% endfor %} + +[Metadata] +{% if external_openstack_metadata_search_order is defined %} +search-order="{{ external_openstack_metadata_search_order }}" +{% endif %} \ No newline at end of file