【发布时间】:2015-02-20 21:46:28
【问题描述】:
我是 Google 计算引擎的新手,我正在尝试设置具有 2 个用于服务网页的 VM 的网络负载平衡。
例如,我有 2 个虚拟机 - app1 和 app2 - 都有 apache 服务器并提供简单的网页。
两个 VM 都运行 Red Hat Enterprise Linux Server 7.0 (Maipo) 版
我可以通过浏览器中的 IP 访问这两个网页。
我创建了网络负载平衡设置,两个应用在目标池中都显示为绿色,这意味着负载平衡器能够连接到两个虚拟机。
但是,当我点击负载均衡器的 IP 时,它只从一台服务器呈现页面。如果我手动停止 VM 中的服务器,负载均衡器 IP 将重定向到其他应用程序。我相信负载均衡器能够识别两个虚拟机的健康状况并能够重定向。
但它并没有平衡流量。谁能帮我解决这个问题?
【问题讨论】:
-
您是否在创建目标池时确认了会话亲和性?
-
我不想从初始设置的会话亲和性开始,所以没有启用它。根据文档,如果我启用了与客户端 IP 的会话亲和性,那么这是正确的。但没有会话亲和性,它应该循环访问两个虚拟机。
-
我认为网络负载均衡器不会在循环基础上转发流量。我能够使用我拥有的负载平衡器设置对其进行测试。根据文档“默认情况下,为了将流量分配给实例,Google Compute Engine 根据源 IP 和端口以及目标 IP 和端口的哈希值选择一个实例。” [1]cloud.google.com/compute/docs/load-balancing/network
-
哦。这可能是一个原因。但根据他们提供的视频,它应该进行循环平衡。我现在应用了会话亲和性,它似乎按预期工作。
-
我会将我的评论作为答案发布,以便您接受它可能会帮助其他人解决类似问题。
标签: load-balancing google-compute-engine