我是AWS EC2的新手,我正在为我的论文进行一些实验。我想根据模拟预测成本,为了验证我的结果,我设置了以下场景,其中包含三个EC2实例和一个负载测试驱动程序:
我让实验运行了两天,并在AWS成本记者的帮助下评估了成本。到目前为止我还不了解的一件事是PublicIP-in的成本。当我查看Amazon EC2 Pricing时,没有任何费用可以将数据传输到亚马逊EC2从互联网上,但我仍然可以获得PublicIP-in的帐户成本。另外,在查看Amazon Cost Calculator时,不会列出数据传输费用。
如果有人能向我解释成本中的数据传输来自哪里,我真的很感激。在此先感谢您的帮助。
答案 0 :(得分:1)
数据传输到Amazon EC2从
Amazon EC2 [...]位于同一可用区
使用私有IP地址$ 0.00 / GB
使用公共或弹性IP地址每GB 0.01美元
您的实例正在使用其公共IP地址而不是其私有IP地址与自己通信。
或者,如果具有公共IP地址的实例也在为其他两个执行NAT,则其中一个实例可能正在使用其公共IP地址来访问它。
EC2实例在操作系统层无法识别其公共IP地址,因此在上述任何一种情况下,流量都会通过Internet网关离开实例,发夹并返回实例,从而使用更多资源,因此额外收费。
如果您的DNS主机名指向带有A记录的公共IP地址,并且正在推动此流量,则可以轻松解决此问题。
对公共IP进行nslookup。获取您获得的主机名(它将以ec2-x-x-x-x.cc-region-n.compute.amazonaws.com
的形式)并将您的DNS指向该主机名作为CNAME。
网络基础架构中的神奇之处在于,如果全局查询将导致其解析为公共IP,但如果启用了VPC的DNS设置,则会在您的VPC中查询私有IP。
否则,请确保实例仅对彼此的私有IP地址进行评估,并且不应产生此费用。
答案 1 :(得分:0)
Amazon EC2 pricing page包含以下费用:
数据传输到Amazon EC2来自:
Amazon EC2,Amazon RDS,Amazon Redshift和Amazon ElastiCache实例或同一可用区域中的弹性网络接口...使用公共或弹性IP地址:每GB 0.01美元
Amazon EC2,Amazon RDS,Amazon Redshift和Amazon ElastiCache实例或另一个可用区域中的弹性网络接口或同一AWS区域中的对等VPC:每GB 0.01美元
因此, PublicIP-In 费用可能是由于:
检查所有服务器是否位于同一可用区中,并且它们仅通过其专用IP地址相互引用。