How Applications Work in YARN

The following diagram and list of steps provides information about data flow during application execution in YARN.

Application execution consists of the following steps:
  1. A client submits an application to the YARN ResourceManager, including the information required for the CLC.
  2. The ApplicationsManager (in the ResourceManager) negotiates a container and bootstraps the ApplicationMaster instance for the application.
  3. The ApplicationMaster registers with the ResourceManager and requests containers.
  4. The ApplicationMaster communicates with NodeManagers to launch the containers it has been granted, specifying the CLC for each container.
  5. The ApplicationMaster manages application execution. During execution, the application provides progress and status information to the ApplicationMaster. The client can monitor the application’s status by querying the ResourceManager or by communicating directly with the ApplicationMaster.
  6. The ApplicationMaster reports completion of the application to the ResourceManager.
  7. The ApplicationMaster un-registers with the ResourceManager, which then cleans up the ApplicationMaster container.