我目前正在通过在安装时手动加入每个服务器来跨云服务器使用RethinkDB。我感兴趣的是转向Swarm方法,以使扩展和故障转移更容易。目前的方法很难扩展。
在当前的手动方法中,我只需在每台服务器上为RDB创建一个本地文件夹,并将其挂载为卷来存储其数据。但是,使用Swarm意味着我需要更动态地处理卷。每个容器都需要一个不同的卷,以便在出现错误时将数据分开。
对于如何处理这种情况,有什么建议吗?到目前为止,我看到的许多教程都提到了Flocker来管理持久存储,但我看不到这是动态处理的。
发布于 2017-03-03 02:56:47
目前,我正在与这样的情况作斗争。我已经用GlusterFS创建了一个临时修复程序。
您要做的是在所有Docker节点上安装GlusterFS并挂载文件夹。这样,数据就存在于所有节点上。但是如果你有大量的写操作,这就不太理想了。这可能会很慢,因为Gluster处理数据复制的方式是为了防止数据丢失。它是可靠的,但我对速度有一些问题。
在你的情况下,我会建议你调查Flocker。Flocker是一个卷插件,当容器移动到另一个主机时,它会迁移你的数据。我没有任何使用它的经验,但在我的例子中,絮凝器的概念是无用的,我需要我的数据在多个主机上的多个容器中(只读)这就是Gluster发挥作用的地方
https://stackoverflow.com/questions/39641417
复制相似问题