diff --git a/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java b/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java index 53225be61e1..dbf6d9a4b69 100644 --- a/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java +++ b/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java @@ -232,6 +232,10 @@ public class NetscalerElement extends ExternalLoadBalancerDeviceManagerImpl impl @Override public boolean validateLBRule(Network network, LoadBalancingRule rule) { + if (canHandle(network, Service.Lb)) { + String algo = rule.getAlgorithm(); + return (algo.equals("roundrobin") || algo.equals("leastconn") || algo.equals("source")); + } return true; } @@ -260,7 +264,7 @@ public class NetscalerElement extends ExternalLoadBalancerDeviceManagerImpl impl Map lbCapabilities = new HashMap(); // Specifies that the RoundRobin and Leastconn algorithms are supported for load balancing rules - lbCapabilities.put(Capability.SupportedLBAlgorithms, "roundrobin,leastconn"); + lbCapabilities.put(Capability.SupportedLBAlgorithms, "roundrobin, leastconn, source"); // specifies that Netscaler network element can provided both shared and isolation modes lbCapabilities.put(Capability.SupportedLBIsolation, "dedicated, shared");