YARN framework provides flexibility to run any application in a clustered environment. An application could be as simple as a Java process, a shell script, or a simple
date command. The ResourceManager service manages the cluster resource allocation and the NodeManager services execute tasks as specified by the application framework; for example, the map and reduce tasks of Hadoop MapReduce jobs.
In this section, you will write your own applications to run in a distributed environment through YARN.
The complete process can be summarized in four simple steps, which are shown in the following diagram: