Author: kasha
Date: Wed Jul 9 19:58:43 2014
New Revision: 1609278
URL: http://svn.apache.org/r1609278
Log:
YARN-2131. Add a way to format the RMStateStore. (Robert Kanter via kasha)
Modified:
hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/bin/yarn
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/FileSystemRMStateStore.java
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/MemoryRMStateStore.java
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/NullRMStateStore.java
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.java
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/ZKRMStateStore.java
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStoreTestBase.java
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestFSRMStateStore.java
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestZKRMStateStore.java
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-site/src/site/apt/YarnCommands.apt.vm
Modified: hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt (original)
+++ hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt Wed Jul 9 19:58:43 2014
@@ -24,6 +24,8 @@ Release 2.6.0 - UNRELEASED
NEW FEATURES
+ YARN-2131. Add a way to format the RMStateStore. (Robert Kanter via kasha)
+
IMPROVEMENTS
YARN-2242. Improve exception information on AM launch crashes. (Li Lu
Modified: hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/bin/yarn
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/bin/yarn?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/bin/yarn (original)
+++ hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/bin/yarn Wed Jul 9
19:58:43 2014
@@ -61,20 +61,21 @@ HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:
function print_usage(){
echo "Usage: yarn [--config confdir] COMMAND"
echo "where COMMAND is one of:"
- echo " resourcemanager run the ResourceManager"
- echo " nodemanager run a nodemanager on each slave"
- echo " timelineserver run the timeline server"
- echo " rmadmin admin tools"
- echo " version print the version"
- echo " jar <jar> run a jar file"
- echo " application prints application(s) report/kill application"
- echo " applicationattempt prints applicationattempt(s) report"
- echo " container prints container(s) report"
- echo " node prints node report(s)"
- echo " logs dump container logs"
- echo " classpath prints the class path needed to get the"
- echo " Hadoop jar and the required libraries"
- echo " daemonlog get/set the log level for each daemon"
+ echo " resourcemanager -format deletes the RMStateStore"
+ echo " resourcemanager run the ResourceManager"
+ echo " nodemanager run a nodemanager on each slave"
+ echo " timelineserver run the timeline server"
+ echo " rmadmin admin tools"
+ echo " version print the version"
+ echo " jar <jar> run a jar file"
+ echo " application prints application(s) report/kill
application"
+ echo " applicationattempt prints applicationattempt(s) report"
+ echo " container prints container(s) report"
+ echo " node prints node report(s)"
+ echo " logs dump container logs"
+ echo " classpath prints the class path needed to get the"
+ echo " Hadoop jar and the required libraries"
+ echo " daemonlog get/set the log level for each daemon"
echo " or"
echo " CLASSNAME run the class named CLASSNAME"
echo "Most commands print help when invoked w/o parameters."
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java
Wed Jul 9 19:58:43 2014
@@ -1035,12 +1035,17 @@ public class ResourceManager extends Com
StringUtils.startupShutdownMessage(ResourceManager.class, argv, LOG);
try {
Configuration conf = new YarnConfiguration();
- ResourceManager resourceManager = new ResourceManager();
- ShutdownHookManager.get().addShutdownHook(
- new CompositeServiceShutdownHook(resourceManager),
- SHUTDOWN_HOOK_PRIORITY);
- resourceManager.init(conf);
- resourceManager.start();
+ // If -format, then delete RMStateStore; else startup normally
+ if (argv.length == 1 && argv[0].equals("-format")) {
+ deleteRMStateStore(conf);
+ } else {
+ ResourceManager resourceManager = new ResourceManager();
+ ShutdownHookManager.get().addShutdownHook(
+ new CompositeServiceShutdownHook(resourceManager),
+ SHUTDOWN_HOOK_PRIORITY);
+ resourceManager.init(conf);
+ resourceManager.start();
+ }
} catch (Throwable t) {
LOG.fatal("Error starting ResourceManager", t);
System.exit(-1);
@@ -1077,4 +1082,23 @@ public class ResourceManager extends Com
return conf.getSocketAddr(YarnConfiguration.RM_ADDRESS,
YarnConfiguration.DEFAULT_RM_ADDRESS, YarnConfiguration.DEFAULT_RM_PORT);
}
+
+ /**
+ * Deletes the RMStateStore
+ *
+ * @param conf
+ * @throws Exception
+ */
+ private static void deleteRMStateStore(Configuration conf) throws Exception {
+ RMStateStore rmStore = RMStateStoreFactory.getStore(conf);
+ rmStore.init(conf);
+ rmStore.start();
+ try {
+ LOG.info("Deleting ResourceManager state store...");
+ rmStore.deleteStore();
+ LOG.info("State store deleted");
+ } finally {
+ rmStore.stop();
+ }
+ }
}
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/FileSystemRMStateStore.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/FileSystemRMStateStore.java?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/FileSystemRMStateStore.java
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/FileSystemRMStateStore.java
Wed Jul 9 19:58:43 2014
@@ -515,6 +515,13 @@ public class FileSystemRMStateStore exte
deleteFile(nodeCreatePath);
}
+ @Override
+ public synchronized void deleteStore() throws IOException {
+ if (fs.exists(rootDirPath)) {
+ fs.delete(rootDirPath, true);
+ }
+ }
+
private Path getAppDir(Path root, String appId) {
return getNodePath(root, appId);
}
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/MemoryRMStateStore.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/MemoryRMStateStore.java?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/MemoryRMStateStore.java
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/MemoryRMStateStore.java
Wed Jul 9 19:58:43 2014
@@ -267,4 +267,8 @@ public class MemoryRMStateStore extends
return null;
}
+ @Override
+ public void deleteStore() throws Exception {
+ }
+
}
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/NullRMStateStore.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/NullRMStateStore.java?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/NullRMStateStore.java
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/NullRMStateStore.java
Wed Jul 9 19:58:43 2014
@@ -138,4 +138,9 @@ public class NullRMStateStore extends RM
return null;
}
+ @Override
+ public void deleteStore() throws Exception {
+ // Do nothing
+ }
+
}
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.java?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.java
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.java
Wed Jul 9 19:58:43 2014
@@ -845,4 +845,10 @@ public abstract class RMStateStore exten
handleStoreEvent(event);
}
}
+
+ /**
+ * Derived classes must implement this method to delete the state store
+ * @throws Exception
+ */
+ public abstract void deleteStore() throws Exception;
}
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/ZKRMStateStore.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/ZKRMStateStore.java?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/ZKRMStateStore.java
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/ZKRMStateStore.java
Wed Jul 9 19:58:43 2014
@@ -805,6 +805,13 @@ public class ZKRMStateStore extends RMSt
}
}
+ @Override
+ public synchronized void deleteStore() throws Exception {
+ if (existsWithRetries(zkRootNodePath, true) != null) {
+ deleteWithRetries(zkRootNodePath, true);
+ }
+ }
+
// ZK related code
/**
* Watcher implementation which forward events to the ZKRMStateStore This
@@ -959,6 +966,29 @@ public class ZKRMStateStore extends RMSt
}.runWithRetries();
}
+ private void deleteWithRetries(
+ final String path, final boolean watch) throws Exception {
+ new ZKAction<Void>() {
+ @Override
+ Void run() throws KeeperException, InterruptedException {
+ recursiveDeleteWithRetriesHelper(path, watch);
+ return null;
+ }
+ }.runWithRetries();
+ }
+
+ /**
+ * Helper method that deletes znodes recursively
+ */
+ private void recursiveDeleteWithRetriesHelper(String path, boolean watch)
+ throws KeeperException, InterruptedException {
+ List<String> children = zkClient.getChildren(path, watch);
+ for (String child : children) {
+ recursiveDeleteWithRetriesHelper(path + "/" + child, false);
+ }
+ zkClient.delete(path, -1);
+ }
+
/**
* Helper class that periodically attempts creating a znode to ensure that
* this RM continues to be the Active.
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStoreTestBase.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStoreTestBase.java?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStoreTestBase.java
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStoreTestBase.java
Wed Jul 9 19:58:43 2014
@@ -515,16 +515,33 @@ public class RMStateStoreTestBase extend
throws Exception {
RMStateStore store = stateStoreHelper.getRMStateStore();
store.setRMDispatcher(new TestDispatcher());
- // create and store apps
+ ArrayList<RMApp> appList = createAndStoreApps(stateStoreHelper, store, 5);
+
+ for (RMApp app : appList) {
+ // remove the app
+ store.removeApplication(app);
+ // wait for app to be removed.
+ while (true) {
+ if (!stateStoreHelper.appExists(app)) {
+ break;
+ } else {
+ Thread.sleep(100);
+ }
+ }
+ }
+ }
+
+ private ArrayList<RMApp> createAndStoreApps(
+ RMStateStoreHelper stateStoreHelper, RMStateStore store, int numApps)
+ throws Exception {
ArrayList<RMApp> appList = new ArrayList<RMApp>();
- int NUM_APPS = 5;
- for (int i = 0; i < NUM_APPS; i++) {
+ for (int i = 0; i < numApps; i++) {
ApplicationId appId = ApplicationId.newInstance(1383183338, i);
RMApp app = storeApp(store, appId, 123456789, 987654321);
appList.add(app);
}
- Assert.assertEquals(NUM_APPS, appList.size());
+ Assert.assertEquals(numApps, appList.size());
for (RMApp app : appList) {
// wait for app to be stored.
while (true) {
@@ -535,18 +552,17 @@ public class RMStateStoreTestBase extend
}
}
}
+ return appList;
+ }
+ public void testDeleteStore(RMStateStoreHelper stateStoreHelper)
+ throws Exception {
+ RMStateStore store = stateStoreHelper.getRMStateStore();
+ ArrayList<RMApp> appList = createAndStoreApps(stateStoreHelper, store, 5);
+ store.deleteStore();
+ // verify apps deleted
for (RMApp app : appList) {
- // remove the app
- store.removeApplication(app);
- // wait for app to be removed.
- while (true) {
- if (!stateStoreHelper.appExists(app)) {
- break;
- } else {
- Thread.sleep(100);
- }
- }
+ Assert.assertFalse(stateStoreHelper.appExists(app));
}
}
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestFSRMStateStore.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestFSRMStateStore.java?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestFSRMStateStore.java
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestFSRMStateStore.java
Wed Jul 9 19:58:43 2014
@@ -160,6 +160,7 @@ public class TestFSRMStateStore extends
testCheckVersion(fsTester);
testEpoch(fsTester);
testAppDeletion(fsTester);
+ testDeleteStore(fsTester);
} finally {
cluster.shutdown();
}
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestZKRMStateStore.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestZKRMStateStore.java?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestZKRMStateStore.java
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/TestZKRMStateStore.java
Wed Jul 9 19:58:43 2014
@@ -122,6 +122,7 @@ public class TestZKRMStateStore extends
testCheckVersion(zkTester);
testEpoch(zkTester);
testAppDeletion(zkTester);
+ testDeleteStore(zkTester);
}
private Configuration createHARMConf(
Modified:
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-site/src/site/apt/YarnCommands.apt.vm
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-site/src/site/apt/YarnCommands.apt.vm?rev=1609278&r1=1609277&r2=1609278&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-site/src/site/apt/YarnCommands.apt.vm
(original)
+++
hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-site/src/site/apt/YarnCommands.apt.vm
Wed Jul 9 19:58:43 2014
@@ -157,9 +157,17 @@ Usage: yarn [--config confdir] COMMAND
Start the ResourceManager
-------
- Usage: yarn resourcemanager
+ Usage: yarn resourcemanager [-format]
-------
+*---------------+--------------+
+|| COMMAND_OPTIONS || Description |
+*---------------+--------------+
+| -format | Formats the RMStateStore. This will clear the RMStateStore and is
+| | useful if past applications are no longer needed. This should be
run
+| | only when the ResourceManager is not running.
+*---------------+--------------+
+
** nodemanager
Start the NodeManager