mirror of https://github.com/apache/cloudstack.git
bug 8781: set dhcp/dns/userData providers to be DhcpServer in Basic zone; all other providers have to be null
status 8781: resolved fixed
This commit is contained in:
parent
65eaf27c5c
commit
f395005e0a
|
|
@ -77,13 +77,13 @@ public class DataCenterVO implements DataCenter {
|
|||
NetworkType networkType;
|
||||
|
||||
@Column(name="dns_provider")
|
||||
private String dnsProvider = Provider.VirtualRouter.getName();
|
||||
private String dnsProvider;
|
||||
|
||||
@Column(name="dhcp_provider")
|
||||
private String dhcpProvider = Provider.VirtualRouter.getName();
|
||||
private String dhcpProvider;
|
||||
|
||||
@Column(name="gateway_provider")
|
||||
private String gatewayProvider = Provider.VirtualRouter.getName();
|
||||
private String gatewayProvider;
|
||||
|
||||
@Column(name="vpn_provider")
|
||||
private String vpnProvider;
|
||||
|
|
@ -166,14 +166,23 @@ public class DataCenterVO implements DataCenter {
|
|||
this.domain = domain;
|
||||
this.domainId = domainId;
|
||||
this.networkType = zoneType;
|
||||
|
||||
this.securityGroupEnabled = securityGroupEnabled;
|
||||
loadBalancerProvider = Provider.VirtualRouter.getName();
|
||||
firewallProvider = Provider.VirtualRouter.getName();
|
||||
dhcpProvider = Provider.VirtualRouter.getName();
|
||||
dnsProvider = Provider.VirtualRouter.getName();
|
||||
gatewayProvider = Provider.VirtualRouter.getName();
|
||||
vpnProvider = Provider.VirtualRouter.getName();
|
||||
userDataProvider = Provider.VirtualRouter.getName();
|
||||
|
||||
if (zoneType == NetworkType.Advanced) {
|
||||
loadBalancerProvider = Provider.VirtualRouter.getName();
|
||||
firewallProvider = Provider.VirtualRouter.getName();
|
||||
dhcpProvider = Provider.VirtualRouter.getName();
|
||||
dnsProvider = Provider.VirtualRouter.getName();
|
||||
gatewayProvider = Provider.VirtualRouter.getName();
|
||||
vpnProvider = Provider.VirtualRouter.getName();
|
||||
userDataProvider = Provider.VirtualRouter.getName();
|
||||
} else if (zoneType == NetworkType.Basic){
|
||||
dhcpProvider = Provider.DhcpServer.getName();
|
||||
dnsProvider = Provider.DhcpServer.getName();
|
||||
userDataProvider = Provider.DhcpServer.getName();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -2515,7 +2515,7 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag
|
|||
public boolean zoneIsConfiguredForExternalNetworking(long zoneId) {
|
||||
DataCenterVO zone = _dcDao.findById(zoneId);
|
||||
|
||||
return (zone.getGatewayProvider().equals(Network.Provider.JuniperSRX.getName()) && zone.getFirewallProvider().equals(Network.Provider.JuniperSRX.getName()) && zone.getLoadBalancerProvider().equals(
|
||||
return (zone.getGatewayProvider() != null && zone.getGatewayProvider().equals(Network.Provider.JuniperSRX.getName()) && zone.getFirewallProvider().equals(Network.Provider.JuniperSRX.getName()) && zone.getLoadBalancerProvider().equals(
|
||||
Network.Provider.F5BigIp.getName()));
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ public class DhcpElement extends AdapterBase implements NetworkElement, Password
|
|||
DataCenter dc = dest.getDataCenter();
|
||||
String provider = dc.getGatewayProvider();
|
||||
|
||||
if (provider.equalsIgnoreCase(Provider.JuniperSRX.getName()) && ipType == GuestIpType.Virtual) {
|
||||
if (provider != null && provider.equalsIgnoreCase(Provider.JuniperSRX.getName()) && ipType == GuestIpType.Virtual) {
|
||||
return true;
|
||||
} else {
|
||||
if (dc.getNetworkType() == NetworkType.Basic) {
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@ public class VirtualRouterElement extends DhcpElement implements NetworkElement,
|
|||
|
||||
private boolean canHandle(GuestIpType ipType, DataCenter dc) {
|
||||
String provider = dc.getGatewayProvider();
|
||||
boolean result = (ipType == GuestIpType.Virtual && provider.equals(Provider.VirtualRouter.getName()));
|
||||
boolean result = (provider != null && ipType == GuestIpType.Virtual && provider.equals(Provider.VirtualRouter.getName()));
|
||||
if (!result) {
|
||||
s_logger.trace("Virtual router element only takes care of guest ip type " + GuestIpType.Virtual + " for provider " + Provider.VirtualRouter.getName());
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue