16.Which YARN daemon or service monitors a Controller's per-application resource using
(e.g., memory CPU)?
“The per-application ApplicationMaster has the responsibility of negotiating appropriate resource containers from the Scheduler, tracking their status and monitoring for progress.”
“Node Manager is the per-machine and NOT the per-application monitor”
The nodemanager is responsible for the node and not for specific application.
If an application (container) needs more resources it will as the resource manager to get more resources. If the Resource Mnager wants to start a new container it will ask the NodeManager to do that.
client - submits the MapReduce job.
YARN resource manager - coordinates the allocation of compute resources on the cluster.
YARN node managers - launch and monitor the compute containers on machines in the cluster.
MapReduce application master - coordinates the tasks running the MapReduce job.
The application master and the MapReduce tasks run in containers that are scheduled by the resource manager and managed by the node managers.