Skip to content

Commit aef3df7

Browse files
server: pass network label of physical network when plug nic for private gateway on hypervisor (#11846)
1 parent 3ba5c2b commit aef3df7

File tree

3 files changed

+9
-3
lines changed

3 files changed

+9
-3
lines changed

engine/schema/src/main/java/com/cloud/network/dao/PhysicalNetworkTrafficTypeDaoImpl.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,9 @@ public String getNetworkTag(long physicalNetworkId, TrafficType trafficType, Hyp
137137
}
138138

139139
sc.setParameters("physicalNetworkId", physicalNetworkId);
140-
sc.setParameters("trafficType", trafficType);
140+
if (trafficType != null) {
141+
sc.setParameters("trafficType", trafficType);
142+
}
141143
List<String> tag = customSearch(sc, null);
142144

143145
return tag.size() == 0 ? null : tag.get(0);

plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/BridgeVifDriver.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ public LibvirtVMDef.InterfaceDef plug(NicTO nic, String guestOsType, String nicA
232232
String brName = createVnetBr(vNetId, trafficLabel, protocol);
233233
intf.defBridgeNet(brName, null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter), networkRateKBps);
234234
} else {
235-
String brName = createVnetBr(vNetId, _bridges.get("private"), protocol);
235+
String brName = createVnetBr(vNetId, _bridges.get("guest"), protocol);
236236
intf.defBridgeNet(brName, null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter), networkRateKBps);
237237
}
238238
} else {

server/src/main/java/com/cloud/network/NetworkModelImpl.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1442,11 +1442,11 @@ public String getNetworkTag(HypervisorType hType, Network network) {
14421442
return null;
14431443
}
14441444

1445+
NetworkOffering offering = _entityMgr.findById(NetworkOffering.class, network.getNetworkOfferingId());
14451446
Long physicalNetworkId = null;
14461447
if (effectiveTrafficType != TrafficType.Guest) {
14471448
physicalNetworkId = getNonGuestNetworkPhysicalNetworkId(network, effectiveTrafficType);
14481449
} else {
1449-
NetworkOffering offering = _entityMgr.findById(NetworkOffering.class, network.getNetworkOfferingId());
14501450
physicalNetworkId = network.getPhysicalNetworkId();
14511451
if (physicalNetworkId == null) {
14521452
physicalNetworkId = findPhysicalNetworkId(network.getDataCenterId(), offering.getTags(), offering.getTrafficType());
@@ -1459,6 +1459,10 @@ public String getNetworkTag(HypervisorType hType, Network network) {
14591459
return null;
14601460
}
14611461

1462+
if (offering != null && TrafficType.Guest.equals(offering.getTrafficType()) && offering.isSystemOnly()) {
1463+
// For private gateway, do not check the Guest traffic type
1464+
return _pNTrafficTypeDao.getNetworkTag(physicalNetworkId, null, hType);
1465+
}
14621466
return _pNTrafficTypeDao.getNetworkTag(physicalNetworkId, effectiveTrafficType, hType);
14631467
}
14641468

0 commit comments

Comments
 (0)