Uninstall Portworx from a Kubernetes cluster using the Operator
If you’re using the Portworx Operator, you can uninstall Portworx by adding a delete strategy to your
StorageCluster object, then deleting it. When uninstalling, you may choose to either keep the the data on your drives, or wipe them completely:
- Uninstall: will remove the Kubernetes objects, Portworx
/opt/pwxdirectories, and all traces of Portworx on the nodes. The drives will not be formatted and none the Portworx Metadata in the KVDB will be deleted. You may need to Uninstall Portworx if you installed Portworx in the wrong namespace.
- Uninstall and wipe: will remove all of the resources listed in the “Uninstall” procedure, and also removes (formats) all data from your disks permanently, including the Portworx metadata. You may want to perform an uninstall and wipe when you decommission a cluster.
- You must already be running Portworx through the Operator, this method will not work for other Portworx deployments
kubectl getcommand to display the name of your Portworx storage cluster and specify your namespace:
kubectl get -n kube-system storagecluster <storagecluster-name>
kubectl editcommand to modify your storage cluster and specify your namespace:
kubectl edit -n kube-system storagecluster <storagecluster-name>
StorageClusterobject, adding the
deleteStrategyfield with either the
Uninstall Portworx only:
apiVersion: core.libopenstorage.org/v1 kind: StorageCluster metadata: name: portworx namespace: kube-system spec: deleteStrategy: type: Uninstall
Uninstall Portworx and wipe all drives:WARNING: Wipe operations remove all data from your disks permanently including the Portworx metadata, use caution when applying the DeleteStrategy spec.
apiVersion: core.libopenstorage.org/v1 kind: StorageCluster metadata: name: portworx namespace: kube-system spec: deleteStrategy: type: UninstallAndWipe
kubectl deletecommand, specifying the name of your
StorageClusterobject and specify your namespace:
kubectl delete StorageCluster <your-storagecluster-name> -n kube-systemNOTE: This operation can take several minutes to complete.
Delete the operator:
kubectl delete deployment -n <namespace> portworx-operator