You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/tutorials/pages/jupyterhub.adoc
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ The example notebook is used to demonstrate simple read/write interactions with
8
8
9
9
== Keycloak
10
10
11
-
Keycloak is installed using a https://github.com/stackabletech/demos/blob/main/stacks/jupyterhub-keycloak/keycloak.yaml[Deployment] that loads realm configuration mounted as a ConfigMap.
11
+
Keycloak is installed using a https://github.com/stackabletech/demos/blob/main/stacks/jupyterhub-keycloak/keycloak.yaml[Deployment] that loads its realm configuration mounted as a ConfigMap.
12
12
13
13
[#services]
14
14
=== Services
@@ -43,7 +43,7 @@ They are:
43
43
44
44
The keycloak and jupyterhub endpoints are defined in the jupyter hub chart values i.e. for the purposes of the demo (that does not use any pre-defined DNS settings), the ports have to be known before the jupyter hub components are deployed.
45
45
46
-
This can be achieved by having the keycloak deployment write out its co-ordinates into a ConfigMap during start-up, which can then be referenced by the JupyterHub chart like this:
46
+
This can be achieved by having the keycloak deployment write out its node URL and node IP into a ConfigMap during start-up, which can then be referenced by the JupyterHub chart like this:
47
47
48
48
[source,yaml]
49
49
----
@@ -83,14 +83,14 @@ options:
83
83
<2> This information is passed to a variable in one of the start-up config scripts
84
84
<3> And then used for JupyterHub settings (this is where port `31095` is hard-coded for the proxy service)
85
85
86
-
NOTE: The node port IP found in the ConfigMap `keycloak-address` can be used for opening the JupyterHb UI.
86
+
NOTE: The node port IP found in the ConfigMap `keycloak-address` can be used for opening the JupyterHub UI.
87
87
On Kind this can be any node - not necessarily the one where the proxy Pod is running.
88
88
This is due to the way in which Docker networking is used within the cluster.
89
89
On other clusters it might be necessary to use the exact Node on which the proxy is running.
90
90
91
91
=== Discovery
92
92
93
-
As mentioned above in <<services, Services>>, keycloak writes out its endpoint information to a ConfigMap, shown in the code section below.
93
+
As mentioned above in <<services, Services>>, a Keycloak sidecar container writes out its endpoint information to a ConfigMap, shown in the code section below.
94
94
95
95
.Writing the ConfigMap
96
96
[%collapsible]
@@ -300,7 +300,7 @@ This section of the JupyterHub configuration specifies that we are using Generic
300
300
...
301
301
----
302
302
303
-
<1> We need to either provide a list of users using `allowed_users`, or to explicitly allow _all_ users, as done here
303
+
<1> We need to either provide a list of users using `allowed_users`, or to explicitly allow _all_ users, as done here.
304
304
We will delegate this to Keycloak so that we do not have to maintain users in two places
305
305
<2> Each admin user will have access to an Admin tab on the JupyterHub UI where certain user-management actions can be carried out.
306
306
<3> Define the Keycloak scope
@@ -385,7 +385,7 @@ As mentioned in the <<services, Services>> section above, we want to define the
385
385
NOTE: When using Spark from within a notebook, please the <<provisos, Provisos>> section below.
386
386
387
387
In the same way, we can use another script to define a driver service for each user.
388
-
This is essential when using Spark from within a JupyterHUb notebook so that executor pods can be spawned from the user's kernel in a user-specific way.
388
+
This is essential when using Spark from within a JupyterHub notebook so that executor pods can be spawned from the user's kernel in a user-specific way.
389
389
This script instructs JupyterHub to use `KubeSpawner` to create a service referenced by the UID of the parent Pod.
0 commit comments