[
https://issues.apache.org/jira/browse/FLINK-16733?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17084513#comment-17084513
]
Xintong Song commented on FLINK-16733:
--------------------------------------
[~rongr]
I do not have a concrete plan.
At high level, my idea is similar to what [~tison] has described.
* We will have some decorators, each decorator dedicates to preparing a
specific component / functionality of Flink. E.g., high availability, security,
resource management, etc.
* To prepare the component / functionality, the decorators need to take various
actions: upload files, write configurations, set environment variables, add
class path, etc.
* Dedicated utils will be introduced for the decorating actions.
`YarnClusterDescriptor` should be responsible for preparing these utils,
passing them to the decorators, and assembling them to create the container
launch context.
I have already started working on this, not full time though. My progress so
far:
* Introduced ClasspathBuilder for building the class path, dealing with the
ordering of user/framework class paths.
* Introduced ShipFileUtils for uploading files (still migrating tests)
> Refactor YarnClusterDescriptor
> ------------------------------
>
> Key: FLINK-16733
> URL: https://issues.apache.org/jira/browse/FLINK-16733
> Project: Flink
> Issue Type: Improvement
> Components: Deployment / YARN
> Reporter: Xintong Song
> Assignee: Xintong Song
> Priority: Minor
>
> Currently, YarnClusterDescriptor is not in a good shape. It has 1600+ lines
> of codes, of which the method {{startAppMaster}} alone has 400+ codes,
> leading to poor maintainability.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)