OpenStack Havanna installation Questions

asked 2013-11-25 04:19:53 -0600

arindamchoudhury gravatar image


I am currently using OpenStack Grizzly with nova-network. I want to upgrade to OpenStack Havana. But I have some doubts:

I have only one network interface in all my system. Is it possible to configure Neutron?

I also want to combine controller and neutron controller in one system. Is it Possible?

Any help will be highly appreciated.

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2013-11-25 04:53:44 -0600

updated 2013-11-25 08:00:38 -0600

There are confiquration options I've used to setup neutron (openvswitch & vlans) with only one NIC required

1) Install packages openstack-neutron-openvswitch openvswitch bridge-utils openstack-neutron etc.

2) Edit /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini

[DATABASE] sql_connection mysql://neutron:#{node[:creds][:mysql_password]}@#{node[:ip][:neutron]}/neutron
[SECURITYGROUP] firewall_driver neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
[OVS] tenant_network_type vlan
[OVS] network_vlan_ranges default:2000:3999
[OVS] integration_bridge br-int
[OVS] bridge_mappings default:br-ex

3) Edit /etc/neutron/neutron.conf

[DEFAULT] auth_strategy keystone
[DEFAULT] rpc_backend neutron.openstack.common.rpc.impl_qpid
[DEFAULT] qpid_hostname #{node[:ip][:qpid]}
[DEFAULT] allow_overlapping_ips True
[DEFAULT] core_plugin neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2
[agent] root_helper 'sudo neutron-rootwrap /etc/neutron/rootwrap.conf'
[keystone_authtoken] auth_host #{node[:ip][:keystone]}
[keystone_authtoken] admin_tenant_name admin
[keystone_authtoken] admin_user admin
[keystone_authtoken] admin_password #{node[:creds][:admin_password]}

4) create ovs bridges a) br-ex with port eth0 b) br-int without any ports

5) edit /etc/neutron/metadata_agent.ini

[DEFAULT] auth_strategy keystone
[DEFAULT] auth_url http://#{node[:ip][:keystone]}:35357/v2.0
[DEFAULT] admin_tenant_name admin
[DEFAULT] admin_user admin
[DEFAULT] admin_password #{node[:creds][:admin_password]}
[DEFAULT] metadata_proxy_shared_secret #{node[:creds][:neutron_secret]}
[DEFAULT] nova_metadata_ip #{node[:ip][:nova]}

6) edit etc/neutron/dhcp_agent.ini

[DEFAULT] enable_isolated_metadata True
[DEFAULT] use_namespaces True
[DEFAULT] interface_driver neutron.agent.linux.interface.OVSInterfaceDriver
[DEFAULT] dnsmasq_dns_server
[DEFAULT] ovs_use_veth True

7) edit /etc/neutron/l3_agent.ini

[DEFAULT] interface_driver neutron.agent.linux.interface.OVSInterfaceDriver
[DEFAULT] external_network_bridge br-ex
[DEFAULT] use_namespaces True
[DEFAULT] ovs_use_veth True

8) a few edits in nova.conf are also required

[DEFAULT] network_api_class
[DEFAULT] neutron_auth_strategy keystone
[DEFAULT] neutron_url http://#{node[:ip][:neutron]}:9696/
[DEFAULT] neutron_admin_tenant_name admin
[DEFAULT] neutron_admin_username admin
[DEFAULT] neutron_admin_password #{node[:creds][:admin_password]}
[DEFAULT] neutron_admin_auth_url http://#{node[:ip][:neutron]}:35357/v2.0
[DEFAULT] security_group_api neutron
[DEFAULT] firewall_driver nova.virt.firewall.NoopFirewallDriver
[DEFAULT] libvirt_vif_driver nova.virt.libvirt.vif.LibvirtGenericVIFDriver
[DEFAULT] service_neutron_metadata_proxy True
[DEFAULT] neutron_metadata_proxy_shared_secret #{node[:creds][:neutron_secret]}

9) restart all neutron and nova services

Try to execute neutron agent-list

| 57279ce9-f3f6-4dc3-a217-316d51a0541b | L3 agent           | | :-)   | True           
| a0ab36fb-dc83-449d-a4ab-a299ed6450d1 | DHCP agent         | | :-)   | True           
| a2882aae-0fb9-4ac5-948f-6672fdbe7532 | Open vSwitch agent | | :-)   | True

If all looks ok, you may use the following script to create floating pool

#! /bin/bash
# create floating ip pool for quantum


export EDITOR=vi

source /root/.bashrc
ADMIN=$(keystone tenant-list | awk '/admin/{print $2}')
exist=$(neutron net-list | grep -o "floating-pool")

if [ -n "$exist" ] ; then
echo "Already exists, doing nothing"
EXT_NET=$(neutron net-create --tenant-id $ADMIN floating-pool --router:external=True | awk '/ id /{print $4}')

EXT_SUBNET=$(neutron subnet-create --tenant-id $ADMIN --allocation-pool start=$POOL_BEGIN,end=$POOL_END --gateway $GATEWAY floating-pool $NETWORK --enable_dhcp=False | awk '/ id /{print $4}')


Now you can create net,subnet with any CIDR , create router , set as its gateway floating-pool, and add ass port created net.

Good Luck! :)

edit flag offensive delete link more

Get to know Ask OpenStack

Resources for moderators

Question Tools



Asked: 2013-11-25 04:19:53 -0600

Seen: 338 times

Last updated: Nov 25 '13