Integration
In order to connect to a SeaweedFS, or any other S3 Compatible storage in the ArangoPlatform:
Provided Helm Chart
The platform-storage chart deploys a single-pod SeaweedFS and the ArangoPlatformStorage in one step:
helm upgrade -i platform-storage-integration ./chart/platform-storage/ --set backend=seaweedfs --set deployment.name=<ArangoDeployment Name>
Generic
SeaweedFS Access Keys
Storage Integration requires static credentials in order to access the SeaweedFS S3 API. Credentials can be provided via the Kubernetes Secret.
kubectl create secret generic credentials --from-literal 'accessKey=<SeaweedFS Access Key ID>' --from-literal 'secretKey=<SeaweedFS Secret Access Key>'
The SeaweedFS server itself is configured with matching identities via its -s3.config file (s3.json).
Object
Once the Secret is created, we are able to create ArangoPlatformStorage.
echo "---
apiVersion: platform.arangodb.com/v1beta1
kind: ArangoPlatformStorage
metadata:
name: deployment
namespace: namespace
spec:
backend:
s3:
bucketName: <Bucket Name>
bucketPath: <Bucket Path>
credentialsSecret:
name: credentials
allowInsecure: true
endpoint: http://seaweedfs.namespace.svc:8333 # SeaweedFS S3 Endpoint
" | kubectl apply -f -