Skip to content

Performant, highly available distributed storage using SeaweedFS in Docker Swarm

Notifications You must be signed in to change notification settings

cycneuramus/seaweedfs-docker-swarm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SeaweedFS Docker Swarm stack

This is a Docker Swarm stack for deploying a performant and highly available persistent storage system using SeaweedFS.

Architecture

This example stack is designed to operate on a Docker Swarm consisting of three nodes (node1, node2, node3) spread out over different locations and connected in a Wireguard mesh. In this setup, some network latency is to be expected. Therefore, to reduce the amount of network hops, we configure the SeaweedFS Filers to prefer writing to Volumes existing on the same node as itself, and likewise with the globally deployed Mounts preferring to connect to a local Filer.

Deployment

Assuming you have adjusted the Docker stack files and configs to suit your environment (for instance, your nodes are probably not called node1, node2..., you may have another Swarm overlay network than the public of this example, etc.):

  • On every Swarm node:
mkdir /mnt/{cch,cld,seaweedfs}
mkdir /mnt/seaweedfs/{filer,master,volume}
  • On a Swarm master node:
docker stack deploy -c docker-compose.yml seaweedfs

About

Performant, highly available distributed storage using SeaweedFS in Docker Swarm

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages