Docker 有效的CoreOS多租户场景?

Docker 有效的CoreOS多租户场景?,docker,coreos,Docker,Coreos,我目前正在修改一个使用CoreOS的场景。它可能不是第一类用例。但我想得到一个指针,如果它是有效的。由于我真的在开始掌握CoreOS,我希望我的“用例”不是完全错了 设想一个多租户应用程序,其中每个租户都应该获得自己的运行时环境。让我们使用一个运行在NoDE.js和PostgreSQL上的Web应用程序来进行数据存储。每个租户环境都将在各自容器中的CoreOS上运行。暂时不考虑数据持久性。对我来说,目前更多的是关于一般的可行性 那么为什么是科雷奥斯 目前,我试图坚持每个租户拥有独立的环境。为了优

我目前正在修改一个使用CoreOS的场景。它可能不是第一类用例。但我想得到一个指针,如果它是有效的。由于我真的在开始掌握CoreOS,我希望我的“用例”不是完全错了

设想一个多租户应用程序,其中每个租户都应该获得自己的运行时环境。让我们使用一个运行在NoDE.js和PostgreSQL上的Web应用程序来进行数据存储。每个租户环境都将在各自容器中的CoreOS上运行。暂时不考虑数据持久性。对我来说,目前更多的是关于一般的可行性

那么为什么是科雷奥斯

目前,我试图坚持每个租户拥有独立的环境。为了优化每个硬件主机的DB和web服务器实例密度,我认为CoreOS可能是正确的选择,而不是“经典”虚拟化

另一个原因是,许多租户可能只需要一个较小的DB实例和一个较小的web服务器。但可能还有其他租户需要不断扩展部署。其他人可能需要在突发时间进行临时扩展。CoreOS听起来也很适合这里

另一方面,后面必须有一个可伸缩的消息传递基础设施(RabbitMQ),它将处理大量消息。此基础架构将由所有租户使用,最多需要动态扩展。可能还会有一个“可扩展”的Elasticsearch基础设施。从我目前的“CoreOS for everything护目镜”来看,这似乎也很适合

如果整个场景都是有效的,我目前无法看到如何将通用可用网站的流量路由到不同的租户容器


假设应用程序正在app.greatthing.tld上运行。用户可以登录,并应显示为其租户提供的应用程序。这是socketplane和/或法兰绒要解决的问题吗?或者一个解决方案是如何让承租人得到正确的容器服务的?我认为这是一个普遍的问题。但至少在CoreOS容器化环境中,我根本看不出如何处理这一问题。

CoreOS使用自己的工具(如fleetctl/etcd/systemd)在集群中调度容器,并在使用flocker(实验性)重新调度到不同容器时处理持久存储。他们有自己的负载平衡器