Skip to content

Configure CP S3 Storage Mount

The huddo-boards-cp chart deploys a SeaweedFS S3 service (huddo-boards-cp-s3) for file storage. This page prepares the NFS mount referenced by s3.persistence.nfs in your values file.

Warning

s3.persistence is required. Without it SeaweedFS has no durable storage and data will be lost on pod restart. Use either the NFS mount below or s3.persistence.storageClassName for dynamic provisioning.

Note

Upgrading an existing installation that uses MinIO? Follow the SeaweedFS migration guide instead — it copies your data across before the cutover. The legacy MinIO mount instructions remain available.

Deploy instructions

  1. Create the folder on the nfs.server

    sudo mkdir /pv-connections/huddo-boards-s3
    sudo chown 1000:1000 /pv-connections/huddo-boards-s3
    sudo chmod 755 /pv-connections/huddo-boards-s3
    

    Note

    As of chart 2.3.5 the SeaweedFS pod runs as user 1000 (the same as the MinIO pods), so the directory must be writable by uid 1000. The chart also chowns it for you on start, so the chown above is belt-and-braces — but it is required if you set s3.persistence.fixOwnership: false (see the chart history).

    On charts 2.1.02.3.4 SeaweedFS ran as root and required a no_root_squash export.

  2. Ensure each Node in your Kubernetes cluster can mount this location.

    Please modify the file /etc/exports on your NFS Server to include this line

    /pv-connections/huddo-boards-s3 <IP_RANGE_OF_YOUR_SERVERS>/<SUBNET_MASK>(rw)
    

    For example:

    /pv-connections/huddo-boards-s3 192.168.0.0/255.255.0.0(rw)
    
  3. Apply new NFS storage to exports

    exportfs -ra
    
  4. Reference the mount in your values file

    s3:
        persistence:
            nfs:
                server: <nfs-server-ip>
                path: /pv-connections/huddo-boards-s3
                # Optional (chart >= 2.3.5) — extra NFS mount options, e.g.:
                # mountOptions:
                #     - sec=sys