Score:1

Docker Swarm Distributed File System with local storage

jp flag

I'm looking for a distributed file system solution/network file system which can be used in the following scenario:

  • I have a Docker Swarm with many hosts, but each host is essentially self-contained and looks no different than any other host. We just use them for scaling. That means each host runs all workers needed to make the system work, and ideally one task that enters the system runs completely on the host that first started it.
  • There are several steps to processing a task. Each step generates some large file in the range of 1-10GB. Primarily, workers on each host will only work on files that are already stored locally.
  • However sometimes, a host might be overburdened and I want workers in another host to take over the remaining processing steps. To achieve this, I need the files to be stored in a shared volume which the workers in other hosts can transparently use to access files stored on another host.

In other words: Each host will have the same "network volume" mounted in some place, and it contains some files which are actually stored on the current host (these files are primarily relevant), and some files which are stored on another host. However, workers will mostly (90-95% of times) access files which are local to their host.

I need no replication (files are only relevant for 30-60 mins and after that they're no longer needed anyways) and I specifically don't want a central storage.

Throughput in the system is measured rather in minutes per task and not in tasks per second. There are few large files rather than many small files. Also, files are written once and only read once or twice.

Is there a nice solution for this? I had a look at GlusterFS, EdgeFS, InterPlanetary File System, Ceph and some others, but none seemed like the right choice.

Score:1
cn flag

You can get it done using Docker Engine plugins. These are volume plugins that docker-engine support.

  • Azure File Storage plugin
  • BeeGFS Volume Plugin
  • Blockbridge plugin
  • Contiv Volume Plugin
  • Convoy plugin
  • DigitalOcean Block Storage plugin
  • DRBD plugin
  • Flocker plugin
  • Fuxi Volume Plugin
  • gce-docker plugin
  • GlusterFS plugin
  • Horcrux Volume Plugin
  • HPE 3Par Volume Plugin
  • Infinit volume plugin
  • IPFS Volume Plugin
  • Keywhiz plugin
  • Local Persist Plugin
  • NetApp Plugin (nDVP)
  • Netshare plugin
  • Nimble Storage Volume Plugin
  • OpenStorage Plugin
  • Portworx Volume Plugin
  • Quobyte Volume Plugin
  • REX-Ray plugin
  • Virtuozzo Storage and Ploop plugin
  • VMware vSphere Storage Plugin

For more details refer the below link

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.