最近我正在处理的一个AWS账户的地区数据传输成本大幅增加。 检查使用情况/帐单详情显示,“ELB数据”正在处理和“区域数据传输”增加。
所有的实例都在同一个可用区域,所以问题必须是负载平衡器。 有2个ELB用于面向互联网的stream量,2个ELB用于内部stream量,但是看看控制台,我可以看到所有4个都是经典ELB与EC2-Classic内部的实例对话,而不是VPC。
因此,2个“内部”ELB由ELB-Name-loadbalancer-xxxxxxx.eu-west-1.elb.amazonaws.com名称 – ELB-Name-loadbalancer-xxxxxxx.eu-west-1.elb.amazonaws.comforms的DNS名称ELB-Name-loadbalancer-xxxxxxx.eu-west-1.elb.amazonaws.com ,而不是由Internal-loadbalancer-xxxxxxx.eu-west-1.elb.amazonaws.com ELB-Name-loadbalancer-xxxxxxx.eu-west-1.elb.amazonaws.com Internal-loadbalancer-xxxxxxx.eu-west-1.elb.amazonaws.com使用内部ELB创build。
据推测,这些DNSloggingparsing为公有IP,因此会产生数据传输成本? 如果是这样的话,TTL的变化在理论上会导致我所看到的成本变化。
任何人都可以证实,如果这是正确的,或者如果我错了(如果是这样,我还能做什么来帮助追查问题)?
编辑:这是我所看到的图表:
虽然数据input/输出是平坦的,ELB数据和区域转移疯狂增加。 有趣的是,ELB数据大概是区域数据传输的一半,所以我认为这与我猜测ELBstream量正在进/出。 不幸的是,我不知道是什么原因导致了ELB数据本身的实际增长。
你的怀疑是正确的。
如果即使在同一地区使用公共IP地址或弹性IP地址进行通信,您也要支付区域数据传输速率 (每GBinput/输出0.01美元):
公有和弹性IP和弹性负载平衡数据传输
每GBinput/输出0.01美元 – 如果您select使用Amazon EC2networking内的公有或弹性IP地址或Elastic Load Balancer进行通信,则即使实例处于相同的可用区域,也要支付区域数据传输速率。 对于同一个可用区域内的数据传输,只要有可能,就可以通过使用您的专用IP来轻松避免这种费用(并获得更好的networking性能)。
正如EC2常见问题中所述: 如果我使用公共IP地址在可用区域之间传输数据,我将收取两次区域数据传输的费用(一次是因为跨越区域,而另一次是因为我正在使用公共IP地址)?
当您在Amazon EC2实例之间进行通信时, 解决scheme总是“使用内部地址,从而确保您的networkingstream量遵循通过我们networking的最高带宽,最低成本和最低延迟path”。