Docker Ip故障切换

Docker Ip故障切换,docker,ip,failover,Docker,Ip,Failover,我在正确配置具有ip故障切换的docker容器时遇到了一些问题 我在系统管理方面不是很好,但是我已经正确地配置了我的ip故障转移,我想用我的docker容器绑定他 我不知道该怎么做,我找不到任何能解释这一点的资源 当我从web转到我的主ip(Debian 195.x.x.x)时,我可以看到他在运行(apache2默认页面),当我从web转到ip故障切换时,我还可以看到我的Debian服务器上的apache2默认页面),在这一点上,我认为没问题 所以,当我跑步时: docker run -d --

我在正确配置具有ip故障切换的docker容器时遇到了一些问题

我在系统管理方面不是很好,但是我已经正确地配置了我的ip故障转移,我想用我的docker容器绑定他

我不知道该怎么做,我找不到任何能解释这一点的资源

当我从web转到我的主ip(Debian 195.x.x.x)时,我可以看到他在运行(apache2默认页面),当我从web转到ip故障切换时,我还可以看到我的Debian服务器上的apache2默认页面),在这一点上,我认为没问题

所以,当我跑步时:

docker run -d --name ubuntu_01 -p 62.x.x.x:9000:80 abdev/ubuntu tail -f /dev/null
62.x.x.x是我的ip故障切换,之后我从web转到ip故障切换,但这里又是我的默认页面(apache2 Debian,而不是我的docker容器Ubuntu)

我误解了什么?欢迎提供任何资源、线索或帮助

对不起,我的英语不好,我尽力做到最好。

这是您的网络:

目前,您可能只有一台Docker主机,但进行IP故障切换的目的是能够将流量切换到另一台主机,而无需用户更改目标IP地址

假设您有两个相同的docker主机,除了它们的主网络接口的IP地址(
eth0

您希望在两台主机上运行docker容器,并且希望在容器中运行的apache web服务器对每个主机的2个IP地址负责

在docker主机A上,使用
docker run-p 9000:80…
启动docker容器

在docker主机B上,也使用
docker run-p 9000:80…
启动docker容器


现在,在主机提供商管理面板上,将IP故障转移
62.1.2.3
分配给主机A,您将能够:

  • 使用
    http://62.1.2.3:9000/
  • 使用
    http://192.0.0.17:9000/
  • 使用
    http://192.0.0.47:9000/
稍后,在主机提供商管理面板上,将IP故障转移
62.1.2.3
分配给主机B,您将能够:

  • 使用
    http://62.1.2.3:9000/
  • 使用
    http://192.0.0.17:9000/
  • 使用
    http://192.0.0.47:9000/


您还可以使用
192.0.0.17
192.0.0.47
IP地址查询您的web服务器,这一点很重要,至少可以测试web服务器是否在两台主机上都已启动并运行,无论IP故障切换设置如何。

非常感谢@thomaslevel,这回答了我的问题

我本以为会更复杂,但最终我做到了

对于简历,我的IPFO设置如下:

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
    address 195.x.x.x
    netmask 255.255.255.0
    gateway 195.x.x.x

auto eth0:0
    iface eth0:0 inet static
    address 62.x.x.x
    netmask 255.255.255.255
使用以下命令运行我的容器:

$ docker run -it --name ubuntu_01 -p 9000:80 docker/box tail -f /dev/null
我可以从主服务器IP和IPFO从web访问我的容器

我认为这是一个基本的配置,但它的工作

我想投你的赞成票,但我禁止新成员投赞成票


再次感谢您抽出时间:)

您访问了哪个端口进行ip故障切换?或非常感谢您的回复,在本例中,我将docker容器上的62.x.x.x:9000(ip故障转移)绑定到端口80。我再说一遍,我是系统管理员和Docker的初学者:)再次感谢您的时间。所以您仍然可以访问apache2 Debian页面,对吗?您是否使用命令:docker ps检查以显示所有正在运行的容器?尝试在Debian服务器中停止apache2。为了让自己更好地理解,我制作了一个litle模式。正如您所看到的,我的主服务器(195.145.x.x)只是我的容器的网关。每个容器都有自己的ip,这是一个ip故障切换。因此,当您请求(62.156.x.x)docker容器01时,带有“网桥”或类似内容的主服务器会将http请求解除服务于良好的容器。我认为这是可能的,但就实际情况而言,我不确定该怎么办。我不知道这是否是好的做法。正如我之前所说,我不是系统管理员:IP故障转移是一个模糊的术语,可能意味着不同的事情。如果您能链接您的主机公司为您提供的IP故障切换功能的文档,我将不胜感激。感谢您的回复,这是关于IPFO配置的文档,所以您的IP故障切换只是将第二个IP地址分配给主机上的虚拟网络接口。我编辑了我的答案