docker - Deis Cluster 和 Scale 命令之间的关系?

标签 docker deis

我有一个关于集群和扩展如何相关的问题,我无法从文档中解决这个问题。架构页面非常清晰,但也许我做了一些不正确的假设。

如果我设置了一个集群,比如说 4 个 CoreOS 主机,当我将我的应用程序推送到集群时,一个包含我的应用程序的 docker 容器将被部署到这些主机中的每一个,对吧?所以,现在我有 4 个正在运行的应用程序实例,它们将通过 deis 路由器(nginx,对吗?)进行负载平衡。或者 nginx 将在每个主机内进行负载平衡?在那种情况下,集群的负载平衡是什么?

如果我使用 deis scale 命令进行缩放,那么它会在每个主机内缩放容器吗?

因此,如果我运行 deis scale web=4,这是否意味着我现在有 16 个(负载平衡的)实例在运行?

如果不是这样,它是如何工作的?

有了像 Heroku 这样的 PaaS,“集群”就不是问题了,所以无论如何,这对我来说是新的部分。使用 Heroku,当您运行 heroku scale 时,我们会得到跨服务器运行的新无人机,但我不必设置它们将要运行的位置(集群)。所以,我正在努力解决这个问题。

我是一名开发人员,涉足运维工作,所以如果我说的很蠢,希望您能原谅我。

最佳答案

所以,我想我现在可以回答我自己的问题了,已经成功地获得了在 EC2 上运行的 DEIS 集群。

要查看正在运行的是什么,在哪里运行(从您的 Deis 目录):

make status

实际上正在运行 fleetctl list-units

这显示了它们容器中正在运行的服务,分布在您的集群中。在我的实例中,我的集群中有 3 台主机。

如果我使用 deis create 部署一个应用程序/站点,那么它将在我的三个主机之一的 Docker 容器内部署该应用程序的 1 个实例。

如果我使用 deis scale 缩放应用程序,那么我将有多个容器,每个容器运行 3 个主机中的任何一个。它们可能都位于这些主机之一或任何组合上。

因此,如果您在 3 台主机集群上运行 deis scale web=4,则将有 4 个正在运行的应用程序实例,而不是 12 个。

关于docker - Deis Cluster 和 Scale 命令之间的关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23443729/

相关文章:

reboot - 一些重启后的 CoreOS 无法使用 user_data 配置加载 etcd 单元

ssl - 域名(开发、暂存、生产)的最佳实践是什么?

wordpress - 在 Docker for Windows 上开发 wordpress 站点

docker - 在每次部署中,构建一个包含应用程序的新 docker 镜像而不是仅仅更新应用程序有什么好处?

git - Gitlab运行程序克隆在traefik之后的超时(相对路径)

ubuntu - 在 docker 镜像中生成所有语言环境

caching - Travis CI 可以缓存 docker 图像吗?

heroku - 如何使用 Deis (PaaS) 设置和部署数据库