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
systemctlservice,/etc/pwxand/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.
Prerequisites
- You must already be running Portworx through the Operator, this method will not work for other Portworx deployments
Uninstall Portworx
Enter the
kubectl getcommand to display the name of your Portworx storage cluster and specify your namespace:kubectl get -n kube-system storagecluster <storagecluster-name>Enter the
kubectl editcommand to modify your storage cluster and specify your namespace:kubectl edit -n kube-system storagecluster <storagecluster-name>Modify your
StorageClusterobject, adding thedeleteStrategyfield with either theUninstallorUninstallAndWipetype:
Uninstall Portworx only:
apiVersion: core.libopenstorage.org/v1
kind: StorageCluster
metadata:
name: portworx
namespace: kube-system
spec:
deleteStrategy:
type: UninstallUninstall Portworx and wipe all drives:
noteWipe 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
Enter the
kubectl deletecommand, specifying the name of yourStorageClusterobject and specify your namespace:kubectl delete StorageCluster <your-storagecluster-name> -n kube-systemnoteThis operation can take several minutes to complete.
Delete the operator:
kubectl delete deployment -n <namespace> portworx-operator