Skip to content

Commit 8c4dbd4

Browse files
committed
importvm: fix IP address allocation on Shared networks
1 parent 4d95f08 commit 8c4dbd4

File tree

2 files changed

+4
-11
lines changed

2 files changed

+4
-11
lines changed

engine/orchestration/src/main/java/org/apache/cloudstack/engine/orchestration/NetworkOrchestrator.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4783,12 +4783,12 @@ protected String getSelectedIpForNicImport(Network network, DataCenter dataCente
47834783
if (network.getGuestType() == GuestType.L2) {
47844784
return null;
47854785
}
4786-
return dataCenter.getNetworkType() == NetworkType.Basic ?
4787-
getSelectedIpForNicImportOnBasicZone(ipAddresses.getIp4Address(), network, dataCenter):
4786+
return GuestType.Shared.equals(network.getGuestType()) ?
4787+
getSelectedIpForNicImportOnSharedNetwork(ipAddresses.getIp4Address(), network, dataCenter):
47884788
_ipAddrMgr.acquireGuestIpAddress(network, ipAddresses.getIp4Address());
47894789
}
47904790

4791-
protected String getSelectedIpForNicImportOnBasicZone(String requestedIp, Network network, DataCenter dataCenter) {
4791+
protected String getSelectedIpForNicImportOnSharedNetwork(String requestedIp, Network network, DataCenter dataCenter) {
47924792
IPAddressVO ipAddressVO = StringUtils.isBlank(requestedIp) ?
47934793
_ipAddressDao.findBySourceNetworkIdAndDatacenterIdAndState(network.getId(), dataCenter.getId(), IpAddress.State.Free):
47944794
_ipAddressDao.findByIp(requestedIp);

server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@
7171
import com.cloud.hypervisor.Hypervisor;
7272
import com.cloud.hypervisor.HypervisorGuru;
7373
import com.cloud.hypervisor.HypervisorGuruManager;
74-
import com.cloud.network.IpAddressManager;
7574
import com.cloud.network.Network;
7675
import com.cloud.network.NetworkModel;
7776
import com.cloud.network.Networks;
@@ -271,8 +270,6 @@ public class UnmanagedVMsManagerImpl implements UnmanagedVMsManager {
271270
@Inject
272271
private PhysicalNetworkDao physicalNetworkDao;
273272
@Inject
274-
private IpAddressManager ipAddressManager;
275-
@Inject
276273
private StoragePoolHostDao storagePoolHostDao;
277274
@Inject
278275
private HypervisorGuruManager hypervisorGuruManager;
@@ -2613,12 +2610,8 @@ private UserVm importKvmVirtualMachineFromDisk(final ImportSource importSource,
26132610
}
26142611

26152612
String macAddress = networkModel.getNextAvailableMacAddressInNetwork(networkId);
2616-
String ipAddress = null;
2617-
if (network.getGuestType() != Network.GuestType.L2) {
2618-
ipAddress = ipAddressManager.acquireGuestIpAddress(network, null);
2619-
}
26202613

2621-
Network.IpAddresses requestedIpPair = new Network.IpAddresses(ipAddress, null, macAddress);
2614+
Network.IpAddresses requestedIpPair = new Network.IpAddresses(null, null, macAddress);
26222615

26232616
NicProfile nicProfile = new NicProfile(requestedIpPair.getIp4Address(), requestedIpPair.getIp6Address(), requestedIpPair.getMacAddress());
26242617
nicProfile.setOrderIndex(0);

0 commit comments

Comments
 (0)