我目前正在云服务器上使用RethinkDB
,方法是在安装时手动加入每个服务器。我有兴趣转而使用Swarm
方法来简化扩展和故障转移。目前的方法规模很大。
在当前的手动方法中,我只是在每个服务器上为RDB
创建一个本地文件夹,并作为卷安装以存储其数据。但是,使用Swarm
意味着我需要更动态地处理卷。每个容器都需要一个不同的卷,以便在出现错误时将数据分开。
有关如何处理此方案的任何建议?到目前为止,我见过的许多教程都提到了Flocker来管理持久存储,但我看不到动态处理。
答案 0 :(得分:0)
目前我正在努力应对这种情况。我已经使用GlusterFS创建了一个临时修复程序。
您要做的是在所有Docker节点上安装GlusterFS并安装文件夹。这样,数据就存在于所有节点上。但如果你有很多写作,这不太理想。由于Gluster处理数据复制以防止数据丢失的方式,这可能会很慢。它很稳固,但我对速度有一些问题。
在你的情况下,我会建议调查Flocker。 Flocker是一个卷插件,可在容器移动到另一个主机时迁移您的数据。我没有任何经验,但在我的情况下,Flocker的概念无用,我需要在多个主机上的多个容器中的数据(只读)这是Gluster发挥作用的地方