To remove Red Hat OpenShift Service Mesh from an existing OpenShift Container Platform instance, remove the control plane before removing the operators.

Removing the Red Hat OpenShift Service Mesh control plane

To uninstall Service Mesh from an existing OpenShift Container Platform instance, you must first delete the control plane and the Operators. Then, you must run commands to manually remove residual resources.

Removing the control plane with the web console

You can remove the Red Hat OpenShift Service Mesh control plane by using the web console.

Procedure
  1. Log in to the OpenShift Container Platform web console.

  2. Click the Project menu and choose the istio-system project from the list.

  3. Navigate to OperatorsInstalled Operators.

  4. Click Service Mesh Control Plane under Provided APIs.

  5. Click the ServiceMeshControlPlane menu kebab.

  6. Click Delete Service Mesh Control Plane.

  7. Click Delete on the confirmation dialog window to remove the ServiceMeshControlPlane.

Removing the control plane from the CLI

You can remove the Red Hat OpenShift Service Mesh control plane by using the CLI.

Procedure
  1. Log in to the OpenShift Container Platform CLI.

  2. Run this command to retrieve the name of the installed ServiceMeshControlPlane:

    $ oc get smcp -n istio-system
  3. Replace <name_of_custom_resource> with the output from the previous command, and run this command to remove the custom resource:

    $ oc delete smcp -n istio-system <name_of_custom_resource>

Removing the installed Operators

You must remove the Operators to successfully remove Red Hat OpenShift Service Mesh. Once you remove the Red Hat OpenShift Service Mesh Operator, you must remove the Kiali Operator, the Jaeger Operator, and the OpenShift Elasticsearch Operator.

Removing the Operators

Follow this procedure to remove the Operators that make up Red Hat OpenShift Service Mesh. Repeat the steps for each of the following Operators.

  • Red Hat OpenShift Service Mesh

  • Kiali

  • Jaeger

  • OpenShift Elasticsearch

Procedure
  1. Log in to the OpenShift Container Platform web console.

  2. From the OperatorsInstalled Operators page, scroll or type a keyword into the Filter by name to find each Operator. Then, click the Operator name.

  3. On the the Operator Details page, select Uninstall Operator from the Actions menu. Follow the prompts to uninstall each Operator.

Clean up Operator resources

Follow this procedure to manually remove resources left behind after removing the Red Hat OpenShift Service Mesh Operator using the OpenShift console.

Prerequisites
  • An account with cluster administration access.

  • Access to the OpenShift Container Platform Command-line Interface (CLI) also known as oc.

Procedure
  1. Log in to the OpenShift Container Platform CLI as a cluster administrator.

  2. Run the following commands to clean up resources after uninstalling the Operators. If you intend to keep using Jaeger as a stand alone service without service mesh, do not delete the Jaeger resources.

    The Operators are installed in the openshift-operators namespace by default. If you installed the Operators in another namespace, replace openshift-operators with the name of the project where the Red Hat OpenShift Service Mesh Operator was installed.

    $ oc delete validatingwebhookconfiguration/openshift-operators.servicemesh-resources.maistra.io
    $ oc delete mutatingwebhookconfigurations/openshift-operators.servicemesh-resources.maistra.io
    $ oc delete -n openshift-operators daemonset/istio-node
    $ oc delete clusterrole/istio-admin clusterrole/istio-cni clusterrolebinding/istio-cni
    $ oc delete clusterrole istio-view istio-edit
    $ oc delete clusterrole jaegers.jaegertracing.io-v1-admin jaegers.jaegertracing.io-v1-crdview jaegers.jaegertracing.io-v1-edit jaegers.jaegertracing.io-v1-view
    $ oc get crds -o name | grep '.*\.istio\.io' | xargs -r -n 1 oc delete
    $ oc get crds -o name | grep '.*\.maistra\.io' | xargs -r -n 1 oc delete
    $ oc get crds -o name | grep '.*\.kiali\.io' | xargs -r -n 1 oc delete
    $ oc delete crds jaegers.jaegertracing.io
    $ oc delete svc admission-controller -n <operator-project>
    $ oc delete project <istio-system-project>