加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

Nginx代理到在不同CoreOS节点上运行的许多容器

发布时间:2020-12-13 21:14:45 所属栏目:Nginx 来源:网络整理
导读:浏览网页,我发现了很多关于使用Nginx / Confd(或Haproxy或Vulcand)代理运行在同一主机上的不同Docker容器的教程.但是,我需要做的不同.概述了我的基础架构: 具有5个节点的在线CoreOS集群,全部运行etcd 在群集的每个节点上使用fleet启动不同的Docker容器(运行

浏览网页,我发现了很多关于使用Nginx / Confd(或Haproxy或Vulcand)代理运行在同一主机上的不同Docker容器的教程.但是,我需要做的不同.概述了我的基础架构:

>具有5个节点的在线CoreOS集群,全部运行etcd
>在群集的每个节点上使用fleet启动不同的Docker容器(运行WordPress应用程序的Nginx Web服务器),而不暴露端口并在etcd上编写他们的ips(使用docker检查的Docker ip).
>如果节点出现故障,我的服务将自动在另一个可用节点上移动

现在,我需要做的是让一个Nginx代理将我的流量路由到各种容器,具体取决于vhost.举个例子:

Nginx(带有酒吧IP)接收请求xxx.domain.com – >节点-1 – >自动分配ip的容器(侦听端口80)

Nginx(带有酒吧IP)接收请求yyy.domain.com – >节点-2 – >自动分配ip的容器(侦听端口80)

在这里我的问题:

>这是我的情况正确吗?我在想错吗?
>我的Nginx代理必须在CoreOS集群之外?或者我必须在每个CoreOS节点上运行它?
>我如何实现此配置?什么是最好的方式?

先感谢您!

最佳答案
您需要某种类型的nginx服务发现才能“找到”在节点上运行的容器.您可以在容器启动时将记录写入etcd,并在退出时删除并让nginx检查这些记录.

对于移动服务,您可以查看机群以进行简单的调度.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读