From be67f5d17afd65e99759eb8f538016004b529588 Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Tue, 10 Dec 2013 06:19:00 +0530 Subject: [PATCH] CLOUDSTACK-5428: support NetScaler to be configured exclusively for GSLB service and not used for LB Fix adds a boolean flag to addNetscalerLoadBalancer api, which will mark added NetScaler for exclusive GSLB service. A netscaler marked as exclusive gslb service provider is not picked for any guest network's lb provider. --- .../apache/cloudstack/api/ApiConstants.java | 1 + .../ExternalLoadBalancerDeviceDaoImpl.java | 2 ++ .../dao/ExternalLoadBalancerDeviceVO.java | 11 ++++++++++ .../F5ExternalLoadBalancerElement.java | 6 +++-- .../commands/AddNetscalerLoadBalancerCmd.java | 22 +++++++++++++++++-- .../NetscalerLoadBalancerResponse.java | 8 +++++++ .../network/element/NetscalerElement.java | 8 ++++++- .../ExternalLoadBalancerDeviceManager.java | 2 +- ...ExternalLoadBalancerDeviceManagerImpl.java | 6 +++-- setup/db/db/schema-421to430.sql | 2 ++ 10 files changed, 60 insertions(+), 8 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/ApiConstants.java b/api/src/org/apache/cloudstack/api/ApiConstants.java index 745a722bfa4..a132e548258 100755 --- a/api/src/org/apache/cloudstack/api/ApiConstants.java +++ b/api/src/org/apache/cloudstack/api/ApiConstants.java @@ -502,6 +502,7 @@ public class ApiConstants { public static final String BAREMETAL_DISCOVER_NAME = "baremetaldiscovername"; public static final String UCS_DN = "ucsdn"; public static final String GSLB_PROVIDER = "gslbprovider"; + public static final String EXCLUSIVE_GSLB_PROVIDER = "isexclusivegslbprovider"; public static final String GSLB_PROVIDER_PUBLIC_IP = "gslbproviderpublicip"; public static final String GSLB_PROVIDER_PRIVATE_IP = "gslbproviderprivateip"; public static final String VM_SNAPSHOT_DESCRIPTION = "description"; diff --git a/engine/schema/src/com/cloud/network/dao/ExternalLoadBalancerDeviceDaoImpl.java b/engine/schema/src/com/cloud/network/dao/ExternalLoadBalancerDeviceDaoImpl.java index f12d06324bf..432b4a2eb9d 100644 --- a/engine/schema/src/com/cloud/network/dao/ExternalLoadBalancerDeviceDaoImpl.java +++ b/engine/schema/src/com/cloud/network/dao/ExternalLoadBalancerDeviceDaoImpl.java @@ -57,6 +57,7 @@ public class ExternalLoadBalancerDeviceDaoImpl extends GenericDaoBase