Skip to content
This repository has been archived by the owner on Jan 31, 2024. It is now read-only.

Update for ODH Dashboard v2.8.0 release #734

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Any components that were removed with the update to ODH 1.4 have been relocated

| Manifest Version | ODH Dashboard | ODH Notebook Controller | ODH Notebook Images | Data Science Pipelines | ModelMesh |
| ---------------- | ------------- | ----------------------- | ------------------- |----------------------- | --------- |
| master | v2.5.2 | v1.6 | v1.3.1 | v1.2.1 | v0.9.0 |
| master | v2.8.0 | v1.6 | v1.3.1 | v1.2.1 | v0.9.0 |
| v1.4.1 | v2.5.2 | v1.6 | v1.3.1 | v1.2.1 | v0.9.0 |
| v1.4.0 | v2.2.1 | v1.6 | N/A | v1.2.1 | v0.9.0 |

Expand Down
5 changes: 1 addition & 4 deletions odh-dashboard/OWNERS
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
approvers:
- andrewballantyne
- dlabaj

reviewers:
- DaoDaoNoCode
- cfchase
- lavlas
- lucferbux
- maroroman
- Gkrumbach07
32 changes: 14 additions & 18 deletions odh-dashboard/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,26 +11,22 @@ For more information, visit the project [GitHub repo](https://github.com/opendat

### Folders
1. base: contains all the necessary yaml files to install the dashboard
2. overlays/authentication: Contains the necessary yaml files to install the
Open Data Hub Dashboard configured to require users to authenticate to the
OpenShift cluster before they can access the service

##### Installation
```yaml
- kustomizeConfig:
repoRef:
name: manifests
path: odh-dashboard
name: odh-dashboard
Use the `kustomize` tool to process the manifest for the `oc apply` command.

```
# Parse the base manifest to deploy ODH Dashboard WITHOUT the required configs for groups
cd manifests/base
kustomize edit set namespace <DESTINATION NAMESPACE> # Set the namespace in the manifest where you want to deploy the dashboard
kustomize build . | oc apply -f -
```

If you would like to configure the dashboard to require authentication:
```yaml
- kustomizeConfig:
overlays:
- authentication
repoRef:
name: manifests
path: odh-dashboard
name: odh-dashboard
```
# Deploy ODH Dashboard with authentication AND the default configs for groups and ODHDashboardConfig
cd manifests/overlays/odhdashboardconfig
kustomize edit set namespace <DESTINATION NAMESPACE> # Set the namespace in the manifest where you want to deploy the dashboard
kustomize build . | oc apply -f -
# You will need to re-run the previous step if you receive the error below
# error: unable to recognize "STDIN": no matches for kind "OdhDashboardConfig" in version "opendatahub.io/v1alpha"
```
8 changes: 4 additions & 4 deletions odh-dashboard/base/deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -97,11 +97,11 @@ spec:
failureThreshold: 3
resources:
limits:
cpu: 100m
memory: 256Mi
cpu: 1000m
memory: 2Gi
requests:
cpu: 100m
memory: 256Mi
cpu: 500m
memory: 1Gi
volumeMounts:
- mountPath: /etc/tls/private
name: proxy-tls
Expand Down
21 changes: 12 additions & 9 deletions odh-dashboard/base/kustomization.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,27 @@ commonLabels:
app.kubernetes.io/part-of: odh-dashboard
bases:
- ../apps
- ../modelserving
resources:
- role.yaml
- cluster-role.yaml
- service-account.yaml
- role-binding.yaml
- cluster-role-binding.yaml
- auth-delegator.clusterrolebinding.yaml
- cluster-monitoring-role-binding.yaml
- cluster-role-binding.yaml
- cluster-role.yaml
- deployment.yaml
- fetch-builds-and-images.rbac.yaml
- image-puller.clusterrolebinding.yaml
- oauth.secret.yaml
- role-binding.yaml
- role.yaml
- routes.yaml
- service-account.yaml
- service.yaml
- oauth.secret.yaml
- fetch-builds-and-images.rbac.yaml
- image-puller.clusterrolebinding.yaml
- model-serving-role.yaml
- model-serving-role-binding.yaml
images:
- name: odh-dashboard
newName: quay.io/opendatahub/odh-dashboard
newTag: v2.5.2
newTag: v2.8.0
- name: oauth-proxy
newName: registry.redhat.io/openshift4/ose-oauth-proxy
newTag: v4.8
12 changes: 12 additions & 0 deletions odh-dashboard/base/model-serving-role-binding.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: servingruntimes-config-updater
subjects:
- kind: Group
apiGroup: rbac.authorization.k8s.io
name: 'system:authenticated'
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: servingruntimes-config-updater
13 changes: 13 additions & 0 deletions odh-dashboard/base/model-serving-role.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: servingruntimes-config-updater
rules:
- verbs:
- get
apiGroups:
- ''
resources:
- configmaps
resourceNames:
- servingruntimes-config
8 changes: 4 additions & 4 deletions odh-dashboard/crd/kustomization.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ commonLabels:
app: odh-dashboard
app.kubernetes.io/part-of: odh-dashboard
resources:
- odh-dashboard-crd.yaml
- odh-quick-start-crd.yaml
- odh-document-crd.yaml
- odh-application-crd.yaml
- odhdashboardconfigs.opendatahub.io.crd.yaml
- odhquickstarts.console.openshift.io.crd.yaml
- odhdocuments.dashboard.opendatahub.io.crd.yaml
- odhapplications.dashboard.opendatahub.io.crd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,12 @@ spec:
type: boolean
disableUserManagement:
type: boolean
disableProjects:
type: boolean
disableModelServing:
type: boolean
modelMetricsNamespace:
type: string
groupsConfig:
type: object
required:
Expand Down Expand Up @@ -78,6 +84,33 @@ spec:
type: string
memory:
type: string
modelServerSizes:
type: array
items:
type: object
required:
- name
- resources
properties:
name:
type: string
resources:
type: object
properties:
requests:
type: object
properties:
cpu:
type: string
memory:
type: string
limits:
type: object
properties:
cpu:
type: string
memory:
type: string
notebookController:
type: object
required:
Expand All @@ -89,6 +122,9 @@ spec:
type: string
pvcSize:
type: string
gpuSetting:
description: Configure how the GPU field works on the Jupyter tile. One of 'autodetect' (default, fetches for information), 'hidden' (remove the field) or a number-string (eg '5') to specify a hardcoded 0 to that number options
type: string
notebookTolerationSettings:
type: object
properties:
Expand Down
37 changes: 37 additions & 0 deletions odh-dashboard/kfdef/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Dashboard

The Open Data Hub Dashboard component installs a UI which

- Shows what's installed
- Show's what's available for installation
- Links to component UIs
- Links to component documentation

For more information, visit the project [GitHub repo](https://github.com/opendatahub-io/odh-dashboard).

### Folders
1. base: contains all the necessary yaml files to install the dashboard
1. manifests/overlays/odhdashboardconfig: **OPTIONAL** overlay to deploy an ODHDashboardConfig with the odh-dashboard application. This is only required if you want to deploy configuration outside of the default ODHDashboardConfigs that will be initialized at runtime

##### Installation with KFDef
You can deploy the dashboard using the [odh-dashboard-kfnbc-test.yaml](odh-dashboard-kfnbc-test.yaml)
```
- kustomizeConfig:
repoRef:
name: manifests
path: odh-dashboard
name: odh-dashboard
```


If you would like to deploy the default configs for the Dashboard groups and `ODHDashboardConfig` you can enable the `odhdashboardconfig` overlay.
NOTE: If you deploy this with the odh-operator, you will need to allow the operator to deploy the initial version of the files and then remove the `odhdashboardconfig` from the overlay to prevent the operator from reseting any changes made to the groups or config
```
- kustomizeConfig:
overlays:
- odhdashboardconfig
repoRef:
name: manifests
path: odh-dashboard
name: odh-dashboard
```
38 changes: 38 additions & 0 deletions odh-dashboard/kfdef/odh-dashboard-kfnbc-test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
apiVersion: kfdef.apps.kubeflow.org/v1
kind: KfDef
metadata:
annotations:
kfctl.kubeflow.io/force-delete: "false"
name: odh-dashboard-kfnbc-test
namespace: opendatahub
spec:
applications:
- kustomizeConfig:
# We just need this for creating the ODH default notebook images that are provided by ODH JupyterHub
#TODO: Replace with the new ODH default notebook images as part of ODH Core
overlays:
- additional
repoRef:
name: manifests
path: jupyterhub/notebook-images
name: notebook-images
- kustomizeConfig:
repoRef:
name: manifests
path: odh-notebook-controller
name: odh-notebook-controller
- kustomizeConfig:
overlays:
# Uncomment the odhdashboard overlay below to have the operator deploy the configs
# This should be removed from the deployed kfdef immediately after the operator deploys the configs
# This will prevent the operator from reconciling the configs when they have been modified externally
#- odhdashboardconfig
repoRef:
name: manifests-dashboard # Use the odh-dashboard repo as the source for this kustomize manifest
path: manifests
name: odh-dashboard
repos:
- name: manifests
uri: https://github.com/opendatahub-io/odh-manifests/tarball/master
- name: manifests-dashboard # Use the manifests from the odh-dashboard repo
uri: https://github.com/opendatahub-io/odh-dashboard/tarball/main
7 changes: 7 additions & 0 deletions odh-dashboard/modelserving/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
commonLabels:
app: odh-dashboard
app.kubernetes.io/part-of: odh-dashboard
resources:
- servingruntimes-config.yaml
55 changes: 55 additions & 0 deletions odh-dashboard/modelserving/servingruntimes-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
kind: ConfigMap
apiVersion: v1
metadata:
name: servingruntimes-config
data:
default-config: |
apiVersion: serving.kserve.io/v1alpha1
kind: ServingRuntime
metadata:
# metadata will be overwritten by the model's metadata
name: ''
namespace: ''
labels:
name: ''
opendatahub.io/dashboard: 'true'
annotations: {}
spec:
supportedModelFormats:
- name: openvino_ir
version: opset1
autoSelect: true
- name: onnx
version: '1'
autoSelect: true
# replicas will be overwritten by the model's replica
replicas: 1
protocolVersions:
- grpc-v1
multiModel: true
grpcEndpoint: 'port:8085'
grpcDataEndpoint: 'port:8001'
containers:
- name: ovms
image: >-
registry.redhat.io/rhods/odh-openvino-servingruntime-rhel8@sha256:7ef272bc7be866257b8126620e139d6e915ee962304d3eceba9c9d50d4e79767
args:
- '--port=8001'
- '--rest_port=8888'
- '--config_path=/models/model_config_list.json'
- '--file_system_poll_wait_seconds=0'
- '--grpc_bind_address=127.0.0.1'
- '--rest_bind_address=127.0.0.1'
resources:
# resources will be overwritten by the model's resource
requests:
cpu: 1
memory: 2
limits:
cpu: 1
memory: 2
builtInAdapter:
serverType: ovms
runtimeManagementPort: 8888
memBufferBytes: 134217728
modelLoadingTimeoutMillis: 90000
7 changes: 0 additions & 7 deletions odh-dashboard/overlays/authentication/configmap.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions odh-dashboard/overlays/authentication/kustomization.yaml

This file was deleted.

8 changes: 0 additions & 8 deletions odh-dashboard/overlays/odhdashboardconfig/kustomization.yaml

This file was deleted.

Loading