In the architecture described in this chapter, the Neutron API service runs on the Controller node.
/etc/neutron/neutron.conf
qpid_hostname=/$CONTROLLER_ADMIN_NODE rabbit_host=/$CONTROLLER_ADMIN_NODE host=$CONTROLLER_ADMIN_NODE [keystone_authtoken] auth_uri = http://$CONTROLLER_ADMIN_NODE:5000/v2.0 identity_uri = http://$CONTROLLER_ADMIN_NODE:35357 admin_tenant_name = service admin_user = neutron admin_password = service-password [database] connection = mysql://neutron:service-password@$CONTROLLER_ADMIN_NODE/neutron
/etc/neutron/plugins/evs/evs_plugin.ini
[EVS] evs_controller = ssh://evsuser@$CONTROLLER_ADMIN_NODE
/etc/neutron/dhcp_agent.ini
[DEFAULT] evs_controller = ssh://evsuser@$CONTROLLER_ADMIN_NODE
/etc/neutron/l3_agent.ini
evs_controller = ssh://evsuser@$CONTROLLER_ADMIN_NODE
controller# su - evsuser -c "ssh-keygen -N '' \ -f /var/user/evsuser/.ssh/id_rsa -t rsa" controller# su - neutron -c "ssh-keygen -N '' -f /var/lib/neutron/.ssh/id_rsa -t rsa" controller# ssh-keygen -N '' -f /root/.ssh/id_rsa -t rsa
controller# cat /var/user/evsuser/.ssh/id_rsa.pub \ /var/lib/neutron/.ssh/id_rsa.pub /root/.ssh/id_rsa.pub >> \ /var/user/evsuser/.ssh/authorized_keys
Specify Yes at every prompt for confirmation.
controller# su - evsuser -c "ssh evsuser@$CONTROLLER_ADMIN_NODE true" controller# su - neutron -c "ssh evsuser@$CONTROLLER_ADMIN_NODE true" controller# ssh evsuser@$CONTROLLER_ADMIN_NODE true
To configure a VXLAN-based network, go to Managing Network Virtualization and Network Resources in Oracle Solaris in your Oracle Solaris version's library in Operating Systems Documentation. In that book, refer specifically to the section Use Case: Configuring an Elastic Virtual Switch for a Tenant.
For an example of how to configure flat networks, see https://blogs.oracle.com/openstack/entry/configuring_the_neutron_l3_agent.
controller# evsadm set-prop -p controller=ssh://evsuser@$CONTROLLER_ADMIN_NODE
controller# evsadm set-controlprop -p property=value
As shown in Figure 2, you would typically have multiple network interfaces to serve the different subnets. When you set the uplink-port property, you can split the VLANS across the multiple network ports that service the subnets.
The following example shows how to set EVS properties, including splitting the VLANs. Optionally, use the final command to display all the EVS properties.
controller# evsadm set-controlprop -p l2-type=vlan controller# evsadm set-controlprop -p vlan-range=1,200-300 controller# evsadm set-controlprop -p uplink-port=net0,vlan-range=1 controller# evsadm set-controlprop -p uplink-port=net1,vlan-range=200-250 controller# evsadm set-controlprop -p uplink-port=net1,vlan-range=251-300 controller# evsadm show-controlprop -o all
controller# ipadm set-prop -p forwarding=on ipv4
controller# svcadm enable -rs ipfilter
controller# svcadm enable -rs neutron-server neutron-dhcp-agent