码头工人 - 生产中 - HA

时间:2015-11-23 07:14:05

标签: docker nfs heartbeat pacemaker drbd

如何在生产中使用主动/主动或主动/备用HA系统运行docker? 有没有指南或最佳实践?

我在想3个场景:

1)NFS - 对于两台服务器 - 准备好docker-machine并将共享NFS挂载到/var/lib/docker/ - 因此两个docker节点都应该看到相同的文件。 (使用某种文件管理器,如vnx,efs等。)

2)使用DRBD复制磁盘 - 并将其挂载到:/var/lib/docker/ - 因此数据位于两个节点上,主动节点可以挂载并运行容器,以防故障转移时其他节点挂载和启动容器

3)使用DRBD - 如上所述 - 并导出NFS服务器,将两个节点上的NFS挂载到:/var/lib/docker/ - 这样两个节点都可以挂载和运行容器,使用Heartbeat / Pacemaker来移动虚拟机-IP& DRBD切换

在生产中运行docker-container以使其具有高可用性的最佳做法是什么。

问候

1 个答案:

答案 0 :(得分:0)

持久存储仍然是容器/码头工作室中的大象。

我不建议使用您建议的任何方法。唯一的例外是,如果您将某些特定数据放入共享卷(使用卷装入)(但不是整个/var/lib/docker)。

容器空间中发生了很多事情,并且有一个volume plugins直接集成到Docker中。其中一个获得最大动力的卷插件/解决方案是Flocker,值得研究。

将数据从容器中移出后,设置HA系统变得更加容易,因为容器变得或多或少是短暂的。

然后,您可以使用KubernetesDocker SwarmDocker Datacenter之类的内容来管理/监控这些容器。