-
Notifications
You must be signed in to change notification settings - Fork 28k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP][SPARK-32899][CORE] Support submit application with user-defined cluster manager #29770
Conversation
Can one of the admins verify this patch? |
nit: spark/core/src/main/scala/org/apache/spark/deploy/SparkSubmitArguments.scala Lines 490 to 492 in 5cccd6b
|
Also, I can see that spark/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala Lines 290 to 301 in 2e3aa2f
So can we get the 4-tuple return value of spark/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala Lines 220 to 228 in 2e3aa2f
e.g. the spark/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala Lines 716 to 734 in 2e3aa2f
I doubt that it would be hard for a user-defined mode to get correct 4-tuple return value of |
@KevinSmile , thansk for the advice. Which one do you think can not be processed well? |
Hi @cloud-fan, could you help to review on this? Thanks a lot. |
Just a glance, I'm not very sure about this... Let's say we have a new user-defined cluster manager called But what should we do with the following spark/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala Lines 716 to 734 in 2e3aa2f
|
The |
But spark/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala Lines 876 to 877 in 2e3aa2f
So it's another topic? Which means that the current design of |
this is an interesting issue. One of the issues is how does spark submit properly know what all arguments are supported by that cluster manager. Similar what deployment modes are supported. there is a lot of cluster manager specific logic in here and this may work for you for most things but I would be surprised if it worked for all things. Did you test this with both spark-submit and the interactive shells (spark-shell, pyspark, etc)? I'm not sure if you cluster manager supports full cluster mode or not vs running driver locally. I think if we officially want to support this we need something else, some parts would need to be pluggable. I think that is going to be a whole lot more change though. |
Look the code may be more clear. The
Yes |
Hi @tgravescs. Thanks for the advice. I have not tested all arguments, however, it works for us now. I agree with you, we need to redesign the |
Yes, |
I'm possibly ok with this one but don't really want to keep hacking on it. I can see this going in and then someone filing another jira saying it doesn't work for X or Y and then we keep hacking at it. I would rather see it done properly if we are going to say its supported. |
@tgravescs, thanks for the suggestion. Mark this as WIP, will optimize it better. |
We're closing this PR because it hasn't been updated in a while. This isn't a judgement on the merit of the PR in any way. It's just a way of keeping the PR queue manageable. |
What changes were proposed in this pull request?
Add the support to submit applications with user-defined cluster manager.
Why are the changes needed?
We have supported users to define the customed cluster manager with
ExternalClusterManager
trait. However, we can not submit the application withSparkSubmit
. And also we can set the user-defined master with pyspark. The reason is that we check the master whether is the natively support one inSparkSubmit
. However, the customed cluster manager is checked inSparkContext
. This patch fixes the problem.Does this PR introduce any user-facing change?
No
How was this patch tested?
New UT.