【发布时间】:2014-11-03 09:30:08
【问题描述】:
在某些情况下,集群文件系统实在是太多了。如果我没记错的话,这就是the data volume container pattern 的用例。但即使是 CoreOS 也需要不时更新。如果我仍然想尽量减少应用程序的停机时间,我必须将数据卷容器与应用程序容器一起移动到另一台主机上,同时更新旧主机。
是否存在最佳实践?更经常提到的解决方案是"backup" of a container 与旧主机上的docker export 和新主机上的docker import。但这将包括将 tar 文件 scp-ing 到其他主机。可以用fleet 管理吗?
【问题讨论】:
-
我希望不会。我的问题是特定于 CoreOS 的,我希望可以利用舰队来协调这个过程。话虽如此,只要不与 CoreOS 的设计相冲突,其他问题的答案确实可以适用于 CoreOS。
-
我认为这里建议的正确解决方案将是特定于应用程序的。您在 docker 卷中管理哪些类型的数据,以及您要尽量减少停机时间?
-
@jkingyens 好吧,我不确定,但我不认为这是特定于应用程序的。如果您想使用数据卷容器持久地管理数据,那么在其中存储上传的图像、数据库或其他东西都没有关系。一旦一台主机出现故障(例如,为了更新或由于缩减),数据卷容器必须迁移到另一台主机。
-
@brejoc 我认为您正在寻找专门用于解决此问题的东西(如 Flocker),否则它会被视为应用程序问题。例如,使用可以容忍丢失与单个集群成员关联的磁盘卷的数据库复制或 NoSQL 数据存储。
标签: linux deployment docker orchestration coreos