mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
This commit is contained in:
commit
7ce2c2eaf0
@ -18,3 +18,5 @@
|
||||
--;
|
||||
-- Schema cleanup after 4.11.0.0 to 4.11.1.0 upgrade
|
||||
--;
|
||||
|
||||
DELETE FROM `cloud`.`configuration` WHERE `name`='vmware.ports.per.dvportgroup';
|
||||
|
||||
@ -136,6 +136,8 @@ public class VmwareManagerImpl extends ManagerBase implements VmwareManager, Vmw
|
||||
private static final Logger s_logger = Logger.getLogger(VmwareManagerImpl.class);
|
||||
|
||||
private static final long SECONDS_PER_MINUTE = 60;
|
||||
private static final int DEFAULT_PORTS_PER_DV_PORT_GROUP_VSPHERE4_x = 256;
|
||||
private static final int DEFAULT_PORTS_PER_DV_PORT_GROUP = 8;
|
||||
|
||||
private int _timeout;
|
||||
|
||||
@ -194,7 +196,7 @@ public class VmwareManagerImpl extends ManagerBase implements VmwareManager, Vmw
|
||||
private StorageLayer _storage;
|
||||
private final String _privateNetworkVSwitchName = "vSwitch0";
|
||||
|
||||
private int _portsPerDvPortGroup = 256;
|
||||
private int _portsPerDvPortGroup = DEFAULT_PORTS_PER_DV_PORT_GROUP;
|
||||
private boolean _fullCloneFlag;
|
||||
private boolean _instanceNameFlag;
|
||||
private String _serviceConsoleName;
|
||||
@ -279,8 +281,6 @@ public class VmwareManagerImpl extends ManagerBase implements VmwareManager, Vmw
|
||||
_instanceNameFlag = Boolean.parseBoolean(value);
|
||||
}
|
||||
|
||||
_portsPerDvPortGroup = NumbersUtil.parseInt(_configDao.getValue(Config.VmwarePortsPerDVPortGroup.key()), _portsPerDvPortGroup);
|
||||
|
||||
_serviceConsoleName = _configDao.getValue(Config.VmwareServiceConsole.key());
|
||||
if (_serviceConsoleName == null) {
|
||||
_serviceConsoleName = "Service Console";
|
||||
@ -394,8 +394,16 @@ public class VmwareManagerImpl extends ManagerBase implements VmwareManager, Vmw
|
||||
HypervisorHostHelper.prepareNetwork(vSwitchName, "cloud.private", hostMo, vlanId, null, null, 180000, false, BroadcastDomainType.Vlan, null, null);
|
||||
}
|
||||
else {
|
||||
int portsPerDvPortGroup = _portsPerDvPortGroup;
|
||||
AboutInfo about = hostMo.getHostAboutInfo();
|
||||
if (about != null) {
|
||||
String version = about.getApiVersion();
|
||||
if (version != null && (version.equals("4.0") || version.equals("4.1")) && _portsPerDvPortGroup < DEFAULT_PORTS_PER_DV_PORT_GROUP_VSPHERE4_x) {
|
||||
portsPerDvPortGroup = DEFAULT_PORTS_PER_DV_PORT_GROUP_VSPHERE4_x;
|
||||
}
|
||||
}
|
||||
HypervisorHostHelper.prepareNetwork(vSwitchName, "cloud.private", hostMo, vlanId, null, null, null, 180000,
|
||||
vsType, _portsPerDvPortGroup, null, false, BroadcastDomainType.Vlan, null, null);
|
||||
vsType, portsPerDvPortGroup, null, false, BroadcastDomainType.Vlan, null, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -1139,14 +1139,6 @@ public enum Config {
|
||||
"false",
|
||||
"Enable/Disable Nexus/Vmware dvSwitch in VMware environment",
|
||||
null),
|
||||
VmwarePortsPerDVPortGroup(
|
||||
"Network",
|
||||
ManagementServer.class,
|
||||
Integer.class,
|
||||
"vmware.ports.per.dvportgroup",
|
||||
"256",
|
||||
"Default number of ports per Vmware dvPortGroup in VMware environment",
|
||||
null),
|
||||
VmwareCreateFullClone(
|
||||
"Advanced",
|
||||
ManagementServer.class,
|
||||
|
||||
@ -755,9 +755,8 @@ public class HypervisorHostHelper {
|
||||
dvsPortSetting = createVmwareDVPortSettingSpec(shapingPolicy, secPolicy, pvlanSpec);
|
||||
}
|
||||
|
||||
newDvPortGroupSpec = createDvPortGroupSpec(networkName, dvsPortSetting, numPorts, autoExpandSupported);
|
||||
if (portGroupPolicy != null)
|
||||
{
|
||||
newDvPortGroupSpec = createDvPortGroupSpec(networkName, dvsPortSetting, autoExpandSupported);
|
||||
if (portGroupPolicy != null) {
|
||||
newDvPortGroupSpec.setPolicy(portGroupPolicy);
|
||||
}
|
||||
|
||||
@ -765,6 +764,7 @@ public class HypervisorHostHelper {
|
||||
s_logger.info("Distributed Virtual Port group " + networkName + " not found.");
|
||||
// TODO(sateesh): Handle Exceptions
|
||||
try {
|
||||
newDvPortGroupSpec.setNumPorts(numPorts);
|
||||
dvSwitchMo.createDVPortGroup(newDvPortGroupSpec);
|
||||
} catch (Exception e) {
|
||||
String msg = "Failed to create distributed virtual port group " + networkName + " on dvSwitch " + physicalNetwork;
|
||||
@ -994,13 +994,12 @@ public class HypervisorHostHelper {
|
||||
return true;
|
||||
}
|
||||
|
||||
public static DVPortgroupConfigSpec createDvPortGroupSpec(String dvPortGroupName, DVPortSetting portSetting, int numPorts, boolean autoExpandSupported) {
|
||||
public static DVPortgroupConfigSpec createDvPortGroupSpec(String dvPortGroupName, DVPortSetting portSetting, boolean autoExpandSupported) {
|
||||
DVPortgroupConfigSpec spec = new DVPortgroupConfigSpec();
|
||||
spec.setName(dvPortGroupName);
|
||||
spec.setDefaultPortConfig(portSetting);
|
||||
spec.setPortNameFormat("vnic<portIndex>");
|
||||
spec.setType("earlyBinding");
|
||||
spec.setNumPorts(numPorts);
|
||||
spec.setAutoExpand(autoExpandSupported);
|
||||
return spec;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user