Some articles:
https://www.adoclib.com/blog/hadoop-how-job-is-send-to-master-and-to-nodes-on-mapreduce.html
https://blog.knoldus.com/understanding-how-spark-runs-on-yarn-with-hdfs/
https://sparkbyexamples.com/spark/spark-deploy-modes-client-vs-cluster/
这个写的特别清晰:https://stackoverflow.com/questions/34709213/hadoop-how-job-is-send-to-master-and-to-nodes-on-mapreduce