关于使用 AWS 实例的浮点 IP 来设置负载均衡器的材料对我来说非常有意义,但问题是那里的所有内容都已经过时了,甚至 AWS 官方文档在任何现代版本的 Ubuntu 上都不再起作用。https://aws.amazon.com/articles/2127188135977316
所以我想人们不可能停止使用多个负载平衡器,因为这种需求应该仍然存在,对吧?今天是否有任何更新可以与 Ubuntu 16.04 配合使用,并且有大量错误和重写亚马逊自己的脚本?
现在我已经到了不存在的地步/etc/profile.d/aws-apitools-common.sh
,所以我从 Amazon Linux EC2 获取了一个副本,但现在脚本./vip_monitor.sh
不断转储出“./vip_monitor.sh: 40: [: 3: 意外操作符”,我无法阻止它。我是否应该尝试使用 Amazon Linux AMI?
答案1
因此,我最终在我的 AWS 账户上使用 HAProxy 服务器进行了设置。
基本上,您有两台运行 HAProxy 的服务器,配置几乎相同。您为主服务器分配一个辅助 IP,同时将一个新的不同弹性 IP 绑定到辅助私有 IP。
您必须设置实例以使用多个 IP,详情请参阅此处https://askubuntu.com/a/995329/57016
您还需要 awscli,可以使用以下命令安装它
apt-get install python-pip python-dev build-essential
pip install awscli --upgrade --user
export PATH=~/.local/bin:$PATH
aws configure
现在,您可以使用类似这样的命令将辅助 IP 地址从其绑定到的任何实例中提取到当前实例
aws ec2 assign-private-ip-addresses --allow-reassignment --network-interface-id <your eni ID> --private-ip-addresses 172.31.0.0
我还没有弄清楚如何检查 HAProxy 服务器是否在对面的服务器上运行,以便自动拉取辅助私有 IP,但这绝对是一个可靠的起点。