我有一个域名(目前在dyn.com上托pipe),有一个A
logging指向我们的产品IP地址。
我们正在转移到Amazon EC2并使用负载平衡器,build议我们使用CNAME
而不是A
logging,因为负载平衡器可能会定期更改IP地址。
不幸的是,我似乎无法无缝地进行这种转换 – 我必须先删除Alogging,然后添加CNAME,这可能导致新logging传播时的停机。
有没有什么办法可以平稳地做到这一点,零(或非常小)的停机时间?
有一个技巧,你可以在这里使用。 也就是说,卫斯理是一个聪明的家伙,你应该听他的。 我没有得到报酬,但我希望有一天能改变这一点。
假设您正在尝试在名为example.com.
的区域中更改名为www
的loggingexample.com.
…
*
)。 提交更改。 testing它,确保通配符logging按预期运行,并覆盖NXDOMAIN响应。 www
logging。 承诺。 *
logging。 由于这是您的名声,您可能需要快速回顾维基百科关于如何处理通配符的说明。 确保您添加的通配符与您要删除的logging具有相同的点数,因为通配符logging不会遍历点。 (如果您需要正确的RFC术语,则称为标签)
此外,这应该不用说,但所有这些testing应该直接对您的权威服务器运行。 ( 而不是针对您正在运行testing的计算机configuration的默认parsing器)
我们正在转向亚马逊EC2并使用负载平衡器,build议我们使用CNAME而不是Alogging
我真诚地希望你不是CNAMEing您的apex域。 如果你的DNS主机是自己的尊重,它将不被允许。 如果这是一个可耻的粘糊糊的东道主,你可以做到,但是你会失去一块灵魂(但是你仍然在使用EC2,所以看起来对你的灵魂的关注已经很小了)。
Quoth亚马逊:
您不能使用CNAMElogging将区域顶点与Elastic Load Balancing实例相关联。 DNS规则禁止在区域顶点创buildCNAMElogging(例如,example.com)。 例如,如果您拥有example.com域名,则可以为foo.example.com子域名称使用CNAMElogging,但不能用于example.com区域顶点。
继续…
…因为负载均衡器可能会定期更改IP地址。
不,负载均衡器不应定期更改IP地址。 这是他们的观点。 它们保持不变,充当消费者和内容基础设施之间的抽象层。 如果有人告诉你,负载均衡器的IP地址可能会周期性变化,请向他们澄清。
Amazon ELB已经到位,所以我们的目标是将你的域名CNAMElogging到ELB的名字。 我现在了解情况。
不幸的是,我似乎无法无缝地进行这种转换 – 我必须先删除Alogging,然后添加CNAME,这可能导致新logging传播时的停机。
如果没有一些组播恶意软件,甚至可能还有一些BGP蠕虫,DNS本身并不打算有零宕机时间的改变。 但是,通过将logging的TTL值降低到允许的最短时间,可以将停机时间降到最低。 通常是60秒,但是如果你的DNS主机不允许这么低,那么请把你的干草叉磨光,因为这太糟糕了。 无论如何,请将您的logging放到可能的最低数字,然后再等待以前的TTL值。 如果您以前的TTL值是3600秒,那么在您将TTL值更改为60秒后等待一个小时。
一旦你等了很长时间,那么你可以将你的Alogging更改为CNAME,大概只有大约60秒的停机时间。
我做了类似的转换,涉及零宕机时间,但同步是在数据存储上进行的,所以在模糊的切换期间,任何过滤到旧系统和新系统的事务都会与后端磁盘同步。 除非你正在处理大量的用户和金钱,否则这通常会花费更多的时间和精力。
TTL已经是60秒,但是SOA NXDOMAIN TTL是1800秒
…如果你的域发生了一些返回NXDOMAIN响应的事情,这只会是一个问题,当你将logging从A更改为CNAME时,这不会发生。
所以删除现有的Alogging可能会导致长达30分钟的下降(据我所知)
不,因为你没有删除,你正在改变,任何合理的DNS主机会一举删除Alogging和添加CNAME,所以你不会对NXDOMAIN做任何请求。
如果Dyn对你的区域进行了每一个改变,那么这个primefaces动作就会单独提交给区域文件,那么你可能会返回NXDOMAIN响应。 对于Dyn来说这是一件可怕的事情,但并不会令人惊讶。
我似乎无法使用dyn.com进行更改
我的意见(当与5美元相结合,可以让你在星巴克一杯咖啡):Dyn是一个可怕的DNS主机。