Naganarasimha G R commented on YARN-3623:

Hi [~vinodkv], 
bq. There should be an explicit yarn.timeline-service.version which tells 
YarnClient to get tokens or not - yes for non-present version (default), v1, v2 
but no for v1.5.
IIUC this contradicts the [~sjlee0]'s proposal which was discussed in YARN-4183 
and the approach which i had discussed in YARN-4234 with [~gtCarrera], 
I can envisage it as follows (including the opinions of [~sjlee0]):
* timeline service will be configured with {{"yarn.timeline-service.enabled"}} 
and {{"TIMELINE_SERVICE_VERSION"}}  to be true based on which appropriate 
timeline handler is selected
* RM/NM (SMP) will be configured with {{"yarn.timeline-service.enabled"}} and 
{{yarn.resourcemanager.system-metrics-publisher.enabled}} to be set to true and 
along with it {{"TIMELINE_SERVICE_VERSION"}} based on which appropriate client 
will be selected.
* Client apps who ever want to communicate with Timeline server will enable 
{{"yarn.timeline-service.enabled"}} and a new config like 
{{yarn.timeline-service.client.require-delegation-token}} to be set to true to 
publish the ATS events.
* If {{security , "yarn.timeline-service.enabled" and 
"yarn.timeline-service.client.require-delegation-token"}} are enabled then 
delegation token is automatically fetched in the yarn client as earlier
* when the timeline client is initialized it {{contacts server for the version 
and related configs}}  through REST and once it receives it initializes itself. 
If user tries to use invalid methods (not appropriate to the server timeline 
version) then timelineclient throws exception.

Thus this will avoid improper configurations between client and server and also 
allows client to have flexible configurations from server to avoid getting 
delegation tokens from ATS  based on server config. 
A note : In the above proposal have not considered the multiple versions which 
is still under discussion in YARN-4368 

> We should have a config to indicate the Timeline Service version
> ----------------------------------------------------------------
>                 Key: YARN-3623
>                 URL: https://issues.apache.org/jira/browse/YARN-3623
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: timelineserver
>            Reporter: Zhijie Shen
>            Assignee: Naganarasimha G R
>         Attachments: YARN-3623-2015-11-19.1.patch
> So far RM, MR AM, DA AM added/changed new config to enable the feature to 
> write the timeline data to v2 server. It's good to have a YARN 
> timeline-service.version config like timeline-service.enable to indicate the 
> version of the running timeline service with the given YARN cluster. It's 
> beneficial for users to more smoothly move from v1 to v2, as they don't need 
> to change the existing config, but switch this config from v1 to v2. And each 
> framework doesn't need to have their own v1/v2 config.

This message was sent by Atlassian JIRA

Reply via email to