Upgrade
TOC
Migrating from the Workbench Cluster PluginMigrate Existing WorkspacesVerify the Service MigrationRestore a Legacy Jupyter Workspace URL PrefixMigrating from Kubeflow NotebookProcedureMigrating from the Workbench Cluster Plugin
Starting with v0.2.0, Workbench is delivered as an OLM Helm operator instead of a Cluster Plugin. There is no in-place upgrade between these forms.
-
Back up the existing Workbench resources:
-
In Administrator > Marketplace > Cluster Plugins, uninstall the earlier Workbench cluster plugin. Preserve user PVCs, retained
WorkspaceKindresources, and theaml-workbench-configConfigMap; the operator adopts or reapplies these resources. -
Enable Workbench by setting
spec.components.workbench.managementStatetoManagedin thedefaultAmlCluster. Alauda AI installs and manages the Workbench Operator and its resources; do not create aWorkbenchcustom resource manually. For the normal installation path, see Install Workbench. -
Verify the existing Workspaces and their PVCs are still present, then create and connect to a test Workbench. See Migrate Existing Workspaces before declaring the migration complete.
If the previous installation relied on the Elyra KFP run-URL redirect, set spec.components.workbench.values.global.istio.enabled: true in the default AmlCluster. Istio integration is optional and disabled by default.
Migrate Existing Workspaces
The current Workbench controller creates each Workspace Service with the ws- prefix. For example, a Workspace named jupyter uses the Service ws-jupyter. The Workbench Skipper routes use that Service name.
Workspaces that were created by an earlier controller keep their existing Service named after the Workspace. Kubernetes Services cannot be renamed. Without the migration supplied by the current controller, the new route can return 502 because ws-<workspace-name> does not exist.
After the Workbench Operator and its workspace-controller have been upgraded to a version that includes this migration, the controller automatically migrates every controller-owned legacy Service:
- It creates
ws-<workspace-name>with the same selector and ports as the existing Service. - On the next reconciliation, it deletes the old
<workspace-name>Service.
The Workspace Pod and PVC are not restarted or deleted. The temporary overlap ensures that the old Service remains available until the new one exists.
Verify the Service Migration
List every Workspace and its controller-owned Service:
For each Workspace named <workspace-name> in namespace <namespace>, verify that the matching Service is named ws-<workspace-name>:
If the new Service has not appeared, confirm that workspace-controller is running and inspect its logs. Do not manually rename a Service; Kubernetes does not support Service renames.
Restore a Legacy Jupyter Workspace URL Prefix
Older retained Jupyter WorkspaceKind resources can set NB_PREFIX and NOTEBOOK_BASE_URL without the /aml segment. The browser URL contains /clusters/<cluster>/aml/aml-workbench/..., so those Workspaces can load incorrectly even after their Service migration is complete.
Inspect the environment configuration in the retained WorkspaceKind:
For a legacy Jupyter WorkspaceKind, run kubectl edit workspacekind <workspacekind-name> and update only these values to include /aml:
Save the WorkspaceKind, then restart each affected Workspace from the Workbench page so the Pod receives the new environment variables. Its PVC is preserved. Finally, connect to the Workspace and confirm that it opens without a 502 response or incorrect asset URLs.
Migrating from Kubeflow Notebook
Workbench is NOT compatible with "Kubeflow Notebook" (Alauda AI <= 1.3). You need to create new "workbench" instances, the "Kubeflow Notebook" will be moved to "Advanced - Kubeflow" in the left navigation bar.
We recommend moving to Workbench because "Kubeflow Notebook" will be deprecated in upcoming upstream Kubeflow releases.
You can keep the PVCs used by "Kubeflow Notebook" instances in Alauda AI 1.3. Delete the Notebook instance and mount the PVC into new Workbench instances so data in your Notebook instance remains available. (NOTE Data in the container will be lost, just as when you've used pip install to install packages to the system instead of a virtual environment.)
Procedure
- Log in and open the Alauda AI page.
- Go to Workbench to open the list.
- Click Create and fill in the required fields.
- In Home Directory, select the PVC used by the previous Notebook.