Container allocation
At a very fundamental level, the container is the group of physical resources such as memory, disk, network, CPU, and so on. There can be one or more containers on a single machine; for example, if a machine has 16 GB of RAM and 8 core processors, then a single container could be 1 CPU core and 2 GB of RAM. This means that there are a total of 8 containers on a single machine, or there could be a single large container with all the occupied resources. So, a container is a physical notation of memory, CPU, network, disk, and so on in the cluster. The container's life cycle is managed by the NodeManager, and the scheduling is done by the ResourceManager. The container allocation can be seen as follows:
YARN is designed to allocate resource containers to the individual applications in a shared, secure, and multitenant manner. When any job or task is submitted to the YARN framework, the ResourceManager takes care of the resource allocations to the application, depending on...