-
-
Notifications
You must be signed in to change notification settings - Fork 3
feat: expose services with listener classes #562
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
Merged
Merged
Changes from all commits
Commits
Show all changes
22 commits
Select commit
Hold shift + click to select a range
29d2cd3
add listener.rs and replace usages of CurrentlySupportedListenerClasses
razvan c3b98b2
expose history pods via listener classes
razvan 90d4f03
Merge branch 'main' into feat/listener
razvan 9ffb187
expose spark connect pods via listener classes
razvan 4c1c18f
update changelog
razvan 6914675
Merge branch 'main' into feat/listener
razvan 3f79af6
connect: use persistent volumes for listener and move from deplument …
razvan 2c9488f
history: use persistent columes for listener volumes
razvan f590251
Merge branch 'main' into feat/listener
razvan e0fa982
history: create group listeners and update crd
razvan cee7f2a
history: remove services created by the operator and update test
razvan 8b3ef2e
connect: create server listeners and update crd
razvan fcd5d3a
history: refactor to use listener::build_listener
razvan 6a2f32a
connect: remove traces of deployment
razvan d9d8c6e
history: refactor rbac as per todo
razvan 3ed79fc
docs: update
razvan 2709f95
chore: remove set command to make jenkins test work
razvan 73b6245
Update CHANGELOG.md
razvan 851e25a
Update rust/operator-binary/src/connect/server.rs
razvan 2355ded
Update rust/operator-binary/src/crd/history.rs
razvan 9889fb5
doc: mention cluster_config usage status
razvan 1a6efb8
review feedback
razvan File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
30 changes: 19 additions & 11 deletions
30
docs/modules/spark-k8s/pages/usage-guide/listenerclass.adoc
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,18 +1,26 @@ | ||
= Service exposition with ListenerClasses | ||
= Service exposition with listener classes | ||
:description: Configure the Spark connect and history services exposure with listener classes: cluster-internal, external-unstable, or external-stable. | ||
|
||
The Spark operator deploys SparkApplications, and does not offer a UI or other API, so no services are exposed. | ||
However, the operator can also deploy HistoryServers, which do offer a UI and API. | ||
The operator deploys a service called `<name>-historyserver` (where `<name>` is the name of the spark application) through which the HistoryServer can be reached. | ||
== History services | ||
|
||
This service can have three different types: `cluster-internal`, `external-unstable` and `external-stable`. | ||
Read more about the types in the xref:concepts:service-exposition.adoc[service exposition] documentation at platform level. | ||
|
||
This is how the ListenerClass is configured: | ||
The operator deploys a xref:listener-operator:listener.adoc[Listener] for each spark history pod. | ||
The default is to only being accessible from within the Kubernetes cluster, but this can be changed by setting `.spec.nodes.config.listenerClass`: | ||
|
||
[source,yaml] | ||
---- | ||
apiVersion: spark.stackable.tech/v1alpha1 | ||
kind: SparkHistoryServer | ||
metadata: | ||
name: spark-history | ||
spec: | ||
clusterConfig: | ||
listenerClass: cluster-internal # <1> | ||
nodes: | ||
config: | ||
listenerClass: external-unstable # <1> | ||
---- | ||
<1> The default `cluster-internal` setting. | ||
<1> Specify one of `external-stable`, `external-unstable`, `cluster-internal` (the default setting is `cluster-internal`). | ||
|
||
For the example above, the listener operator creates a service named `spark-history-node-default` where `spark-history` is the name of the SparkHistoryServer, `node` is the service role (the only service role available for history servers) and `default` is the role group. | ||
|
||
== Connect services | ||
|
||
Connect pods can be exposed using listener classes in exactly tha same fashion as history servers. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.