Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
AuxiliaryServices such as ShuffleHandler currently run in the same process as NM. There are some benefits to host them in dedicated processes.
1. NM rolling restart. If we want to upgrade YARN , NM restart will force the ShuffleHandler restart. If ShuffleHandler runs as a separate process, ShuffleHandler can continue to run during NM restart. NM can reconnect the the running ShuffleHandler after restart.
2. Resource management. It is possible another type of AuxiliaryServices will be implemented. AuxiliaryServices are considered YARN application specific and could consume lots of resources. Running AuxiliaryServices in separate processes allow easier resource management. NM could potentially stop a specific AuxiliaryServices process from running if it consumes resource way above its allocation.
Here are some high level ideas:
1. NM provides a hosting process for each AuxiliaryService. Existing AuxiliaryService API doesn't change.
2. The hosting process provides RPC server for AuxiliaryService proxy object inside NM to connect to.
3. When we rolling restart NM, the existing AuxiliaryService processes will continue to run. NM could reconnect to the running AuxiliaryService processes upon restart.
4. Policy and resource management of AuxiliaryServices. So far we don't have immediate need for this. AuxiliaryService could run inside a container and its resource utilization could be taken into account by RM and RM could consider a specific type of applications overutilize cluster resource.
Attachments
Attachments
Issue Links
- is depended upon by
-
YARN-5733 Run PerNodeTimelineCollectorsAuxService in a system container
- Resolved
-
SPARK-12807 Spark External Shuffle not working in Hadoop clusters with Jackson 2.2.3
- Resolved
- is duplicated by
-
YARN-7110 NodeManager always crash for spark shuffle service out of memory
- Resolved
-
YARN-5732 Run auxiliary services in system containers
- Resolved
- is related to
-
YARN-1336 [Umbrella] Work-preserving nodemanager restart
- Resolved
- relates to
-
YARN-6601 Allow service to be started as System Services during serviceapi start up
- Open