[ 
https://issues.apache.org/jira/browse/YARN-6355?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16043388#comment-16043388
 ] 

Subru Krishnan commented on YARN-6355:
--------------------------------------

Thanks [~asuresh] for working on this. I looked at the patch and have a few 
high-level comments:
  * Can you add a simple design doc with one diagram as the approach is 
non-trivial to grok from only the patch. I had to have an offline discussions 
with you to understand the nuances.
  * I feel we should break up the jiras as there are multiple changes happening 
here:
     ** Refactoring of the {{ApplicationMasterService}} to allow for the 
filter/interceptor extension. This should be the baseline (status-quo) without 
no regressions.
     ** Define the filter/interceptor extension. Consider using an private 
interface to simplify the class hierarchy.
     ** Refactor the {{OpportunisticContainerAllocatorAMService}} to follow the 
above model.
  * The patch currently covers AM - RM protocol, we should reuse the work from 
YARN-5411 for client - RM protocol.

> Preprocessor framework for AM and Client interactions with the RM
> -----------------------------------------------------------------
>
>                 Key: YARN-6355
>                 URL: https://issues.apache.org/jira/browse/YARN-6355
>             Project: Hadoop YARN
>          Issue Type: Improvement
>            Reporter: Arun Suresh
>            Assignee: Arun Suresh
>              Labels: amrmproxy, resourcemanager
>         Attachments: YARN-6355.001.patch, YARN-6355.002.patch
>
>
> Currently on the NM, we have the {{AMRMProxy}} framework to intercept the AM 
> <-> RM communication and enforce policies. This is used both by YARN 
> federation (YARN-2915) as well as Distributed Scheduling (YARN-2877).
> This JIRA proposes to introduce a similar framework on the the RM side, so 
> that pluggable policies can be enforced on ApplicationMasterService centrally 
> as well.
> This would be similar in spirit to a Java Servlet Filter Chain. Where the 
> order of the interceptors can declared externally.
> Once possible usecase would be:
> the {{OpportunisticContainerAllocatorAMService}} is implemented as a wrapper 
> over the {{ApplicationMasterService}}. It would probably be better to 
> implement it as an Interceptor.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to