Stork (STorage Orchestrator Runtime for Kubernetes) is an intelligent storage orchestrator for Kubernetes and a cloud native storage operator runtime scheduler plugin. Stork is one of the major components of Portworx Backup and translates decisions of a scheduler orchestration system in such a way that an external cloud native storage solution can act upon. By doing so, Stork extends Kubernetes capabilities with the help of the underlying storage provider, making it more stateful aware.
Stork can actively communicate with any type of storage driver and not just Portworx.
Stork facilitates stateful workflows such as snapshots, clones, cloud backups, and migrations. Stork provides:
- Kubernetes native mechanism for executing these workflows and makes it aware of storage and scheduler.
- A storage provider-agnostic method for executing these workflows.
Stork is an agent that needs to be installed on all clusters where you want to back up from and restore to. Stork bridges the gap between Portworx Backup running on your administration cluster, and the remaining clusters, where you need to back up from and restore to.
Stork acts as an abstraction layer between the underlying storage provider and Portworx Backup. Stork enables Portworx Backup to perform the following tasks:
- Trigger and execute backups and restores on the target cluster
- Push the Kubernetes resources to the configured object storage location
- Integrate with storage providers for taking snapshots and pushing snapshots to object storage