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

ASF GitHub Bot commented on HDFS-17790:
---------------------------------------

kakao-sue-sylee opened a new pull request, #7697:
URL: https://github.com/apache/hadoop/pull/7697

   ### Description of PR
   [YARN-11821](https://issues.apache.org/jira/browse/YARN-11821) 
   pattern-based address matching for the YARN web proxy
   
   ### How was this patch tested?
   
   
   ### For code changes:
   
   - [ ] Does the title or this PR starts with the corresponding JIRA issue id 
(e.g. 'HADOOP-17799. Your PR title ...')?
   - [ ] Object storage: have the integration tests been executed and the 
endpoint declared according to the connector-specific documentation?
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?
   - [ ] If applicable, have you updated the `LICENSE`, `LICENSE-binary`, 
`NOTICE-binary` files?
   
   




> Support pattern matching for YARN proxy addresses.
> --------------------------------------------------
>
>                 Key: HDFS-17790
>                 URL: https://issues.apache.org/jira/browse/HDFS-17790
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: router
>    Affects Versions: 3.4.1
>            Reporter: SUYEON LEE
>            Priority: Major
>         Attachments: 스크린샷 2025-02-20 오후 6.14.27.png
>
>
> *Issue:*
> In a YARN Federation environment utilizing multiple YARN Routers, if a Global 
> Server Load Balancer (GSLB) is used for distributing requests to these 
> Routers _without_ sticky session support, users encounter redirection errors.
> !스크린샷 2025-02-20 오후 6.14.27.png!
> These errors typically manifest when accessing application UIs or logs via 
> the NodeManager's proxy.
> *Problem Details:*
> The root cause of this issue lies in how the NodeManager (NM) resolves the 
> YARN Router address for proxying web requests. The NodeManager uses the 
> {{yarn.web-proxy.address}} configuration property to determine the Router's 
> address. However, this property is designed to accommodate only a single 
> hostname or IP address.
> When a GSLB without sticky sessions distributes requests, an initial request 
> might be routed to Router A, while a subsequent request (e.g., for 
> application logs, proxied by an NM) might be directed by the GSLB to Router 
> B, or the NM might be configured with a specific Router/GSLB VIP that 
> resolves to Router B. If the ApplicationMaster (AM) for the application in 
> question is registered with Router A, Router B may not be able to correctly 
> proxy or redirect the request, leading to errors. The NM's attempt to proxy 
> through an "incorrect" or context-unaware Router (relative to where the AM is 
> known) due to the single-host limitation in {{yarn.web-proxy.address}} 
> results in these failures.
> *Analysis / Root Cause Summary:*
>  # *Environment:* YARN Federation with multiple YARN Routers.
>  # *Load Balancing:* GSLB used without sticky session support, leading to 
> requests for the same session potentially hitting different Routers.
>  # *NM Proxy Mechanism:* NodeManagers use {{yarn.web-proxy.address}} to 
> identify the YARN Router for proxying UI/log requests.
>  # *Configuration Limitation:* {{yarn.web-proxy.address}} supports only a 
> single host, making it incompatible with a multi-Router setup where requests 
> are not sticky.
>  # *Symptom:* Redirection errors occur as the NM may attempt to proxy through 
> a Router that does not have the necessary context for the specific 
> application/AM, or is not the Router the user was initially interacting with 
> via the GSLB.
> *Proposed Solution:*
> To address this limitation, a patch has been developed to introduce 
> *pattern-based address matching for the YARN web proxy functionality.*
> This enhancement will allow {{yarn.web-proxy.address.pattern}} to be 
> configured with a pattern or a list of Routers. The NodeManager's proxy 
> mechanism can then intelligently select or match the appropriate Router 
> address, ensuring that requests are proxied correctly even in a federated 
> environment with multiple Routers and non-sticky load balancing.
> *Goal of the Patch:*
>  * Enable robust YARN web proxying in federated environments with multiple 
> Routers load-balanced by a non-sticky GSLB.
>  * Improve the usability and reliability of accessing application UIs and 
> logs in such configurations.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to