Search code examples
hadoop-yarn

In YARN what is the difference between a managed and an unmanaged Application Manager


I'm experimenting with the Distributed Shell example in YARN 2.2 and am hoping that someone can clarify what the difference between a managed and and an un-managed application manager is?

For example the following lines appear in the client code

// unmanaged AM
appContext.setUnmanagedAM(true);

but I am unable to find documentation explaining the difference this line makes to the execution behaviour.

Many thanks.


Solution

  • The setUnmanagedAM(true) is used for debugging purposes i.e. it runs an application manager in local mode and does not submit it to a cluster so it is easier to step into code and debug. You can see it in use in the hadoop-yarn-applications-unmanaged-am-launcher.jar that ships with yarn