Skip to content

Delete script removes shared CRDs with KServe causing breakage of existing KServe installation #541

@fabidick22

Description

@fabidick22

Describe the bug

The ModelMesh Serving uninstallation script (./scripts/delete.sh) removes CRDs that are shared with KServe, causing an existing KServe installation to break. Specifically, after running the delete script for ModelMesh Serving, KServe can no longer create InferenceService resources even though the two components were installed in different namespaces.

To Reproduce
Steps to reproduce the behavior:

  1. Have a Kubernetes cluster with KServe v0.15.0 installed and working properly (e.g., in the "kserve" namespace)
  2. Install ModelMesh Serving in another namespace:
kubectl create namespace modelmesh-serving
./scripts/install.sh --namespace modelmesh-serving --quickstart
  1. Verify both are working correctly
  2. Uninstall ModelMesh Serving:
./scripts/delete.sh --namespace modelmesh-serving
  1. Try to create an InferenceService with KServe
kubectl apply -f infer-roberta.yml -n kserve

Expected behavior

The uninstallation of ModelMesh Serving should not affect KServe functionality. After running the delete script, it should still be possible to create InferenceService resources through KServe.

Screenshots

N/A

Environment (please complete the following information):

  • KServe version: v0.15.0
  • ModelMesh Serving: latest from main branch
  • Kubernetes: v1.30
  • Cert-manager installed in the cluster

Additional context

After uninstalling ModelMesh Serving, KServe produces this error when trying to create InferenceServices:

error: resource mapping not found for name: "roberta" namespace: "kserve" from "infer-roberta.yml": no matches for kind "InferenceService" in version "serving.kserve.io/v1beta1"
ensure CRDs are installed first

The only solution is to completely reinstall KServe. The delete script should check if the CRDs it's about to remove are being used by other KServe installations or provide an option to preserve shared CRDs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions