我对使用由Amazazon Web服务提供的弹性IP服务的有点糊涂了。 我想主要的想法是,我可以切换到无需停机下面这个简单程序的Web应用程序的新版本:
- 部署一个新的EC2实例的新版本
- 正确配置新版本,并使用一个临时数据库测试
- 一旦正确的测试,使这个新版本使用实时数据库
- 关联的弹性IP到该实例
- 终止所有没用的服务(分期DB老EC2实例)
这是部署Web应用程序的新版本的常见方式?
现在,如果应用程序缩放什么更多的情况? 我在弹性豆茎设置中配置的自动缩放,这创建了一个负载平衡器(I可以在在AWS管理控制台的EC2部看)。 问题是,我显然不能弹性IP与负载平衡器关联,我必须把它与现有实例关联。 到比如我要它关联到? 我糊涂了...
很抱歉,如果有些问题可能听起来愚蠢的,但我只是一个程序员,这是我第一次建立了一个云系统。
谢谢!
弹性负载均衡(ELB)不工作, 亚马逊的EC2弹性IP地址 ,其实这两个概念完全不一起去。
通过弹性负载平衡弹性
相反,ELB通常通过使用CNAME记录 (见下文),这通过允许别名DNS地址改变ELB(一个或多个)的IP在使用中,如果需要的话提供的弹性/可用性的第一级。 的弹性/可用性的第二电平由负载平衡器分发您已经注册的EC2实例之间的通信时执行的。
它认为这种方式:CNAME不会改变(就像弹性IP地址 )和替换EC2实例通过负载均衡,处理自动缩放 ,或者自己(通过注册/注销情况下)。
这更详细什洛莫斯威德勒出色的分析中阐述的“弹性”,在“弹性负载平衡”:ELB弹性以及如何测试它 ,这反过来又指最近提供最佳实践评估弹性负载均衡通过AWS,证实他的分析,并提供关于弹性负载平衡服务的体系结构良好的整体读取和它是如何工作本身(但一步样品什洛莫提供缺少的说明步骤)。
网站域名
请注意,需要CNAME前者限制了同时被相应的增加给亚马逊路线53 ,允许被使用,以及根域(或区顶点 ),内见部分别名和区顶点 未来的发展由于亚马逊路线53对快速浏览和使用域名弹性负载平衡的详细信息。
通过弹性弹性魔豆
首先, AWS弹性豆茎使用弹性负载如上所述反过来平衡。 在顶部如果,它增加了应用程序生命周期管理:
AWS弹性魔豆是为您快速部署和管理的AWS云应用更简单的方法。 您只需上传您的应用程序,并且弹性青苗自动处理容量配置,负载平衡,自动扩展和应用健康状况监控的部署细节。 [...] [重点煤矿]
这是通过添加一个环境到混合物,这是在说明的概念实现的体系结构概述 :
环境是应用程序的心脏。 [...]当你创建一个环境,AWS弹性魔豆规定所需的资源来运行应用程序。 用于环境中创建AWS资源包括一个弹性负载平衡器(ELB在图中),一个自动缩放基,并且一个或多个亚马逊EC2实例。
请注意, 每个环境都有一个CNAME(URL)指向负载平衡器 ,即就像对自己使用ELB。
这一切都在一起, 管理和配置应用程序和环境 ,其中讨论了一些AWS弹性魔豆详细的最重要的功能,其中包括使用AWS管理控制台,CLI和API的应用实例 。
零停机
它很难确定用于说明目的最相关的部分,但部署版本的零停机恰恰满足你的使用情况,并意味着所有需要前面的步骤(如创建新的应用程序版本 ,并启动新的环境 ),所以阅读部分AWS管理控制台可能给你最佳的整体图像这个平台是如何工作的。
祝好运!
除了斯特芬的真棒答案所描述的选项,弹性魔豆似乎有最近刚启用弹性IP作为一个选项,如果你不需要(超出一个实例,如自动缩放)的弹性负载均衡的全部功能。
我描述的选项我的回答类似的问题 。 弹性青苗现在允许你选择两者之间环境类型 ,和单实例选项创建一个弹性IP。
我想用ELB将在大多数情况下,临时服务器的最好选择,但例如,它是好的,有一个替代方案,是不太复杂的(更便宜)。
然而,对于回答后,几年后,对于那些做确实需要一套上ELB静态IP地址的道歉,有可能要问AWS很好他们所谓的“稳定的IP的地址添加到ELB,从而给它的静态IP地址功能。
他们不喜欢在所有当然这样做 - 但如果你能证明它(的主要理由是,当你有一个对通过防火墙的出站连接的IP白名单的限制,完全不愿让步的立场,即客户端)。
要知道,根据交通选项“自动缩放”不是直线前进的任何更多 - AWS将无法动态地添加更多ELB端点到您的ELB,因为他们与开箱即用解决方案的做,你必须要经过与您的客户随着时间的推移开辟新的IP地址的痛苦。
因为虽然原来的问题,EB使用ELB的地方实际上并不是必需的静态IP地址前EC2实例(无客户端的出站防火墙问题)是按照接受的答案的最佳途径。