Skip to main content
Before you run the removal instructions, review any data you want to retain and back it up. This may include:
  • Telemetry and audit data: objects under s3://<bucket-name>/audit/ and other prefixes in your S3-compatible bucket
  • Model checkpoints: objects under s3://<bucket-name>/checkpoints/
  • Poolside database snapshot: take a PostgreSQL snapshot or pg_dump of the Poolside database before deletion

Overview

These steps remove the Helm releases, Kubernetes resources, and external artifacts used by a Poolside upstream Kubernetes deployment. The removal process includes the following phases:
  1. Uninstall the inference stack: Uninstall the inference-stack Helm release if you deployed local model inference.
  2. Uninstall the platform: Uninstall the poolside-deployment Helm release.
  3. Delete cluster resources: Delete the namespaces that Poolside used, which removes the remaining workloads, secrets, ConfigMaps, Ingress objects, and persistent volume claims.
  4. Clean up external artifacts: Remove remaining artifacts such as DNS records, TLS certificates, container images, the Poolside database, and S3 objects.

Prerequisites

These instructions assume that you deployed Poolside using Install on upstream Kubernetes. Before you start, make sure you have:
  • Cluster administrator access to the Kubernetes cluster
  • helm 3.12 or later
  • kubectl

Step 1: Uninstall the inference stack

If you deployed local model inference with the inference-stack chart, uninstall it before you remove the application chart. If you do not run local model inference, skip this step. List the Helm releases in the poolside-models namespace:
helm list -n poolside-models
Uninstall the inference stack:
helm uninstall inference-stack -n poolside-models
Wait for the inference pods to terminate. Continue when kubectl get pods -n poolside-models shows no Poolside pods remaining:
kubectl get pods -n poolside-models

Step 2: Uninstall the platform

List the Helm releases in the poolside namespace:
helm list -n poolside
Uninstall the poolside-deployment release:
helm uninstall poolside-deployment -n poolside
Wait for the application pods to terminate. Continue when kubectl get pods -n poolside shows no Poolside pods remaining:
kubectl get pods -n poolside

Step 3: Delete cluster resources

Deleting the namespaces removes the remaining workloads, secrets, ConfigMaps, Ingress objects, and persistent volume claims that Poolside created. Delete the Poolside namespaces:
kubectl delete namespace poolside
kubectl delete namespace poolside-models
kubectl delete namespace poolside-sandbox

Step 4: Clean up external artifacts

Clean up the following external resources separately. Remove only the resources that you no longer need. Container images Delete the Poolside container images and repositories from your registry. The exact procedure depends on the registry you use. S3-compatible object storage Delete the model checkpoints and any audit exports from the bucket you set as global.s3.bucket:
aws s3 rm s3://<bucket-name>/checkpoints --recursive --region <aws-region>
aws s3 rm s3://<bucket-name>/audit --recursive --region <aws-region>
If you use a non-AWS S3 endpoint, add the --endpoint-url flag and set it to your S3 endpoint URL. If you customized audit.s3.bucket or audit.s3.prefix, delete audit exports from those values instead of s3://<bucket-name>/audit. If your bucket only stored Poolside data, you can delete the bucket itself. PostgreSQL database Drop the Poolside database and role on your PostgreSQL server. If the database is shared, drop only the Poolside-owned schemas. TLS certificates and DNS records Remove the DNS records that pointed to your apiHost and webHost, and revoke or delete the TLS certificates that you issued for those hostnames. Local files Delete the extracted Helm bundle directory, your poolside_values.yaml and inference_values.yaml files, and any TLS material (tls.crt, tls.key, ca-bundle.crt) that you kept on your workstation. For questions about the removal process, contact Poolside support.