-
Notifications
You must be signed in to change notification settings - Fork 972
Support to get spark app url with pattern http://{{SPARK_DRIVER_POD_IP}}:{{SPARK_UI_PORT}}
#7141
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
Conversation
http://{{SPARK_DRIVER_POD_IP}}:{{SPARK_UI_PORT}}
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #7141 +/- ##
======================================
Coverage 0.00% 0.00%
======================================
Files 700 701 +1
Lines 43454 43500 +46
Branches 5883 5895 +12
======================================
- Misses 43454 43500 +46 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
kyuubi-server/src/main/scala/org/apache/kyuubi/engine/KubernetesApplicationOperation.scala
Outdated
Show resolved
Hide resolved
…esApplicationOperation.scala
|
LGTM, one question, SPARK-42769 is only available since Spark 3.5, do we need to write something in docs for these requirements? |
Not necessary, this PR can also work with any spark version that supports spark on kubernetes. SPARK-42769 is only for executors to connect to driver via IP. |
|
Have updated the PR desc. |
pan3793
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see, Pod IP is retrieved by K8s client
…//{{SPARK_DRIVER_POD_IP}}:{{SPARK_UI_PORT}}`
### Why are the changes needed?
We are using [virtual-kubelet](https://github.com/virtual-kubelet/virtual-kubelet) for spark on kubernetes, and spark kubernetes pods would be allocated across kubernetes clusters.
And we use the driver POD ip as driver host, see apache/spark#40392, which is supported since spark-3.5.
The kubernetes context and namespace are virtual and we can not build the app URL by spark driver svc.
And the spark driver pod IP is accessible for our use case, so raise this PR to build the spark app url by spark driver pod id and spark ui port.
### How was this patch tested?
UT.
<img width="1532" height="626" alt="image" src="https://github.com/user-attachments/assets/5cb54602-9e79-40b7-b51c-0b873c17560b" />
<img width="710" height="170" alt="image" src="https://github.com/user-attachments/assets/6d1c9580-62d6-423a-a04f-dc6cdcee940a" />
### Was this patch authored or co-authored using generative AI tooling?
No.
Closes apache#7141 from turboFei/app_url_v2.
Closes apache#7141
1277952 [Wang, Fei] VAR
d15e6be [Cheng Pan] Update kyuubi-server/src/main/scala/org/apache/kyuubi/engine/KubernetesApplicationOperation.scala
1535e00 [Wang, Fei] spark driver pod ip
Lead-authored-by: Wang, Fei <[email protected]>
Co-authored-by: Cheng Pan <[email protected]>
Signed-off-by: Cheng Pan <[email protected]>
Why are the changes needed?
We are using virtual-kubelet for spark on kubernetes, and spark kubernetes pods would be allocated across kubernetes clusters.
And we use the driver POD ip as driver host, see apache/spark#40392, which is supported since spark-3.5.
The kubernetes context and namespace are virtual and we can not build the app URL by spark driver svc.
And the spark driver pod IP is accessible for our use case, so raise this PR to build the spark app url by spark driver pod id and spark ui port.
How was this patch tested?
UT.
Was this patch authored or co-authored using generative AI tooling?
No.