我们正在考虑将我们的网站托管在 amazon aws 上,以便它们可以按需扩展。目前,我们在多租户服务器上托管了大约 500 个网站,但我们希望摆脱这种架构,每个网站至少有 1 个服务器。看来 amazon aws 每个帐户最多有 5 个 IP 地址,因此我们无法为每个网站提供唯一的公共 IP 地址,考虑到 ipv4 地址的短缺,这是很公平的。
因此,接下来想到的办法是将每个网站作为应用程序托管在 elastic beanstalk 上,但似乎每个帐户最多只能有 75 个应用程序,所以我想这也不是一种选择。亚马逊说你可以请求更多,但他们真的会同意让我们再拥有 425 个吗?
接下来想到的是使用亚马逊应用程序负载均衡器。显然,您可以拥有 50 个侦听器,每个侦听器都可以拥有 SSL 证书,并且可以路由到特定的 ec2 实例,因此我们可以将 www.site1.co.uk 映射到一个 ec2 服务器,将 www.site2.co.uk 映射到另一个 ec2 服务器等。但是我读到每个帐户只能拥有 20 个 ec2 服务器,所以我想我们也无法像这样托管我们的网站?亚马逊说您可以要求更多 ec2 实例,但他们真的会同意让我们再拥有 480 个吗?
那么我们在 amazon aws 上有什么选择?(请记住,我们不想拥有多租户服务器)。这里有人有在 amazon aws 上运行数百个独立网站的经验吗?
非常感谢您提供的任何建议。
答案1
在我目前的工作地点,我们通过一个弹性 IP 托管 3000 多个网站。我并不是说这是一个好主意,但这是你可以做的事情。
您可以通过开设多个账户来规避 AWS 资源限制。请注意,这样您将失去批量定价的好处。此外,这将成为一场管理噩梦。
请考虑一下,如果您在托管 Netflix 的服务中遇到资源限制,那么也许您对架构的想法是错误的。
如果您确实需要独立租户,请使用容器。我 100% 确信您的所有 500 个站点都可以在单个 m4.16xlarge 实例上顺利运行。甚至是容器化的。