Skip to content

Commit 1b34959

Browse files
committed
CLOUDSTACK-6281: OVS distributed routing: exclude non implemented
networks while sending VPC topology updates as GRE key is not associated with the network unless implemented.
1 parent 0b91935 commit 1b34959

3 files changed

Lines changed: 7 additions & 13 deletions

File tree

plugins/network-elements/ovs/src/com/cloud/network/ovs/OvsTunnelManagerImpl.java

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -557,6 +557,9 @@ protected void checkAndCreateVpcTunnelNetworks(Host host, long vpcId) {
557557
boolean bridgeNotSetup = true;
558558

559559
for (Network vpcNetwork: vpcNetworks) {
560+
if (vpcNetwork.getState() != Network.State.Implemented &&
561+
vpcNetwork.getState() != Network.State.Implementing && vpcNetwork.getState() != Network.State.Setup)
562+
continue;
560563
int key = getGreKey(vpcNetwork);
561564
List<Long> toHostIds = new ArrayList<Long>();
562565
List<Long> fromHostIds = new ArrayList<Long>();
@@ -670,19 +673,10 @@ public boolean postStateTransitionEvent(VirtualMachine.State oldState, VirtualMa
670673
}
671674

672675
if (VirtualMachine.State.isVmStarted(oldState, event, newState)) {
673-
if (s_logger.isTraceEnabled()) {
674-
s_logger.trace("Security Group Mgr: handling start of vm id" + vm.getId());
675-
}
676676
handleVmStateChange((VMInstanceVO)vm);
677677
} else if (VirtualMachine.State.isVmStopped(oldState, event, newState)) {
678-
if (s_logger.isTraceEnabled()) {
679-
s_logger.trace("Security Group Mgr: handling stop of vm id" + vm.getId());
680-
}
681678
handleVmStateChange((VMInstanceVO)vm);
682679
} else if (VirtualMachine.State.isVmMigrated(oldState, event, newState)) {
683-
if (s_logger.isTraceEnabled()) {
684-
s_logger.trace("Security Group Mgr: handling migration of vm id" + vm.getId());
685-
}
686680
handleVmStateChange((VMInstanceVO)vm);
687681
}
688682

scripts/vm/hypervisor/xenserver/ovs-vif-flows.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ def main(command, vif_raw):
102102
ovs_vpc_distributed_vr_network = pluginlib.do_cmd([pluginlib.XE_PATH,"network-param-get",
103103
"uuid=%s" % xs_nw_uuid,
104104
"param-name=other-config",
105-
"param-key=is-ovs_vpc_distributed_vr_network", "--minimal"])
105+
"param-key=is-ovs-vpc-distributed-vr-network", "--minimal"])
106106
except:
107107
pass
108108

@@ -157,7 +157,7 @@ def main(command, vif_raw):
157157

158158
if port.startswith('t'):
159159
# check tunnel port is in same network as that of plugged vif
160-
if vif_network_id != pluginlib.get_network_id_for_tunnel_port(port):
160+
if vif_network_id != pluginlib.get_network_id_for_tunnel_port(port)[1:-1]:
161161
continue
162162
vnet_tunnelif_ofports.append(if_ofport)
163163
vnet_all_ofports.append(if_ofport)

scripts/vm/hypervisor/xenserver/ovstunnel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ def setup_ovs_bridge_for_distributed_routing(session, args):
160160
lib.do_cmd([lib.XE_PATH, "network-param-set", "uuid=%s" % xs_nw_uuid,
161161
"other-config:is-ovs-tun-network=False"])
162162
lib.do_cmd([lib.XE_PATH, "network-param-set", "uuid=%s" % xs_nw_uuid,
163-
"other-config:is-ovs_vpc_distributed_vr_network=True"])
163+
"other-config:is-ovs-vpc-distributed-vr-network=True"])
164164
conf_hosts = lib.do_cmd([lib.XE_PATH, "network-param-get",
165165
"uuid=%s" % xs_nw_uuid,
166166
"param-name=other-config",
@@ -302,7 +302,7 @@ def create_tunnel(session, args):
302302
ovs_vpc_distributed_vr_network = lib.do_cmd([lib.XE_PATH,"network-param-get",
303303
"uuid=%s" % xs_nw_uuid,
304304
"param-name=other-config",
305-
"param-key=is-ovs_vpc_distributed_vr_network", "--minimal"])
305+
"param-key=is-ovs-vpc-distributed-vr-network", "--minimal"])
306306
if ovs_tunnel_network == 'True':
307307
# add flow entryies for dropping broadcast coming in from gre tunnel
308308
lib.add_flow(bridge, priority=1000, in_port=tun_ofport,

0 commit comments

Comments
 (0)