Sunday, September 15, 2013

Quantum basic RDO setup (grizzly) to have original LAN as external on CentOS 6.4

Attempting to follow http://allthingsopen.com/2013/08/23/openstack-packstack-installation-with-external-connectivity/I've got an error after starting :-
# packstack --allinone --quantum-l3-ext-bridge=eth0
It reports that ovs port eth0 already exists. Approach bellow in general follows RDO's  discussion
at http://openstack.redhat.com/forum/discussion/196/quantum-basic-setup/p1
Follow as normal http://openstack.redhat.com/Neutron-Quickstart
When done create under /etc/sysconfig/network-scripts


[root@Server64 network-scripts]# cat ifcfg-br-ex
DEVICE="br-ex"
BOOTPROTO="none"
IPADDR="192.168.1.42"
NETMASK="255.255.255.0"
DNS1="83.221.202.254"
BROADCAST="192.168.1.255"
GATEWAY="192.168.1.1"
NM_CONTROLLED="no"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="yes"
IPV6INIT=no
ONBOOT="yes"
TYPE="OVSBridge"
DEVICETYPE="ovs"

[root@Server64 network-scripts]# cat ifcfg-eth0
DEVICE="eth0"
ONBOOT="yes"
# HWADDR="1C:C1:DE:76:19:70"
HWADDR="00:22:15:63:E4:E2"
TYPE="OVSPort"
DEVICETYPE="ovs"
OVS_BRIDGE=br-ex
NM_CONTROLLED=no
IPV6INIT=no

Run script as root :-

for i in /etc/quantum/*.ini
do
    sed -i "s/^[# ]*ovs_use_veth.*$/ovs_use_veth = True/g" $i
done

sed -i \
    -e "s/^[# ]*enable_isolated_metadata.*$/enable_isolated_metadata = True/g" \
    -e "s/^[# ]*enable_metadata_network.*$/enable_metadata_network = True/g"  \
    /etc/quantum/dhcp_agent.ini


# chkconfig network on

REBOOT
Disable autoconnect eth0.
REBOOT

Remove old puplic (external network) and create new one as required.
Recreate router in dashboard environment and add internal interface to
private network

#   source keystonerc_admin
#   nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
#   nova secgroup-add-rule default tcp 22 22 0.0.0.0/0
#   quantum net-create public --router:external=True
#   quantum subnet-create public 192.168.1.0/24 --name vlan --enable_dhcp False --allocation_pool start=192.168.1.57,end=192.168.1.62 \
    --  gateway 192.168.1.1
#   quantum floatingip-create public

#   quantum net-list
[root@Server64 ~(keystone_admin)]# quantum router-list
+--------------------------------------+---------+--------------------------------------------------------+
| id                                   | name    | external_gateway_info                   |
+--------------------------------------+---------+--------------------------------------------------------+
| c56c1cc1-a11b-454c-9ccb-17dc7e62f475 | router1 |
+--------------------------------------+---------+--------------------------------------------------------+

[root@Server64 ~(keystone_admin)]# quantum net-list
+--------------------------------------+---------+-----------------------------------------------------+
| id                                   | name    | subnets                                       |
+--------------------------------------+---------+-----------------------------------------------------+
| 6823b670-231c-4b31-9325-12dc098087b2 | private | 203320cc-cd60-486d-b092-eec99740c4cc 10.0.0.0/24    |
| c9615975-beb4-461a-9aad-b740a3350bf5 | public  | 40568df0-9bae-4578-8ae9-56d0ae7d4a2e 192.168.1.0/24 |
+--------------------------------------+---------+-----------------------------------------------------+

#   quantum router-gateway-set c56c1cc1-a11b-454c-9ccb-17dc7e62f475 c9615975-beb4-461a-9aad-b740a3350bf5

[root@Server64 ~(keystone_admin)]# quantum subnet-list
+--------------------------------------+----------------+----------------+--------------------------------------------------+
| id                                   | name           | cidr           | allocation_pools                                 |
+--------------------------------------+----------------+----------------+--------------------------------------------------+
| 203320cc-cd60-486d-b092-eec99740c4cc | private_subnet | 10.0.0.0/24    | {"start": "10.0.0.2", "end": "10.0.0.254"}       |
| 40568df0-9bae-4578-8ae9-56d0ae7d4a2e | vlan           | 192.168.1.0/24 | {"start": "192.168.1.57", "end": "192.168.1.62"} |
+--------------------------------------+----------------+----------------+--------------------------------------------------+

[root@Server64 ~(keystone_admin)]#  quantum subnet-update 203320cc-
cd60-486d-b092-eec99740c4cc  --dns_nameservers list=true 83.221.202.254
Updated subnet: 203320cc-cd60-486d-b092-eec99740c4cc

[root@RServer64 ~(keystone_admin)]#  quantum subnet-update 203320cc-cd60-486d-b092-eec99740c4cc  --gateway_ip 10.0.0.1
Updated subnet: 203320cc-cd60-486d-b092-eec99740c4cc


 In other way it may look like :-

# EXTERNAL_NETWORK_ID=`quantum net-list | grep public | awk '{ print $2 }'`
# quantum router-gateway-set router1 $EXTERNAL_NETWORK_ID
# INT_SUBNET_ID=`quantum subnet-list | grep private_subnet | awk '{ print $2}'`
# quantum subnet-update $INT_SUBNET_ID --dns_nameservers list=true 83.221.202.254
# quantum subnet-update $INT_SUBNET_ID --gateway_ip 10.0.0.1














References
1.http://openstack.redhat.com/forum/discussion/196/quantum-basic-setup