SeaweedFS
SeaweedFS is a high-performance distributed filesystem, optimized for working with huge number of files and also huge files.
To test it, create a PersistentVolumeClaim with seaweedfs-storage-hdd
storageClass:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: examplevol
spec:
storageClassName: seaweedfs-storage-hdd
accessModes:
- ReadWriteMany
resources:
requests:
storage: <volume size, f.e. 20Gi>
After you've created a PVC, you can see it's status (kubectl get pvc pvc_name
). Once it has the Status Bound
, you can attach it to your pod (claimName should match the name you gave your PVC):
apiVersion: v1
kind: Pod
metadata:
name: vol-pod
spec:
containers:
- name: vol-container
image: ubuntu
args: ["sleep", "36500000"]
volumeMounts:
- mountPath: /examplevol
name: examplevol
restartPolicy: Never
volumes:
- name: examplevol
persistentVolumeClaim:
claimName: examplevol
It's also possible to access your volume via WebDAV from your local machine.
Seaweedfs also supports S3 and HadoopFS
The current status is experimental, use at your own risk. Don't put there any data you don't want to lose, or data you can't easily share with others.
Choosing the disk type
Currently we have 2 pools of drives available: NVME and HDD. You can choose the required one by switching the StorageClass:
StorageClass | Storage Type | Size |
---|---|---|
seaweedfs-storage-hdd | Spinning drives | 24 TB |
seaweedfs-storage-nvme | NVME drives | 18 TB |