mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Merge remote-tracking branch 'origin/4.14'
This commit is contained in:
commit
749e302e0e
@ -423,6 +423,7 @@ public class NicProfile implements InternalIdentity, Serializable {
|
|||||||
.append(iPv4Address)
|
.append(iPv4Address)
|
||||||
.append("-")
|
.append("-")
|
||||||
.append(broadcastUri)
|
.append(broadcastUri)
|
||||||
|
.append("]")
|
||||||
.toString();
|
.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2445,6 +2445,9 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService, C
|
|||||||
// log assign usage events for new offering
|
// log assign usage events for new offering
|
||||||
List<NicVO> nics = _nicDao.listByNetworkId(networkId);
|
List<NicVO> nics = _nicDao.listByNetworkId(networkId);
|
||||||
for (NicVO nic : nics) {
|
for (NicVO nic : nics) {
|
||||||
|
if (nic.getReservationStrategy() == Nic.ReservationStrategy.PlaceHolder) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
long vmId = nic.getInstanceId();
|
long vmId = nic.getInstanceId();
|
||||||
VMInstanceVO vm = _vmDao.findById(vmId);
|
VMInstanceVO vm = _vmDao.findById(vmId);
|
||||||
if (vm == null) {
|
if (vm == null) {
|
||||||
|
|||||||
@ -30,6 +30,8 @@ import com.cloud.exception.InsufficientVirtualNetworkCapacityException;
|
|||||||
import com.cloud.network.IpAddressManager;
|
import com.cloud.network.IpAddressManager;
|
||||||
import com.cloud.network.Network;
|
import com.cloud.network.Network;
|
||||||
import com.cloud.network.Network.GuestType;
|
import com.cloud.network.Network.GuestType;
|
||||||
|
import com.cloud.network.Network.Provider;
|
||||||
|
import com.cloud.network.Network.Service;
|
||||||
import com.cloud.network.Network.State;
|
import com.cloud.network.Network.State;
|
||||||
import com.cloud.network.Networks.BroadcastDomainType;
|
import com.cloud.network.Networks.BroadcastDomainType;
|
||||||
import com.cloud.network.PhysicalNetwork;
|
import com.cloud.network.PhysicalNetwork;
|
||||||
@ -51,10 +53,12 @@ import com.cloud.utils.db.DB;
|
|||||||
import com.cloud.utils.exception.CloudRuntimeException;
|
import com.cloud.utils.exception.CloudRuntimeException;
|
||||||
import com.cloud.utils.net.Ip;
|
import com.cloud.utils.net.Ip;
|
||||||
import com.cloud.utils.net.NetUtils;
|
import com.cloud.utils.net.NetUtils;
|
||||||
|
import com.cloud.vm.Nic;
|
||||||
import com.cloud.vm.Nic.ReservationStrategy;
|
import com.cloud.vm.Nic.ReservationStrategy;
|
||||||
import com.cloud.vm.NicProfile;
|
import com.cloud.vm.NicProfile;
|
||||||
import com.cloud.vm.NicVO;
|
import com.cloud.vm.NicVO;
|
||||||
import com.cloud.vm.ReservationContext;
|
import com.cloud.vm.ReservationContext;
|
||||||
|
import com.cloud.vm.VirtualMachine;
|
||||||
import com.cloud.vm.VirtualMachineProfile;
|
import com.cloud.vm.VirtualMachineProfile;
|
||||||
import org.apache.cloudstack.context.CallContext;
|
import org.apache.cloudstack.context.CallContext;
|
||||||
import org.apache.cloudstack.engine.orchestration.service.NetworkOrchestrationService;
|
import org.apache.cloudstack.engine.orchestration.service.NetworkOrchestrationService;
|
||||||
@ -261,6 +265,17 @@ public class ExternalGuestNetworkGuru extends GuestNetworkGuru {
|
|||||||
profile.setIPv4Netmask(null);
|
profile.setIPv4Netmask(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (config.getVpcId() == null && vm.getType() == VirtualMachine.Type.DomainRouter) {
|
||||||
|
boolean isPublicNetwork = _networkModel.isProviderSupportServiceInNetwork(config.getId(), Service.SourceNat, Provider.VirtualRouter);
|
||||||
|
if (!isPublicNetwork) {
|
||||||
|
Nic placeholderNic = _networkModel.getPlaceholderNicForRouter(config, null);
|
||||||
|
if (placeholderNic == null) {
|
||||||
|
s_logger.debug("Saving placeholder nic with ip4 address " + profile.getIPv4Address() +
|
||||||
|
" and ipv6 address " + profile.getIPv6Address() + " for the network " + config);
|
||||||
|
_networkMgr.savePlaceholderNic(config, profile.getIPv4Address(), profile.getIPv6Address(), VirtualMachine.Type.DomainRouter);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
return profile;
|
return profile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -75,6 +75,7 @@ import com.cloud.utils.db.TransactionCallbackNoReturn;
|
|||||||
import com.cloud.utils.db.TransactionStatus;
|
import com.cloud.utils.db.TransactionStatus;
|
||||||
import com.cloud.utils.exception.CloudRuntimeException;
|
import com.cloud.utils.exception.CloudRuntimeException;
|
||||||
import com.cloud.utils.net.NetUtils;
|
import com.cloud.utils.net.NetUtils;
|
||||||
|
import com.cloud.vm.Nic;
|
||||||
import com.cloud.vm.Nic.ReservationStrategy;
|
import com.cloud.vm.Nic.ReservationStrategy;
|
||||||
import com.cloud.vm.NicProfile;
|
import com.cloud.vm.NicProfile;
|
||||||
import com.cloud.vm.ReservationContext;
|
import com.cloud.vm.ReservationContext;
|
||||||
@ -372,16 +373,26 @@ public abstract class GuestNetworkGuru extends AdapterBase implements NetworkGur
|
|||||||
|
|
||||||
if (isGateway) {
|
if (isGateway) {
|
||||||
guestIp = network.getGateway();
|
guestIp = network.getGateway();
|
||||||
} else if (vm.getVirtualMachine().getType() == VirtualMachine.Type.DomainRouter) {
|
} else {
|
||||||
|
if (network.getGuestType() != GuestType.L2 && vm.getType() == VirtualMachine.Type.DomainRouter) {
|
||||||
|
Nic placeholderNic = _networkModel.getPlaceholderNicForRouter(network, null);
|
||||||
|
if (placeholderNic != null) {
|
||||||
|
s_logger.debug("Nic got an ip address " + placeholderNic.getIPv4Address() + " stored in placeholder nic for the network " + network);
|
||||||
|
guestIp = placeholderNic.getIPv4Address();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (guestIp == null) {
|
||||||
|
if (vm.getVirtualMachine().getType() == VirtualMachine.Type.DomainRouter) {
|
||||||
guestIp = _ipAddrMgr.acquireGuestIpAddressByPlacement(network, nic.getRequestedIPv4());
|
guestIp = _ipAddrMgr.acquireGuestIpAddressByPlacement(network, nic.getRequestedIPv4());
|
||||||
} else {
|
} else {
|
||||||
guestIp = _ipAddrMgr.acquireGuestIpAddress(network, nic.getRequestedIPv4());
|
guestIp = _ipAddrMgr.acquireGuestIpAddress(network, nic.getRequestedIPv4());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if (!isGateway && guestIp == null && network.getGuestType() != GuestType.L2 && !_networkModel.listNetworkOfferingServices(network.getNetworkOfferingId()).isEmpty()) {
|
if (guestIp == null && network.getGuestType() != GuestType.L2 && !_networkModel.listNetworkOfferingServices(network.getNetworkOfferingId()).isEmpty()) {
|
||||||
throw new InsufficientVirtualNetworkCapacityException("Unable to acquire Guest IP" + " address for network " + network, DataCenter.class,
|
throw new InsufficientVirtualNetworkCapacityException("Unable to acquire Guest IP" + " address for network " + network, DataCenter.class,
|
||||||
dc.getId());
|
dc.getId());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
nic.setIPv4Address(guestIp);
|
nic.setIPv4Address(guestIp);
|
||||||
if (network.getCidr() != null) {
|
if (network.getCidr() != null) {
|
||||||
|
|||||||
@ -710,8 +710,8 @@ public class NetworkHelperImpl implements NetworkHelper {
|
|||||||
if (guestNetwork != null) {
|
if (guestNetwork != null) {
|
||||||
s_logger.debug("Adding nic for Virtual Router in Guest network " + guestNetwork);
|
s_logger.debug("Adding nic for Virtual Router in Guest network " + guestNetwork);
|
||||||
String defaultNetworkStartIp = null, defaultNetworkStartIpv6 = null;
|
String defaultNetworkStartIp = null, defaultNetworkStartIpv6 = null;
|
||||||
if (!routerDeploymentDefinition.isPublicNetwork()) {
|
|
||||||
final Nic placeholder = _networkModel.getPlaceholderNicForRouter(guestNetwork, routerDeploymentDefinition.getPodId());
|
final Nic placeholder = _networkModel.getPlaceholderNicForRouter(guestNetwork, routerDeploymentDefinition.getPodId());
|
||||||
|
if (!routerDeploymentDefinition.isPublicNetwork()) {
|
||||||
if (guestNetwork.getCidr() != null) {
|
if (guestNetwork.getCidr() != null) {
|
||||||
if (placeholder != null && placeholder.getIPv4Address() != null) {
|
if (placeholder != null && placeholder.getIPv4Address() != null) {
|
||||||
s_logger.debug("Requesting ipv4 address " + placeholder.getIPv4Address() + " stored in placeholder nic for the network "
|
s_logger.debug("Requesting ipv4 address " + placeholder.getIPv4Address() + " stored in placeholder nic for the network "
|
||||||
@ -744,6 +744,9 @@ public class NetworkHelperImpl implements NetworkHelper {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else if (placeholder != null) {
|
||||||
|
// Remove placeholder nic if router has public network
|
||||||
|
_nicDao.remove(placeholder.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
final NicProfile gatewayNic = new NicProfile(defaultNetworkStartIp, defaultNetworkStartIpv6);
|
final NicProfile gatewayNic = new NicProfile(defaultNetworkStartIp, defaultNetworkStartIpv6);
|
||||||
|
|||||||
@ -2666,7 +2666,11 @@
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (selectedServiceofferingObj.iscustomized == true) {
|
if (selectedServiceofferingObj.iscustomized == true) {
|
||||||
|
if (selectedServiceofferingObj.cpuspeed) {
|
||||||
|
$form.find('.form-item[rel=cpuSpeed]').hide();
|
||||||
|
} else {
|
||||||
$form.find('.form-item[rel=cpuSpeed]').css('display', 'inline-block');
|
$form.find('.form-item[rel=cpuSpeed]').css('display', 'inline-block');
|
||||||
|
}
|
||||||
$form.find('.form-item[rel=cpuNumber]').css('display', 'inline-block');
|
$form.find('.form-item[rel=cpuNumber]').css('display', 'inline-block');
|
||||||
$form.find('.form-item[rel=memory]').css('display', 'inline-block');
|
$form.find('.form-item[rel=memory]').css('display', 'inline-block');
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user