Skip to content

Commit 61a07bd

Browse files
committed
pass mtu for vpc tier network
1 parent b23f675 commit 61a07bd

5 files changed

Lines changed: 30 additions & 7 deletions

File tree

core/src/main/java/com/cloud/agent/api/SetupGuestNetworkCommand.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ public class SetupGuestNetworkCommand extends NetworkElementCommand {
3636
String routerIpv6Gateway = null;
3737
String routerIpv6Cidr = null;
3838

39+
Integer mtu = null;
40+
3941
public NicTO getNic() {
4042
return nic;
4143
}
@@ -114,4 +116,12 @@ public void setDefaultIp6Dns1(String defaultIp6Dns1) {
114116
public void setDefaultIp6Dns2(String defaultIp6Dns2) {
115117
this.defaultIp6Dns2 = defaultIp6Dns2;
116118
}
119+
120+
public Integer getMtu() {
121+
return mtu;
122+
}
123+
124+
public void setMtu(Integer mtu) {
125+
this.mtu = mtu;
126+
}
117127
}

core/src/main/java/com/cloud/agent/resource/virtualnetwork/facade/SetGuestNetworkConfigItem.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@
3131
import com.cloud.agent.resource.virtualnetwork.model.ConfigBase;
3232
import com.cloud.agent.resource.virtualnetwork.model.GuestNetwork;
3333
import com.cloud.utils.net.NetUtils;
34+
import org.apache.log4j.Logger;
3435

3536
public class SetGuestNetworkConfigItem extends AbstractConfigItemFacade {
36-
37+
private static final Logger LOG = Logger.getLogger(SetGuestNetworkConfigItem.class);
3738
@Override
3839
public List<ConfigItem> generateConfig(final NetworkElementCommand cmd) {
3940
final SetupGuestNetworkCommand command = (SetupGuestNetworkCommand) cmd;
40-
4141
final NicTO nic = command.getNic();
4242
final String routerGIP = command.getAccessDetail(NetworkElementCommand.ROUTER_GUEST_IP);
4343
final String gateway = command.getAccessDetail(NetworkElementCommand.GUEST_NETWORK_GATEWAY);

core/src/main/java/com/cloud/agent/resource/virtualnetwork/model/GuestNetwork.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,4 +198,8 @@ public void setRouterIp6Cidr(String routerIp6Cidr) {
198198
public void setMtu(Integer mtu) {
199199
this.mtu = mtu;
200200
}
201+
202+
public Integer getMtu() {
203+
return mtu;
204+
}
201205
}

server/src/main/java/com/cloud/network/router/CommandSetupHelper.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -823,6 +823,9 @@ public int compare(final PublicIpAddress o1, final PublicIpAddress o2) {
823823
final IpAddressTO ip = new IpAddressTO(ipAddr.getAccountId(), ipAddr.getAddress().addr(), add, firstIP, ipAddr.isSourceNat(), BroadcastDomainType.fromString(ipAddr.getVlanTag()).toString(), ipAddr.getGateway(),
824824
ipAddr.getNetmask(), macAddress, networkRate, ipAddr.isOneToOneNat());
825825
setIpAddressNetworkParams(ip, network, router);
826+
if (network.getPublicIfaceMtu() != null) {
827+
ip.setMtu(network.getPublicIfaceMtu());
828+
}
826829
ipsToSend[i++] = ip;
827830
if (ipAddr.isSourceNat()) {
828831
sourceNatIpAdd = new Pair<IpAddressTO, Long>(ip, ipAddr.getNetworkId());
@@ -1086,7 +1089,9 @@ public void createVpcAssociatePrivateIPCommands(final VirtualRouter router, fina
10861089
final Network network = _networkModel.getNetwork(ipAddr.getNetworkId());
10871090
final IpAddressTO ip = new IpAddressTO(Account.ACCOUNT_ID_SYSTEM, ipAddr.getIpAddress(), add, false, ipAddr.getSourceNat(), ipAddr.getBroadcastUri(),
10881091
ipAddr.getGateway(), ipAddr.getNetmask(), ipAddr.getMacAddress(), null, false);
1089-
1092+
if (network.getPrivateIfaceMtu() != null) {
1093+
ip.setMtu(network.getPublicIfaceMtu());
1094+
}
10901095
setIpAddressNetworkParams(ip, network, router);
10911096
ipsToSend[i++] = ip;
10921097

@@ -1145,6 +1150,10 @@ public SetupGuestNetworkCommand createSetupGuestNetworkCommand(final DomainRoute
11451150
updateSetupGuestNetworkCommandIpv6(setupCmd, network, publicNic, defaultIp6Dns1, defaultIp6Dns2);
11461151
}
11471152

1153+
if (nic.getMtu() != null) {
1154+
setupCmd.setMtu(nic.getMtu());
1155+
}
1156+
11481157
final String brd = NetUtils.long2Ip(NetUtils.ip2Long(guestNic.getIPv4Address()) | ~NetUtils.ip2Long(guestNic.getIPv4Netmask()));
11491158
setupCmd.setAccessDetail(NetworkElementCommand.ROUTER_IP, _routerControlHelper.getRouterControlIp(router.getId()));
11501159
setupCmd.setAccessDetail(NetworkElementCommand.ROUTER_GUEST_IP, _routerControlHelper.getRouterIpInNetwork(network.getId(), router.getId()));

systemvm/debian/opt/cloud/bin/setup/common.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -94,12 +94,12 @@ setup_interface() {
9494
echo " netmask $mask" >> /etc/network/interfaces
9595
fi
9696

97-
if [ ! -z "$PUBLICMTU" ] && [ $intf == "eth0" ]; then
98-
echo " mtu $PUBLICMTU" >> /etc/network/interfaces
97+
if [ ! -z "$PRIVATEMTU" ] && [ $intf == "eth0" ]; then
98+
echo " mtu $PRIVATEMTU" >> /etc/network/interfaces
9999
fi
100100

101-
if [ ! -z "$PRIVATEMTU" ] && [ $intf == "eth2" ]; then
102-
echo " mtu $PRIVATEMTU" >> /etc/network/interfaces
101+
if [ ! -z "$PUBLICMTU" ] && [ $intf == "eth2" ]; then
102+
echo " mtu $PUBLICMTU" >> /etc/network/interfaces
103103
fi
104104
fi
105105

0 commit comments

Comments
 (0)