You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by im...@apache.org on 2015/08/28 15:11:13 UTC

stratos git commit: Fixing port mapping issue in lvs extension

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 <im...@apache.org>
Authored: Fri Aug 28 18:41:05 2015 +0530
Committer: Imesh Gunaratne <im...@apache.org>
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);