【问题标题】:AWS ELB DNS failover to S3AWS ELB DNS 故障转移到 S3
【发布时间】:2017-07-10 05:26:32
【问题描述】:

我想在这里保持理智,但是这个配置现在已经根据几个教程检查了好几次,它就是不工作。 我的网站有一个面向公众的 ELB,后面有 EC2 实例。我需要的是建立一个由 S3 存储桶托管的维护网站。 我所做的是,我创建了指向 ELB 内部 AWS 域名的 healthcheck xxx-healthcheck.xxx.com 的 dns 条目别名。 我为我的网站 xxx.xxx.com 创建了一个 A 别名,指向我的 ELB 内部地址。然后我将设置标记为故障转移,添加到运行状况检查上方并将其标记为评估其运行状况。 我为我的 S3 存储桶添加了下一条记录(S3 存储桶名称为 xxx.xxx.com)。别名 A,再次。别名的名称与主地址相同,因此 xxx.xxx.com。我将其标记为故障转移和辅助。 我在两个实例上都关闭了服务,健康检查被标记为不健康。当我尝试访问该网站时,它正在超时 - 没有正在维护的网站。

请。 请帮忙。

干杯 一个

【问题讨论】:

  • 关闭浏览器窗口?
  • 您的 ELB 是内部 ELB 对吧? S3 是公开的吗?您可以在公共互联网上打开网站吗?
  • ELB 是面向公众的。 S3 存储桶可供公众使用。我可以在我的浏览器上从存储桶中打开一个 html 文件

标签: amazon-web-services dns amazon-elb amazon-route53 failover


【解决方案1】:

您使用的是 TLS/SSL 吗?如果您的 ELB 网站通过 HTTPS 提供服务,则浏览器会在故障转移后尝试使用 HTTPS,即使是 S3(这很正常,称为 HSTS)。如果您使用 HTTP,您的内容仍将被提供。要验证这一点,请使用其他浏览器或清除与您的域相关的所有历史记录(如果这不起作用,如果您使用的是 Chrome,请使用谷歌“chrome delete hsts domain”),然后使用http://<domain> 打开您的域。

如果您在 S3 上启用了静态网站托管,并将该静态 S3 URL(通过 A 记录别名)添加为 Route53 中的故障转移辅助路由,这将不起作用,因为 S3 未配置为通过您的域使用 HTTPS 接收流量。

解决方案是创建 CloudFront 分配并将您的 S3 存储桶添加为源,在 CloudFront 中添加 CNAME 值作为您的域名,并在 CloudFront 上附加/配置 SSL 证书。现在,在您的 Route53 中,添加 CloudFront 分配的 URL 作为故障转移条目(A 记录别名)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-04
    • 2018-08-15
    • 2021-07-07
    • 2018-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多