如果您的整个基础设施都在 Amazon VPC 上,那么什么样的正常运行时间保证是安全的承诺?

Jay*_*ay -1 uptime amazon-ec2 amazon-web-services amazon-vpc

我们是一家小型初创公司,试图迎合我们的第一个客户。目前,整个硬件设置都在亚马逊云上(很快将移至 VPC)。我必须向客户估计我的公司可以提供什么样的正常运行时间保证。虽然亚马逊提供低于“99.95% 但等于或大于 99.0%”,但我认为将我的应用程序升级、修补和其他维护活动考虑在内是有意义的,并采用更小的估计,比如 95% .

我认为我的问题更笼统地说,就 SLA 而言,对于与第一个客户打交道的初创公司而言,什么是更安全的承诺。考虑到我们在这个领域不是一家成熟的公司,我的客户(这是一家价值 10 亿美元的公司,他们为每笔交易向我们支付费用)听起来可以接受 90-95% 之类的东西吗?

Ond*_*idr 5

90%-95% 的 SLA 没用,最好不要说(即使是旧的共享主机也能保证你的 webapp 有更好的 SLA),你至少需要 99.5% 来处理严肃的业务。如果您需要更好的 SLA(您的客户会!),您需要有镜像资源(2 个应用服务器、2 个数据库服务器等)、设置负载平衡和故障转移(如 keepalived、haproxy、squid 等),设置良好的内部和外部监控和警报解决方案(例如 Zabbix 或 Nagios、newrelic 和 Logstash/Kibana 用于日志管理),您将需要系统管理员,他们将管理它、监控它并对问题做出反应。

您应该查看维基百科上的 SLA 表,在那里您可以找到您的应用程序可以离线多长时间以符合您的 SLA 级别。不要忘记,当您无法立即做出反应时(即凌晨 3 点),中断可能并且将会发生,因此您需要拥有足够大的管理团队来提供 24/7 的支持。您必须找到并识别所有 SPOF 并将其消除。不要忘记,不仅您的开发人员是潜在问题的根源,而且您的服务器从一开始就会受到各种类型的自动攻击(ssh bots、DDoS 等)。

拥有良好和稳定的环境真的非常非常难以实现,非常非常昂贵,而且当您在云中时更昂贵(因为其他云用户的影响)。

您可以找到示例,您的环境应该如何查找简单网页以确保 aws 上的高可用性,由 amazon 本身在此处 (pdf)或更多在aws 架构中心提供

最后但并非最不重要的一点是,您永远不应忘记资源翻倍!如果您只有一个单一类型的 VM,则无法保证任何事情。第二部分 - 您(或您的管理员)需要准备灾难恢复计划,并且应该定期进行“防火演习”以确保计划是最新的并且运行良好。