Repository: stratos Updated Branches: refs/heads/stratos-4.1.x cb50e9a44 -> 31cbfd516
Fixing port mapping issue in lvs extension Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/31cbfd51 Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/31cbfd51 Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/31cbfd51 Branch: refs/heads/stratos-4.1.x Commit: 31cbfd5166ab187bfa50038d2233e82fa6f6c34e Parents: cb50e9a Author: Imesh Gunaratne <[email protected]> Authored: Fri Aug 28 18:41:05 2015 +0530 Committer: Imesh Gunaratne <[email protected]> Committed: Fri Aug 28 18:41:05 2015 +0530 ---------------------------------------------------------------------- .../stratos/lvs/extension/LVSConfigWriter.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/31cbfd51/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java ---------------------------------------------------------------------- diff --git a/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java b/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java index c3beb30..1a09c5c 100644 --- a/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java +++ b/extensions/load-balancer/lvs-extension/src/main/java/org/apache/stratos/lvs/extension/LVSConfigWriter.java @@ -72,11 +72,7 @@ public class LVSConfigWriter { String state; for (Service service : topology.getServices()) { for (Cluster cluster : service.getClusters()) { - if ((service.getPorts() == null) || (service.getPorts().size() == 0)) { - throw new RuntimeException( - String.format("No ports found in service: %s", service.getServiceName())); - } - generateConfigurationForCluster(cluster, service.getPorts(), configurationBuilder, virtualIPBuilder, + generateConfigurationForCluster(cluster, configurationBuilder, virtualIPBuilder, virtualIPsForServices, scheduleAlgo,isKeepAlived); } } @@ -144,12 +140,20 @@ public class LVSConfigWriter { * } * * @param cluster - * @param ports * @param text */ - private void generateConfigurationForCluster(Cluster cluster, Collection<Port> ports, StringBuilder text, + private void generateConfigurationForCluster(Cluster cluster, StringBuilder text, StringBuilder virtualIPs, String virtualIPsForServices, String scheduleAlgo,boolean isKeepAlived) { + + if((cluster.getMembers() == null) || (cluster.getMembers().size() == 0)) { + return; + } + + // Find port mappings + Member firstMember = (Member) cluster.getMembers().toArray()[0]; + Collection<Port> ports = firstMember.getPorts(); + String commandClear = "ipvsadm --clear"; try { CommandUtils.executeCommand(commandClear);
