Skip to content

Commit

Permalink
Merge pull request #4169 from lsst-sqre/tickets/DM-48714
Browse files Browse the repository at this point in the history
DM-48714: Update Nublado to version 8.4.0
  • Loading branch information
rra authored Feb 5, 2025
2 parents c908b07 + 8af4ccc commit eb2912b
Show file tree
Hide file tree
Showing 15 changed files with 100 additions and 14 deletions.
2 changes: 1 addition & 1 deletion applications/nublado/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: JupyterHub and custom spawner for the Rubin Science Platform
sources:
- https://github.com/lsst-sqre/nublado
home: https://nublado.lsst.io/
appVersion: 8.3.0
appVersion: 8.4.0

dependencies:
- name: jupyterhub
Expand Down
7 changes: 6 additions & 1 deletion applications/nublado/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,11 @@ JupyterHub and custom spawner for the Rubin Science Platform
| controller.config.lab.volumeMounts | list | `[]` | Volumes that should be mounted in lab pods. |
| controller.config.lab.volumes | list | `[]` | Volumes that will be in lab pods or init containers. This supports NFS, HostPath, and PVC volume types (differentiated in source.type). |
| controller.config.logLevel | string | `"INFO"` | Level of Python logging |
| controller.config.metrics.application | string | `"nublado"` | Name under which to log metrics. Generally there is no reason to change this. |
| controller.config.metrics.enabled | bool | `false` | Whether to enable sending metrics |
| controller.config.metrics.events.topicPrefix | string | `"lsst.square.metrics.events"` | Topic prefix for events. It may sometimes be useful to change this in development environments. |
| controller.config.metrics.schemaManager.registryUrl | string | Sasquatch in the local cluster | URL of the Confluent-compatible schema registry server |
| controller.config.metrics.schemaManager.suffix | string | `""` | Suffix to add to all registered subjects. This is sometimes useful for experimentation during development. |
| controller.config.pathPrefix | string | `"/nublado"` | Path prefix that will be routed to the controller |
| controller.googleServiceAccount | string | None, must be set when using Google Artifact Registry | If Google Artifact Registry is used as the image source, the Google service account that has an IAM binding to the `nublado-controller` Kubernetes service account and has the Artifact Registry reader role |
| controller.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for the controller image |
Expand Down Expand Up @@ -110,7 +115,7 @@ JupyterHub and custom spawner for the Rubin Science Platform
| jupyterhub.hub.extraVolumeMounts | list | `hub-config` and the Gafaelfawr token | Additional volume mounts for JupyterHub |
| jupyterhub.hub.extraVolumes | list | The `hub-config` `ConfigMap` and the Gafaelfawr token | Additional volumes to make available to JupyterHub |
| jupyterhub.hub.image.name | string | `"ghcr.io/lsst-sqre/nublado-jupyterhub"` | Image to use for JupyterHub |
| jupyterhub.hub.image.tag | string | `"8.3.0"` | Tag of image to use for JupyterHub |
| jupyterhub.hub.image.tag | string | `"8.4.0"` | Tag of image to use for JupyterHub |
| jupyterhub.hub.loadRoles.server.scopes | list | `["self"]` | Default scopes for the user's lab, overridden to allow the lab to delete itself (which we use for our added menu items) |
| jupyterhub.hub.networkPolicy.enabled | bool | `false` | Whether to enable the default `NetworkPolicy` (currently, the upstream one does not work correctly) |
| jupyterhub.hub.resources | object | See `values.yaml` | Resource limits and requests |
Expand Down
43 changes: 40 additions & 3 deletions applications/nublado/templates/controller-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,24 @@ spec:
env:
- name: EXTERNAL_INSTANCE_URL
value: {{ .Values.global.baseUrl | quote }}
{{- if .Values.controller.config.metrics.enabled }}
- name: "KAFKA_BOOTSTRAP_SERVERS"
valueFrom:
secretKeyRef:
name: "nublado-kafka"
key: "bootstrapServers"
- name: "KAFKA_SECURITY_PROTOCOL"
valueFrom:
secretKeyRef:
name: "nublado-kafka"
key: "securityProtocol"
- name: "KAFKA_CLIENT_CERT_PATH"
value: "/etc/nublado-kafka/user.crt"
- name: "KAFKA_CLIENT_KEY_PATH"
value: "/etc/nublado-kafka/user.key"
- name: "KAFKA_CLUSTER_CA_PATH"
value: "/etc/nublado-kafka/ca.crt"
{{- end }}
{{- if .Values.controller.slackAlerts }}
- name: "NUBLADO_SLACK_WEBHOOK"
valueFrom:
Expand Down Expand Up @@ -66,6 +84,20 @@ spec:
mountPath: "/etc/secrets"
readOnly: true
{{- end }}
{{- if .Values.controller.config.metrics.enabled }}
- name: "kafka"
mountPath: "/etc/nublado-kafka/ca.crt"
readOnly: true
subPath: "ssl.truststore.crt"
- name: "kafka"
mountPath: "/etc/nublado-kafka/user.crt"
readOnly: true
subPath: "ssl.keystore.crt"
- name: "kafka"
mountPath: "/etc/nublado-kafka/user.key"
readOnly: true
subPath: "ssl.keystore.key"
{{- end }}
- name: "podinfo"
mountPath: "/etc/podinfo"
{{- with .Values.controller.nodeSelector }}
Expand All @@ -82,14 +114,19 @@ spec:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
- name: "config"
configMap:
name: "nublado-controller-config"
{{- if eq "docker" .Values.controller.config.images.source.type }}
- name: "docker-creds"
secret:
secretName: "pull-secret"
{{- end }}
- name: "config"
configMap:
name: "nublado-controller-config"
{{- if .Values.controller.config.metrics.enabled }}
- name: "kafka"
secret:
secretName: "nublado-kafka"
{{- end }}
- name: "podinfo"
downwardAPI:
items:
Expand Down
16 changes: 16 additions & 0 deletions applications/nublado/templates/kafka-access.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{{- if .Values.controller.config.metrics.enabled -}}
apiVersion: access.strimzi.io/v1alpha1
kind: KafkaAccess
metadata:
name: "nublado-kafka"
spec:
kafka:
name: "sasquatch"
namespace: "sasquatch"
listener: "tls"
user:
kind: "KafkaUser"
apiGroup: "kafka.strimzi.io"
name: "app-metrics-nublado"
namespace: "sasquatch"
{{- end }}
2 changes: 1 addition & 1 deletion applications/nublado/values-base.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ controller:
- name: "inithome"
image:
repository: "ghcr.io/lsst-sqre/nublado-inithome"
tag: "8.3.0"
tag: "8.4.0"
privileged: true
volumeMounts:
- containerPath: "/home"
Expand Down
2 changes: 1 addition & 1 deletion applications/nublado/values-idfdemo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ controller:
- name: "inithome"
image:
repository: "ghcr.io/lsst-sqre/nublado-inithome"
tag: "8.3.0"
tag: "8.4.0"
privileged: true
volumeMounts:
- containerPath: "/home"
Expand Down
4 changes: 3 additions & 1 deletion applications/nublado/values-idfdev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ controller:
- name: "inithome"
image:
repository: "ghcr.io/lsst-sqre/nublado-inithome"
tag: "8.3.0"
tag: "8.4.0"
privileged: true
volumeMounts:
- containerPath: "/home"
Expand Down Expand Up @@ -77,6 +77,8 @@ controller:
volumeName: "project"
- containerPath: "/scratch"
volumeName: "scratch"
metrics:
enabled: true
jupyterhub:
hub:
db:
Expand Down
2 changes: 1 addition & 1 deletion applications/nublado/values-idfint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ controller:
- name: "inithome"
image:
repository: "ghcr.io/lsst-sqre/nublado-inithome"
tag: "8.3.0"
tag: "8.4.0"
privileged: true
volumeMounts:
- containerPath: "/home"
Expand Down
2 changes: 1 addition & 1 deletion applications/nublado/values-idfprod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ controller:
- name: "inithome"
image:
repository: "ghcr.io/lsst-sqre/nublado-inithome"
tag: "8.3.0"
tag: "8.4.0"
privileged: true
volumeMounts:
- containerPath: "/home"
Expand Down
2 changes: 1 addition & 1 deletion applications/nublado/values-roe.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ controller:
- name: "inithome"
image:
repository: "ghcr.io/lsst-sqre/nublado-inithome"
tag: "8.3.0"
tag: "8.4.0"
privileged: true
volumeMounts:
- containerPath: "/home"
Expand Down
2 changes: 1 addition & 1 deletion applications/nublado/values-summit.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ controller:
- name: "inithome"
image:
repository: "ghcr.io/lsst-sqre/nublado-inithome"
tag: "8.3.0"
tag: "8.4.0"
privileged: true
volumeMounts:
- containerPath: "/home"
Expand Down
2 changes: 1 addition & 1 deletion applications/nublado/values-tucson-teststand.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ controller:
- name: "inithome"
image:
repository: "ghcr.io/lsst-sqre/nublado-inithome"
tag: "8.3.0"
tag: "8.4.0"
privileged: true
volumeMounts:
- containerPath: "/home"
Expand Down
24 changes: 23 additions & 1 deletion applications/nublado/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -371,6 +371,28 @@ controller:
# readOnly: true
# volumeName: "project"

metrics:
# -- Whether to enable sending metrics
enabled: false

# -- Name under which to log metrics. Generally there is no reason to
# change this.
application: "nublado"

events:
# -- Topic prefix for events. It may sometimes be useful to change this
# in development environments.
topicPrefix: "lsst.square.metrics.events"

schemaManager:
# -- URL of the Confluent-compatible schema registry server
# @default -- Sasquatch in the local cluster
registryUrl: "http://sasquatch-schema-registry.sasquatch.svc.cluster.local:8081"

# -- Suffix to add to all registered subjects. This is sometimes useful
# for experimentation during development.
suffix: ""

# JupyterHub configuration handled directly by this chart rather than by Zero
# to JupyterHub.
hub:
Expand Down Expand Up @@ -435,7 +457,7 @@ jupyterhub:
name: "ghcr.io/lsst-sqre/nublado-jupyterhub"

# -- Tag of image to use for JupyterHub
tag: "8.3.0"
tag: "8.4.0"

# -- Resource limits and requests
# @default -- See `values.yaml`
Expand Down
3 changes: 3 additions & 0 deletions applications/sasquatch/charts/app-metrics/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ globalAppConfig:
- "username"
- "notebook"
- "repo"
nublado:
influxTags:
- "username"
wobbly:
influxTags:
- "service"
Expand Down
1 change: 1 addition & 0 deletions applications/sasquatch/values-idfdev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ app-metrics:
apps:
- gafaelfawr
- mobu
- nublado
- wobbly

backup:
Expand Down

0 comments on commit eb2912b

Please sign in to comment.