Zhijie Shen commented on YARN-3390:

To help folks understand the patch, I introduce a bit more about the skeleton 
of the code change:

* TimelineCollectorManager: the base class of managing collectors' life cycles
** NMTimelineCollectorManager: extends TimelineCollectorManager, start web 
server to receive the incoming request and start the RPC channel for getting 
the context info publishing the service address.
** RMTimelineCollectorManager: extends TimelineCollectorManager, and source 
rmContext for getting the context info.
* ResourceManager: create RMTimelineCollectorManager and make it accessible 
inside the daemon via RMContext.
* RMAppManager: add and remove app-level collector into/out of 
RMTimelineCollectorManager according to RMApp's lifecycle.

After this, YARN-3044's scope is clearer, inside SystemMetricsPublisher, if 
we're using YTS v2, we compose the new timeline entity, pick the corresponding 
app-level collector from RMTimelineCollectorManager, and write through it. It's 
similar to what we're doing for writing DS and MR data to new timeline service.

> Reuse TimelineCollectorManager for RM
> -------------------------------------
>                 Key: YARN-3390
>                 URL: https://issues.apache.org/jira/browse/YARN-3390
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: timelineserver
>            Reporter: Zhijie Shen
>            Assignee: Zhijie Shen
>         Attachments: YARN-3390.1.patch
> RMTimelineCollector should have the context info of each app whose entity  
> has been put

This message was sent by Atlassian JIRA

Reply via email to