我正在使用flanneld运行coreos。单个主机可能有多个容器在端口80上运行Web服务器。我想将静态IP路由到容器。
架构如下。
Docker Host(CoreOS)内部IP 10.20.0.1 这个主人有3个nginx容器,坐在 - 172.16.20.1 - 172.16.20.2 - 172.16.20.3
我的Google云VPC仅在主机网络级别指定,docker网络在带有法兰绒的coreos etcd2群集中指定。
我想保留一个静态IP地址,并将所有来自/来自公共IP的流量路由到其中一个容器IP地址。
例如; 104.89.255.255(公开)< - > 172.16.20.1
这对GCE来说有可能吗?
我能够在内部实现这一点,我的网站到站点vpn。但是,容器上的某些站点需要公开访问。
非常感谢提供的任何方向。
谢谢,
答案 0 :(得分:0)
您目前无法将多个外部IP连接到单个VM,但您可以使用负载均衡器,让它向您的VM发送流量,但为不同的服务发送到不同的端口。
HTTP负载均衡器可以轻松托管所有站点位于同一IP后面,并根据主机标头或请求路径引导流量。
此处有更多文档:https://cloud.google.com/compute/docs/load-balancing/http/