Currently, we use Minio deployment on open-source platforms like OpenWhisk. While this works well for local deployments, users also want to deploy Kubernetes-based FaaS platforms to the cloud. There, we need to support both the remote Minio deployment and the use of support using cloud-native storage like S3 or Blob Storage.
Solution
Functions deployed to platforms like OpenWhisk, Fission, and Knative should be able to use a configurable storage type. Depending on the type, we select the wrappers that have to be added and configure environment variables in a function to access the storage correctly.
Challenges and implementation steps:
We should have an additional configuration section in JSON and/or CLI switch "--storage ".
Storage type should be cached as a part of the function. Changing the storage type requires redeployment to update wrappers and environment variables.
Users provide the configuration to access the storage, like the address of Minio and access keys or Azure resource group. Alternatively, we deploy it on-the-fly - except for Minio, which needs to be deployed earlier.
Currently, we use Minio deployment on open-source platforms like OpenWhisk. While this works well for local deployments, users also want to deploy Kubernetes-based FaaS platforms to the cloud. There, we need to support both the remote Minio deployment and the use of support using cloud-native storage like S3 or Blob Storage.
Solution
Functions deployed to platforms like OpenWhisk, Fission, and Knative should be able to use a configurable storage type. Depending on the type, we select the wrappers that have to be added and configure environment variables in a function to access the storage correctly.
Challenges and implementation steps: