Stork is the Portworx's storage scheduler for Kubernetes that helps achieve even tighter integration of Portworx with Kubernetes. It allows users to co-locate pods with their data, provides seamaless migration of pods in case of storage errors and makes it easier to create and restore snapshots of Portworx volumes
Stork consists of 2 components, the Stork scheduler and an extender. Both of these components run in HA mode with 3 replicas by default.
Install using the Portworx spec generator
When installing Portworx through the Portworx spec generator page in Portworx Central, you can select Stork to be installed along with Portworx.
If you are using curl to fetch the Portworx spec, you can add
stork=true to the parameter list to include Stork specs in the generated file.
If you want to install Stork manually, you can follow the steps mentioned on the Stork project page
Using Stork with your applications
To take advantage of the features of Stork, it needs to be used as the scheduler for your applications. On newer versions of stork this is enabled by default with the webhook controller when Stork is enabled.
webhook-controller is disabled, you need to specify Stork as the
scheduler to be used when creating your applications. This can be done by adding
schedulerName: stork to your application.
An example of a mysql deployment which uses Stork as the scheduler can be found here.
Snapshots with Stork
With Stork you can create and restore snapshots of Portworx volumes from Kubernetes. Instructions to perform these operations can be found here
Portworx, Inc. welcomes contributions to Stork, which is open-source and repository is at https://github.com/libopenstorage/stork