Storage Initializers
Last updated
Was this helpful?
Last updated
Was this helpful?
Some features in Seldon Enterprise Platform require access to external storage providers, for example, to run batch jobs.
A storage initializer mechanism similar to the one used for is used by Seldon Enterprise Platform. By default, Seldon Enterprise Platform uses the . offers compatibility with over 40 different cloud storage products and is therefore a sensible default.
However, custom storage initializers may be used by modifying the storageInitializer
values in install-values.yaml
.
Rclone storage initializers are configured using environmental variables passed as secrets in Seldon Enterprise Platform. These are configured per namespace.
Each remote storage provider needs to be configured using environment variables that follow the following pattern:
Once the remote is configured, the modelUri
that is compatible with rclone
takes the form:
For example modelUri: minio:sklearn/iris
, or modelUri: gs:seldon-models/cifar10
. Rclone will remove the leading slashes for buckets so this is equivalent to minio://sklearn/iris
or gs://seldon-models/cifar10
.
Below you will find a few example configurations. For other storage providers, please consult the .
Please note that you need the labels secret-type: bucket
and seldon-deploy: "true"
on your secret for it to be correctly picked up by Enterprise Platform. Without these labels it will not show in the secrets dropdown in the deployment creation wizard.
This is an example of how to set up secrets so that Rclone may access .
For GCP/GKE, you will need create a service-account key and save it as a local json
file.
Next, generate keys
locally using the gcloud
tool. This will create your service-account key file at gcloud-application-credentials.json
:
Use the content of the locally saved gcloud-application-credentials.json
file to create the rclone secret:
If for some reason you would like to use a different storage initializer for batch jobs, e.g. KFServing storage initializer, you can set this by modifying install-values.yaml
:
Reference:
Reference: .
Reference:
Reference:
Reference:
First make sure that you have a gcloud service account ([SA-NAME]@[PROJECT-ID].iam.gserviceaccount.com
) that has sufficient permissions to access the bucket with your models (i.e. Storage Object Admin
). You can check this using the .
The corresponding secret for would also need to be created: