为什么鼓励将Amazon EC2弹性IP与CNAME而不是“A”logging一起使用?

我在EC2上设置了一个服务器,这个服务器会被那些在地址栏里看到ec2-111-111-111-111.compute-1.amazonaws.com的人吓坏了。 我知道这可以通过使用Alogging而不是CNAME来解决,但是Amazon的文档说要使用CNAME。

如果我使用Alogging会怎样? 我在网上看过一些教程,但我也需要我的网站是可靠的。

该网站只是运行一个实例,并可能只能运行一个实例,所以我不认为有多个实例互相交stream是重要的。

    简化版本:logging指向IP地址。 CNAME指向其他Alogging。

    您可以使用Alogging,但为此,您应该为EC2实例提供高可用IP地址。 亚马逊称这个产品为“弹性IP地址”。

    如果您将CNAME设置为Amazonpipe理的Alogging,则Amazon可以控制一个间接层。 例如,在服务器发生故障后,Amazon可以使用它将Alogging更改为新的IP地址。 亚马逊可以通过这种方式让服务再次运行,而且不需要改变任何东西。

    一般来说,使用2个DNS条目,特定服务器的Alogging,以及它提供的服务(如“www。”)的CNAME是一个很好的做法。 这样,硬件和服务之间就有了一个清晰的分离,这使得在许多情况下pipe理变得更加简单。

    所以,如果你不支付“弹性IP地址”,那么你应该使用CNAME到亚马逊为你设​​置的Alogging,即“www.yourdomain.com”的CNAME指向“ec2-111-111 -111-111.compute-1.amazonaws.com。“

    他们永远不会看到带有CNAMElogging的ec2-111-111-111-111.compute-1.amazonaws.com。 如果要将您的CNAMEed网域redirect到amazonaws.comurl,并不是因为它是CNAME,而是您的应用或networking服务器正在执行的操作。

    ec2-*.amazonaws.com主机名称parsing为不同的IP地址,具体取决于您是从Internet上从外部parsing它们还是从另一个EC2实例内部parsing它们。

    这意味着如果你有两个EC2服务器 – 比如一个数据库服务器和一个Web服务器 – 你的Web服务器将会看到数据库服务器的内部IP地址为10.xxx,而从外部来看,你会看到Web服务器定期使用非私有IP地址。 (当然,你不会真的想从外面看到一个数据库服务器,但这只是一个简单的例子。)

    如果您使用弹性IP地址,则您拥有一个已知的永久IP地址,使用Alogging指向该地址应该没关系。 如果你没有 Elastic IP(为什么不是,它们是免费的),那么在Amazon更改你的IP地址的情况下,你似乎想要使用CNAME。

    但是,如果你有多个服务器,我仍然会使用CNAME,这样你就可以获得神奇的内部/外部IP地址parsing。

    使用CNAMElogging的原因是,可以从ec2内部和外部访问站点。

    例如,采取平。 如果您从外部ping c2-111-111-111-111.compute-1.amazonaws.com,则它将parsing为111.111.111.111,但在内部parsing为10.0.0.0/8地址。 但是,如果您ping 111.111.111.111它将不会在内部可用。