Gestire più volumi persistenti per un Rothinkdb Docker Swarm

Sto attualmente utilizzando RethinkDB tutti i server cloud collegandoti manualmente ad each server durante l'installazione. Sono interessato a passare ad un approccio Swarm per rendere più facile la scalatura e il failover. L'approccio attuale è ingombrante per scalare.

Nell'attuale approccio manuale, creo semplicemente una cartella locale su ciascun server per RDB e il assembly come un volume per memorizzare i suoi dati. Tuttavia, utilizzando uno Swarm significa che avrei bisogno di gestire i volumi in modo più dinamico. Ogni contenitore avrà bisogno di un volume distinto per tenere separati i dati in caso di errori.

Qualche raccomandazione su come gestire questo scenario? Molti tutori che ho visto finora parlano di Flocker per gestire l'archiviazione persistente, ma non riesco a vedere che viene trattato dynamicmente.

Attualmente sto combattendo con una situazione come questa. Ho creato una correzione temporanea con GlusterFS.

Quello che fai è installare GlusterFS su tutti i nodes Docker e montare le cartelle. In questo modo i dati esiste in tutti i nodes. Ma questo è less ideale se si dispone di un sacco di scritture. Questo potrebbe essere lento a causa del modo in cui Gluster tratta la replica dei dati per impedire la perdita di dati. È solido, ma ho qualche problema con la velocità.

Nel tuo caso vorrei suggerire di guardare in Flocker. Flocker è un plugin di volume che migra i dati quando un contenitore si sposta in un altro host. Non ho avuto alcuna esperienza con esso, ma nel mio caso il concetto di Flocker rende inutile, ho bisogno dei miei dati in più contenitori su più host (Read only) Ecco where è entrato in gioco Gluster