Nexus plugins fails to configure the network node connection when the network node is rebooted before launching the VM
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
networking-cisco |
New
|
Undecided
|
Unassigned |
Bug Description
In the ml2 .ini file, I have the network node entry defined separately:
[ml2_mech_
bxb-ds-
bxb-ds-
bxb-ds-
ssh_port=22
username=admin
password=cisco123
I have one tenant network defined.
Without any VM, the dhcp namespace is not created (expected behavior), and nothing in DB:
[root@bxb-ds-46 ~]# mysql -e "use neutron; select * from cisco_ml2_
[root@bxb-ds-46 ~]# ip netns
qrouter-
[root@bxb-ds-46 ~]# neutron net-list
+------
| id | name | subnets |
+------
| cac46af7-
| 590ae6a2-
+------
[root@bxb-ds-46 ~]# neutron subnet-list
+------
| id | name | cidr | allocation_pools |
+------
| 9c1d3bd2-
| ebc5027f-
+------
Now I reboot the network node (which is also the controller node).
Upon boots up, the dhcp namespace is created while the DB is still empty:
[root@bxb-ds-46 ~]# reboot
Connection to 10.86.7.46 closed by remote host.
Connection to 10.86.7.46 closed.
DANNCHOI-M-G07T:~ dannychoi$ ssh root@10.86.7.46
root@10.86.7.46's password:
Last login: Thu Jun 4 10:05:24 2015 from bxb-ads-
[root@bxb-ds-46 ~]# ip netns
qrouter-
qdhcp-cac46af7-
[root@bxb-ds-46 ~]# mysql -e "use neutron; select * from cisco_ml2_
[root@bxb-ds-46 ~]#
Issue is that if I launch a VM now, it does not configure the network node connection at the Nexus switch (port-cahnnel:1):
[root@bxb-ds-46 ~]# nova list
+------
| ID | Name | Status | Task State | Power State | Networks |
+------
| c5cc9ebe-
+------
[root@bxb-ds-46 ~]# mysql -e "use neutron; select * from cisco_ml2_
+------
| binding_id | port_id | vlan_id | switch_ip | instance_id | vni | is_provider_vlan |
+------
| 1 | port-channel:2 | 462 | 10.86.7.59 | c5cc9ebe-
| 2 | port-channel:2 | 462 | 10.86.1.128 | c5cc9ebe-
+------
Symptom:
If the network node is rebooted,
the following would be affected:
1) creation of new VMs on tenant networks that existed prior to network
node reboot would not get their VLAN config on the switch
- Since the dhcp namespaces for these networks are already created
after the reboot.
the following would be unaffected:
1) any existing VMs
- since the tenant network's VLAN has already been configured on the switch
2) any new VMs created on tenant networks already having VMs
- since the tenant network's VLAN has already been configured on the switch
3) any new tenant networks and their VMs created after the network node is back
Cause:
Upon boots up, the dhcp namespace is created while the DB is still empty
- VM triggered namespace creation is path where Nexus plugin configures the
VLAN