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
systemctl
service,/etc/pwx
and/opt/pwx
directories, 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 get
command to display the name of your Portworx storage cluster and specify your namespace:kubectl get -n kube-system storagecluster <storagecluster-name>
Enter the
kubectl edit
command to modify your storage cluster and specify your namespace:kubectl edit -n kube-system storagecluster <storagecluster-name>
Modify your
StorageCluster
object, adding thedeleteStrategy
field with either theUninstall
orUninstallAndWipe
type:
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 delete
command, specifying the name of yourStorageCluster
object and specify your namespace:kubectl delete StorageCluster <your-storagecluster-name> -n kube-system
noteThis operation can take several minutes to complete.
Delete the operator:
kubectl delete deployment -n <namespace> portworx-operator