diff --git a/CHANGELOG.md b/CHANGELOG.md index f669b08e..b649dac4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,6 +28,7 @@ This file is used to list changes made in each version of cookbook-openstack-com * Add dependency on upstream ceph cookbook for better key management * Use common specific_endpoint routines (bug 1412919) * Update default filters to match base stable openstack juno +* Make use of new metadata endpoint in common ## 9.3.1 * Move auth configuration from api-paste.ini to nova.conf diff --git a/attributes/default.rb b/attributes/default.rb index 6cc88d19..8ebb2df8 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -521,10 +521,6 @@ default['openstack']['compute']['misc_paste'] = nil # of enabled API services. default['openstack']['compute']['enabled_apis'] = 'ec2,osapi_compute,metadata' -# Metadata host and port -default['openstack']['compute']['metadata_listen'] = '0.0.0.0' -default['openstack']['compute']['metadata_listen_port'] = 8775 - # VMware driver default['openstack']['compute']['vmware']['secret_name'] = 'openstack_vmware_secret_name' # URL for connection to VMware ESX/VC host. (string value) diff --git a/metadata.rb b/metadata.rb index 3450b763..7c897584 100644 --- a/metadata.rb +++ b/metadata.rb @@ -27,7 +27,7 @@ recipe 'openstack-compute::vncproxy', 'Installs and configures the vncproxy serv end depends 'ceph', '~> 0.8.0' -depends 'openstack-common', '>= 10.2.0' +depends 'openstack-common', '>= 10.4.0' depends 'openstack-identity', '>= 10.0.0' depends 'openstack-image', '>= 10.0.0' depends 'openstack-network', '>= 10.0.0' diff --git a/recipes/nova-common.rb b/recipes/nova-common.rb index 63dff87a..0272c3d9 100644 --- a/recipes/nova-common.rb +++ b/recipes/nova-common.rb @@ -102,6 +102,7 @@ vnc_bind = endpoint 'compute-vnc-bind' || {} vnc_proxy_bind = endpoint 'compute-vnc-proxy-bind' || {} compute_api_bind = endpoint 'compute-api-bind' || {} compute_api_endpoint = internal_endpoint 'compute-api' || {} +compute_metadata_api_bind = endpoint 'compute-metadata-api-bind' || {} ec2_api_bind = endpoint 'compute-ec2-api-bind' || {} ec2_public_endpoint = public_endpoint 'compute-ec2-api' || {} network_endpoint = internal_endpoint 'network-api' || {} @@ -161,6 +162,8 @@ template '/etc/nova/nova.conf' do neutron_metadata_proxy_shared_secret: neutron_metadata_proxy_shared_secret, compute_api_bind_ip: compute_api_bind.host, compute_api_bind_port: compute_api_bind.port, + compute_metadata_api_bind_ip: compute_metadata_api_bind.host, + compute_metadata_api_bind_port: compute_metadata_api_bind.port, ec2_api_bind_ip: ec2_api_bind.host, ec2_api_bind_port: ec2_api_bind.port, vmware_host_pass: vmware_host_pass, diff --git a/spec/nova-common_spec.rb b/spec/nova-common_spec.rb index fa3b435c..4f2d369b 100644 --- a/spec/nova-common_spec.rb +++ b/spec/nova-common_spec.rb @@ -189,7 +189,7 @@ describe 'openstack-compute::nova-common' do end it 'has default metadata ip and port options set' do - [/^metadata_listen=0.0.0.0$/, + [/^metadata_listen=127.0.0.1$/, /^metadata_listen_port=8775$/].each do |line| expect(chef_run).to render_file(file.name).with_content(line) end diff --git a/templates/default/nova.conf.erb b/templates/default/nova.conf.erb index 02eaf0f1..979d7b1b 100644 --- a/templates/default/nova.conf.erb +++ b/templates/default/nova.conf.erb @@ -167,12 +167,10 @@ osapi_compute_listen=<%= @compute_api_bind_ip %> osapi_compute_listen_port=<%= @compute_api_bind_port %> <% end -%> -<% if node["openstack"]["compute"]["enabled_apis"].include?("metadata") %> # The IP address on which the metadata will listen. (string value) -metadata_listen=<%= node['openstack']['compute']['metadata_listen'] %> +metadata_listen=<%= @compute_metadata_api_bind_ip %> # The port on which the metadata will listen. (integer value) -metadata_listen_port=<%= node['openstack']['compute']['metadata_listen_port'] %> -<% end %> +metadata_listen_port=<%= @compute_metadata_api_bind_port %> ##### VNCPROXY ##### novncproxy_base_url=<%= @novncproxy_base_url %>