这个问题特定于 Rackspace,但我猜它也可以应用于像 AWS 之类的东西。
假设我有以下一组机器:1 个负载平衡 VM、2 个 Web VM 和一个数据库 VM。如果数据库仅由 Web 机器访问(通过带宽使用免费的内部 IP),并且 Web 机器仅由(公众)通过负载平衡器通过内部 IP(同样免费)访问,这是否意味着我唯一使用的带宽实际上支付的是来自负载均衡器的传入和传出费用吗?
我说得对吗?
答案1
只要您的负载均衡器也充当 Web 服务器的代理,这听起来就没错。只有直接往返于用户和从用户到您的服务器的数据才需要支付带宽费用,无论数据包是通过负载均衡器还是直接到达您的 Web 服务器。
然而,许多负载均衡器采用转发请求而不是代理请求的策略。您可能需要在客户端上仔细检查数据包实际上来自哪个 IP。
无论哪种方式,您的 Web 服务器和数据库服务器之间的内部流量都是安全的。
答案2
通常情况下是的。当然,您必须咨询您的提供商,但他们中的大多数只会对进出其网络的流量收费。例如,如果服务器位于不同的物理位置,您可能会发现您必须付费;但我不知道有哪个主机对实际的 LAN 使用量收费。
(我无法直接评论 Rackspace,因为我没有使用过它们。)
答案3
这取决于主机和您与他们的安排 - 检查他们的小字,如果没有说明,则假设服务器之间使用的带宽将计入您的配额(并且将计入两个服务器,因此查询导致 1Mbyte 离开 DB 服务器前往 Web 服务器,将计入两个配额的 1Mb)。
一般来说,我希望大多数廉价主机都会像这样计算服务器之间使用的带宽。
面向具有更大需求(即大到需要负载平衡)的大型主机可能只计算在数据中心之外传输的流量(或者可能比这更细粒度一点:他们可能会对超出您的机器所连接的 LAN 段的任何传输收费 - 但这通常是同一件事),但除非你与他们的协议明确说明这一点,或者你从相关的售前问题中得到了正确的答复,否则不要假设这一点。