Author: abayer
Date: Sun Aug 12 18:46:54 2012
New Revision: 1372173
URL: http://svn.apache.org/viewvc?rev=1372173&view=rev
Log:
WHIRR-616. Allow multiple YARN node managers to run on a cluster. Contributed
by Godwin Babu.
Modified:
whirr/trunk/CHANGES.txt
whirr/trunk/services/yarn/src/main/java/org/apache/whirr/service/yarn/YarnNodeManagerHandler.java
Modified: whirr/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/whirr/trunk/CHANGES.txt?rev=1372173&r1=1372172&r2=1372173&view=diff
==============================================================================
--- whirr/trunk/CHANGES.txt (original)
+++ whirr/trunk/CHANGES.txt Sun Aug 12 18:46:54 2012
@@ -15,6 +15,8 @@ Trunk (unreleased changes)
IMPROVEMENTS
+ WHIRR-616. Allow multiple YARN node managers to run on a cluster (Godwin
Babu via abayer)
+
WHIRR-585. bin/whirr version command does not work (frankscholten)
WHIRR-370. Templating for configuration files (kve)
Modified:
whirr/trunk/services/yarn/src/main/java/org/apache/whirr/service/yarn/YarnNodeManagerHandler.java
URL:
http://svn.apache.org/viewvc/whirr/trunk/services/yarn/src/main/java/org/apache/whirr/service/yarn/YarnNodeManagerHandler.java?rev=1372173&r1=1372172&r2=1372173&view=diff
==============================================================================
---
whirr/trunk/services/yarn/src/main/java/org/apache/whirr/service/yarn/YarnNodeManagerHandler.java
(original)
+++
whirr/trunk/services/yarn/src/main/java/org/apache/whirr/service/yarn/YarnNodeManagerHandler.java
Sun Aug 12 18:46:54 2012
@@ -23,6 +23,7 @@ import static org.apache.whirr.service.y
import static org.jclouds.scriptbuilder.domain.Statements.call;
import java.io.IOException;
+import java.util.Set;
import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
@@ -50,13 +51,17 @@ public class YarnNodeManagerHandler exte
Configuration conf = getConfiguration(clusterSpec);
Cluster cluster = event.getCluster();
- Instance nodeManager = cluster.getInstanceMatching(role(ROLE));
- event.getFirewallManager().addRules(
- Rule.create()
- .destination(nodeManager)
- .ports(NODE_MANAGER_WEB_UI_PORT)
- );
-
+ Set<Instance> nodeManagers = cluster.getInstancesMatching(role(ROLE));
+ if (!nodeManagers.isEmpty()) {
+ for(Instance nodeManager : nodeManagers) {
+ event.getFirewallManager().addRules(
+ Rule.create()
+ .destination(nodeManager)
+ .ports(NODE_MANAGER_WEB_UI_PORT)
+ );
+ }
+ }
+
try {
event.getStatementBuilder().addStatements(
build("/tmp/yarn-site.xml", clusterSpec, cluster, ROLE)