Uninstall
Removing SkelaDB is a two-step decision: removing the platform, which keeps every
database, and deleting the data, which cannot be undone. uninstall.sh in the
release bundle does both, and refuses to delete data unless you confirm the exact
cluster.
Remove the platform, keep every database
SKELA_KUBE_CONTEXT=<context> ./uninstall.sh
It deletes the controller, the proxy, their Services, NetworkPolicies, RBAC and
platform certificates (everything the installer labelled
app.kubernetes.io/part-of=skeladb) and stops every database compute and
storage pool by scaling it to zero. It keeps:
- the
skelanamespace and the Branch resource definition (deleting either would delete every branch); - every Branch, disk (PersistentVolumeClaim) and Secret: API tokens, the license key, project identities and database passwords;
- everything in your bucket.
Running ./install.sh apply again with the same settings brings the platform back
and the branches resume. Disks survive because the bundled StorageClass uses
reclaimPolicy: Retain; use Retain for your own classes too.
Delete every database
SKELA_KUBE_CONTEXT=<context> SKELA_UNINSTALL_CONFIRM=<context> ./uninstall.sh --delete-data
It refuses unless SKELA_UNINSTALL_CONFIRM names the same context. It then
deletes every Branch while the controller is still running, so each one stops its
compute and releases its disk, waits up to 30 minutes for them to go, deletes the
platform, the skela namespace and the Branch resource definition, and hands any
remaining retained disks of the namespace (storage pool and seed disks) back to
their provisioner for deletion.
It never deletes:
- backups, WAL archives and storage pool data under
skela/in your bucket. Keep them for a later restore, or delete them with your cloud tools (object lock and versioning keep them until their retention ends); - cloud identities created by the project scripts: IAM roles and policies, managed folders and their bindings, managed identities;
- the bucket itself, KMS keys and the EKS cluster created by the AWS installer.
To delete a single project’s retained backups while keeping the platform, delete
its branches and call DELETE /v1/projects/<project>/retained until it answers
purged; the console does this automatically after the project’s retention
period.
Remove the console
The console is in its own namespace and keeps its state in your management database:
kubectl delete namespace skela-cloud
The management database, its backups and your encryption key escrow are not touched; delete them yourself once you no longer need the audit trail. Remove the redirect and webhook from your WorkOS environment.
License keys
A license key cannot be revoked online and simply expires. If you are leaving SkelaDB, tell us so we do not send a renewal.