在亚马逊EC2上托管Web站点
作者
Charles Humble
译者
宋玮
发布于
2008年2月28日 上午2时17分
基于剑桥大学的Xen虚拟化技术
,亚马逊的弹性计算云(Elastic Computer Cloud——EC2)
是
一个允许用户按需创建、启动、停止基于Linux的服务器实例的计算服务。每个虚拟机实例是一个虚拟的私有服务器,它在启动时通过DHCP获取一个IP地
址。虚拟机镜像——亚马逊称之为Amazon Machine
Images(AMIs),可以像VMware的虚拟设备那样被存档和传输,因此开发者可以安装一个所需软件的初始实例并快速将其部署到许多虚拟服务器
上。
InfoQ的上一篇文章
着
眼于该服务对于开发团队的吸引力,如Oracle的Coherance团队,他们在短期内需要大量计算能力。该服务的灵活性还使其对那些基于Web的创业
企业具有很强的吸引力:因为不需要购买昂贵的硬件,你没有前期投入,运行成本相当的低,而且你可以在你的Linux实例上安装任何想装的软件。通过在需要
的时候启动或停止额外的实例,使得该服务可以很方便地适应流量模式的变化。最后,该服务有知名的亚马逊做强力后盾,它有着交付高伸缩性、健壮性的Web基
础架构的业绩。尽管这样,缺少SLA(Service Level
Agreement——服务水平协定)仍造成了采用EC2的巨大障碍,有一些企业不愿意将其数据或关键业务委托到EC2上。
还有实际的问题需要克服。比如虚拟服务器使用DHCP获取地址的本质意味着服务器每次启动IP地址都会改变。其结果是,在停机之后,Web站点需要
更新其DNS入口——这一过程可能需要花费高达96个小时才能完成。为解决这一问题,亚马逊推荐使用动态DNS解决方案,如DynDNS,在最近一篇博客文章
中,Codesta的Oliver Chan提供了如何为EC2设置DynDNS的细节。
相同的博客还为那些考虑使用EC2服务的开发者提供了一些其他有用的线索:
- “在花费太多时间配置和定制AMI之前,一开始先找一个适合你需求的现成的AMI,这样你就不必后面的旅途中重复同样的工作了。检查一下亚马逊资源中心上的公用AMI列表
,可能会找到适合你需求的东西”
- “当使用‘ec2-bundle-vol’命令打包你自己的镜像时,使用‘-d’标志以确保你指定了一个干净的目录,否则将同一镜像打包两次会因为临时文件冲突而导致错误发生。”
- “当在你的镜像上工作时,注意主驱动器/分区(系统文件放在这儿)只有十分有限的容量(我们的情况是10GB)。因此当要处理大的文件/目录时使用‘/mnt’,它有超过100GB的空间。”
- “如果机器停止了,除了那些最后一次你执行‘ec2-bundle-vol’备份了的数据,你所有的数据都将丢失。”
随着EC2持续增强,使开发者能更容易的使用该服务的开源工具和类库正不断涌现。其中一个这样的项目是,构建在Chris Richardson的EC2Deploy之上的Cloud Tools
,它由以下几部分组成:
- EC2Deploy框架——一个基于Groovy的框架,用于把Java EE应用部署到Amazon EC2。
- 被配置运行Tomcat及与EC2Deploy一起工作的AMI。
- 一个Maven插件,使用EC2Deploy往EC2上部署Web应用。
Cloud Tools仍然处于开发阶段,但是为开发者在几分钟之内上手并运行在EC2上提供了一种方法。
查看英文原文:
Hosting a Web Site on Amazon's EC2
分享到:
相关推荐
总结以上内容,这本书将为读者提供一套完整的云托管知识框架,使读者能够理解和掌握如何利用亚马逊云服务开发和托管Web站点,并能够根据实际需求选择合适的服务与工具,构建起可扩展、高效且经济的云架构。
在网站开发过程中,AWS(Amazon Web Services)作为一个全球领先的云服务提供商,提供了众多工具和资源来支持开发者。本文将深入探讨使用AWS与ASP(Active Server Pages)和IIS(Internet Information Services)...
Elastic Compute Cloud(EC2)是一项商业服务,用于在Amazon Web Services(AWS)标签下托管称为实例的虚拟机。 本教程将使您开始使用AWS Educate在EC2上使用Ubuntu系统。 您应该已经收到该服务的邀请电子邮件。 ...
常见的云托管服务有AWS S3(Simple Storage Service)用于静态网站托管,或者使用AWS EC2(Elastic Compute Cloud)运行包含动态内容的Web应用。 **静态网站与动态网站** loruki-website可能是静态网站,这意味着...
AWS(Amazon Web Services)是亚马逊公司提供的一个全面的云计算服务平台,自2006年以来,它一直在推动技术创新,特别是随着Amazon Simple Storage Service (S3)的发布,这标志着AWS进入云存储市场的里程碑。AWS在...
AWS(Amazon Web Services)是亚马逊提供的全球领先的云服务平台,它提供了包括计算、存储、数据库、分析、机器学习等在内的各种云服务。"aws-projects"很可能是与使用AWS服务进行的某个或多个项目相关的资源集合。...
- **初始阶段**:一个EC2实例承载所有的应用组件,包括Web应用和数据库。 - **扩展策略**:为了应对更高的并发访问需求,可以通过增加实例规格、添加额外的Web实例以及使用ELB实现负载均衡等方式进行扩展。 - **...
这通常涉及到设置EC2实例(亚马逊的弹性计算云服务)作为Web服务器,创建RDS(关系数据库服务)实例来托管WordPress数据库,以及可能配置负载均衡器以提高可用性和可扩展性。 【标签】"HCL" 是HashiCorp ...
- EC2实例(Elastic Compute Cloud):运行web服务器和数据库。 - RDS(Relational Database Service):提供高可用性和可扩展性的数据库服务。 - ElastiCache:用于缓存,提升性能。 - CloudWatch:监控和日志管理...
在描述中提到了“AWS分期- ASW生产- Zeit Now-”,这暗示了网站的部署和运行环境涉及到亚马逊AWS(Amazon Web Services)的服务,可能包括AWS的分期部署功能,ASW可能是笔误或者缩写,通常指的是AWS,而 Zeit Now则...
5. AWS (Amazon Web Services): "aws"标签暗示博客可能有关于云计算平台AWS的内容,如EC2实例、S3存储、Lambda函数、DynamoDB数据库等云服务的使用和最佳实践。 6. Apple: 另一个标签"apple"可能意味着博客中包含...
3. **AWS (Amazon Web Services)**: AWS是亚马逊提供的云计算服务平台,提供了包括计算、存储、数据库等多种服务。shorted.com.au可能利用AWS的服务如EC2(弹性计算云)托管后端服务,S3(简单存储服务)存储静态...