Skip to content
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

[SPARK-2750][WEB UI]Add Https support for Web UI #5664

Closed
wants to merge 29 commits into from

Conversation

WangTaoTheTonic
Copy link
Contributor

Based on #1980, as @scwf is busy doing sql stuff, I will finish this patch.

@SparkQA
Copy link

SparkQA commented Apr 23, 2015

Test build #30839 has finished for PR 5664 at commit fef5003.

  • This patch fails to build.
  • This patch merges cleanly.
  • This patch adds no public classes.
  • This patch does not change any dependencies.

@@ -1,571 +0,0 @@
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

revert this

@SparkQA
Copy link

SparkQA commented Apr 23, 2015

Test build #30841 has finished for PR 5664 at commit d80f7e9.

  • This patch fails to build.
  • This patch merges cleanly.
  • This patch adds the following public classes (experimental):
    • protected[sql] abstract class AtomicType extends DataType
    • abstract class NumericType extends AtomicType
    • class Encoder[T <: AtomicType](columnType: NativeColumnType[T]) extends compression.Encoder[T]
    • class Decoder[T <: AtomicType](buffer: ByteBuffer, columnType: NativeColumnType[T])
    • class Encoder[T <: AtomicType](columnType: NativeColumnType[T]) extends compression.Encoder[T]
    • class Decoder[T <: AtomicType](buffer: ByteBuffer, columnType: NativeColumnType[T])
    • class Encoder[T <: AtomicType](columnType: NativeColumnType[T]) extends compression.Encoder[T]
    • class Decoder[T <: AtomicType](buffer: ByteBuffer, columnType: NativeColumnType[T])
  • This patch does not change any dependencies.

@WangTaoTheTonic WangTaoTheTonic changed the title [SPARK-2750][WIP]Add Https support for Web UI [SPARK-2750][WEB UI]Add Https support for Web UI May 4, 2015
@SparkQA
Copy link

SparkQA commented May 4, 2015

Test build #31749 has finished for PR 5664 at commit 18982b4.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@WangTaoTheTonic
Copy link
Contributor Author

@vanzin
Thanks for you advise. After importing my cert into JVM ResourceManager use, I can jump to the driver UI page from RM's link.

After taking some look at the docs and codes, I rename the configs to spark.ssl.ui.* so that it can be set via spark.ssl.* by default.

@jacek-lewandowski Could you help to review yet?


logDebug(s"SSLConfiguration for file server: $fileServerSSLOptions")
logDebug(s"SSLConfiguration for Akka: $akkaSSLOptions")
logDebug(s"SSLConfiguration for Akka: $webUISSLOptions")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Akka?

@SparkQA
Copy link

SparkQA commented May 5, 2015

Test build #31824 has finished for PR 5664 at commit dfbe1d6.

  • This patch fails to build.
  • This patch merges cleanly.
  • This patch adds no public classes.

@WangTaoTheTonic
Copy link
Contributor Author

Jenkins, retest this please.

@WangTaoTheTonic
Copy link
Contributor Author

@vanzin Not sure if we should modify createAkkaConfig, please give some reference.

@SparkQA
Copy link

SparkQA commented May 5, 2015

Test build #31831 has finished for PR 5664 at commit dfbe1d6.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@vanzin
Copy link
Contributor

vanzin commented May 5, 2015

I'm not really familiar with Akka's SSL configuration, don't even know if they support those options. But if not modifying it, you should mention in the docs that the options don't apply to Akka.

@WangTaoTheTonic
Copy link
Contributor Author

@CodingCat @jacek-lewandowski We add some configs for SSLOptions (keystoreType, needClientAuth, trustStoreType), they are supported in Jetty SSL, but we have no idea if akka support them too. Could you guys give some thought?

@pwendell @andrewor14 @srowen Do you know anybody else who is familiar with Akka'\s SSL configurations?

@andrewor14
Copy link
Contributor

@vanzin @JoshRosen is this already resolved by #3571?

@vanzin
Copy link
Contributor

vanzin commented Sep 2, 2015

I don't think so; from what I remember, that PR only added SSL to the HTTP server that serves jars and files to executors, not to the server that serves the UI.

@jacek-lewandowski
Copy link
Contributor

@vanzin @andrewor14 I may take a look at this and finish or create a separate pr with my approach if you like.

@steveloughran
Copy link
Contributor

I'm not sure that YARN likes custom SSL certificates at all. Even if you do set up the RM proxy up for them, there's the issue that as they are host-wide, so every web/REST endpoint on the host can/should use the same certificate. That said, there's probably no explicit reason why the RM Proxy doesn't handle SSL except it's not been done —that'd be the place to add the code.

Note of course that web/REST clients of AM web pages redirected via the Am filter will have their communications direct with that RM proxy, using SPNEGO and any https support of the AM proxy; you can lock down the long-haul bit of the communications without adding HTTPS. It's the in-cluster TCP connections that HTTPS -in-AM would address

@jacek-lewandowski
Copy link
Contributor

@WangTaoTheTonic can you rebase and squash?

@WangTaoTheTonic
Copy link
Contributor Author

@jacek-lewandowski Okay I will rebase this in a week or so.

@jacek-lewandowski
Copy link
Contributor

@WangTaoTheTonic if you don't have time, would you mind if i take your commits, rebase, squash them and add few changes?

@WangTaoTheTonic
Copy link
Contributor Author

@jacek-lewandowski Sure. I'm glad for this.

@andrewor14
Copy link
Contributor

@WangTaoTheTonic would you mind closing this patch for now? We can always re-open it later if there is interest or if @jacek-lewandowski takes over.

@jacek-lewandowski
Copy link
Contributor

I rebased this pr on the current master with a little pain 😄
Will create a new PR soon.

@WangTaoTheTonic
Copy link
Contributor Author

ok once jacky raise the PR, I will close this one.

@pritpalm
Copy link

I want to enable https on spark UI. I added following config to spark-defaults.config, but when we access spark ui via https::/:8080 or https://:443 or https://:8480, it's not able to connect.

spark.ui.https.enabled true
spark.ssl.keyPassword abcd
spark.ssl.keyStore rtmqa-clientid.jks
spark.ssl.keyStorePassword changeit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants