Openstack Metadata Problem fix for Flat Network
This is a guide for who have problem with Openstack metadata service when using flat networking. The problem is that, if you are using the flat network setup in Openstack, your instances cannot communicate with Metadata service on Controller node. Instances try to reach 169.254.169.254 for metadata by default. This IP should be routed to Metadata service’s IP. In flat networking there is no route, so instances cannot reach metadata service. Before do anything, check if this guide fits you: This bug fixed on Icehouse, if you are using Icehouse, there should be no problem. This is tested with Havana version, Neutron Flat Networking. I guess it should work on Grizzly and below. Source: http://lists.openstack.org/pipermail/openstack/2013-October/001831.html There are two solutions: You need to use metadata via dhcp namespace. The logic is not to use default gateway option in subnet, and enter 0.0.0.0/0 route to subnet manually. You need to re-create your subnet here! You need to create a router in network node in Openstack, create port on your instance network for this router and choose an IP different than your real router. This router will be used just for metadata. Install neutron-metadata-agent to network node where you install l3 agent. Configure your nova.conf in compute and controller nodes
1 2 3 |
metadata_host=192.168.0.1 service_neutron_metadata_proxy = True neutron_metadata_proxy_shared_secret = x1x1x1x1x |
Configure your metadata_agent.ini in network node:
1 2 3 4 5 6 7 8 |
auth_url = http://192.168.0.1:5000/v2.0 auth_region =RegionOne admin_tenant_name = service admin_user = neutron admin_password = xxxxxxx nova_metadata_ip =192.168.0.1 nova_metadata_port =8775 metadata_proxy_shared_secret = x1x1x1x1x |
Source: https://ask.openstack.org/en/question/27505/metadata-problem-in-neutron-flat-network/ Source: http://lists.openstack.org/pipermail/openstack/2013-October/001831.html