YARN
What is YARN?
Yarn stands for Yet Another Resource Negotiator. It separates resource management layer from the processing layer.
- Client - MapReduce job is submitted.
- Resource Manager - It allocates cluster resources using scheduler and application manager.
a) Scheduler - It performs scheduling based on allocated application and available resources.
- Application Master - It manages life cycle of job by indicating node manager to create or destroy container for a job.
- Node Manager - It manages job in a specific node by creating and destroying container in a cluster.
- Container - It is a set of resources like CPU, RAM, and memory on a single node and they are scheduled by resource manager and monitored by node manager.
Application workflow in YARN:
- Client submits an application.
- The Resource Manager allocates a container to start the Application Manager.
- The Application Manager registers itself with the Resource Manager.
- The Application Manager negotiates containers from the Resource Manager.
- The Application Manager notifies the Node Manager to launch containers.
- Application code is executed in the container.
- Client contacts Resource Manager/Application Manager to monitor application’s status.
- Once the processing is complete, the Application Manager un-registers with the Resource Manager.
- Client submits an application.
- The Resource Manager allocates a container to start the Application Manager.
- The Application Manager registers itself with the Resource Manager.
- The Application Manager negotiates containers from the Resource Manager.
- The Application Manager notifies the Node Manager to launch containers.
- Application code is executed in the container.
- Client contacts Resource Manager/Application Manager to monitor application’s status.
- Once the processing is complete, the Application Manager un-registers with the Resource Manager.
Comments
Post a Comment
If you have any doubts, Please let me know