3.10 TaskManager 启动
YarnTaskExecutorRunner.java
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307203821507-1866613724.png)
TaskManagerRunner.java
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307204029519-1508623609.png)
TaskExecutorToServiceAdapter.java
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307204204721-1442605543.png)
TaskExecutor.java
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307204243738-1110284329.png)
3.11 向 ResourceManager 注册
TaskExecutor.java
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307204539638-280918492.png)
TaskExecutorToResourceManagerConnection.java
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307204719987-1920047505.png)
开始注册 newRegistration. startRegistration()会调用 invokeRegistration():
TaskExecutorToResourceManagerConnection.java 的内部类 ResourceManagerRegistration
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307204940747-80827755.png)
注册成功调用 onRegistrationSuccess
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307210731100-1598123582.png)
TaskExecutor.java 的内部类 ResourceManagerRegistrationListener
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307210816369-399403652.png)
ResourceManager.java
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307215234526-737875427.png)
SlotManagerImpl.java
![](https://img2020.cnblogs.com/blog/1275415/202103/1275415-20210307215314702-172046619.png)