这两年在业界关于云计算应该是一个很热门的名词,但是国内的云计算一直都在谈论概念却还没有能够提供实质产品给用户使用,而在国外亚马逊的“云”却已经提供服务很久并还在不断的增加可供使用的功能。因为现在作供职的公司有些外资背景,从09年开始构建自身系统时就将硬件基础和部分软件服务都选择架构在亚马逊云计算平台上。经过2年的开发,在不断修正对云的认识中,算是对亚马逊的云计算平台有些许初步理解,拿出来与大家分享。
亚马逊的云平台是由许多服务组合而成的,我们现在开发的项目中,主要使用EC2,S3,EBS和将要使用MapReduce,SQS服务。在2年的开发和运营中这些服务使用的便利性和服务的健壮性为我们节约了许多时间和人力,但同时因为对这些服务理解的错误,而使用方法不当导致运营事故。
S3全称是Simple
Storage
Service,主要用于长久存储数据。S3服务会对用户上传的数据,作多备份存储,基本上可以保证用户数据的不丢失。我们公司所有web服务器中记录的apache
log信息等都会压缩后保存在S3中。
EC2全称是Elastic
Compute Cloud,可以根据需要灵活定义计算能力。在EC2中预定了许多种instance
types,每种类型定义虚拟cpu主频和虚拟内存数量。每种类型可以作为模板启动instance,对这个instance你拥有完整的控制权就好像原来一台单独放在机房机架中的服务器。从选择instance
types到启动这台instance只需要几分钟,费用是按照使用小时数计算。这种灵活性的好处就是当前系统原有计算能力不足时,可以迅速启动一台更高计算能力的instance顶替原有instance来增加计算能力,或者是启动一台与原有instance相同类型的instance,与原有instacne形成群集来增加计算能力。一旦峰值过后,就可以换回原有类型或关闭不再需要的机器,释放不需要的计算能力。如果在系统设计之初就充分考虑到这样的灵活性,所运行程序有自我监控和自我扩展能力,一旦某台instance出现不可修复错误时,系统通过新起instance
获得修复。
EBS全称Elastic
Block
Store,这个服务作为EC2的补充,增加更多的灵活性。EC2虽然可以方便启动使用再随时关闭,但是如果一台instance被关闭,所有与其有关包括虚拟硬盘数据都将被清除,如果希望这台instance虚拟硬盘上的数据能够被重复利用,那么最好方法就是在启动这台instance时选择使用EBS服务作为虚拟硬盘挂载在instance上,当这台instance被关闭后,可以将这个EBS块挂载到其他instance上。
EC2,EBS和S3服务组合起来,完全就替代了原来的服务器租用或者托管需求。基于这样的理解,我们在最初架构应用时将EC2的每个instance完全当作一台服务器来使用,在很长一段时间里这样的使用都没有问题,SA搭建服务器群集非常迅速简捷。但后来出现有instance在管理界面上显示正常,实际却已经不能提供正常服务的情况,人工启动新instance修复服务的方式导致出现短时间的服务中断事故。所以在使用EC2时应该增加程序状态检查,服务器状态检查,以及当instance故障时自动启动新instance等功能
,这样才能充分利用到EC2的特性。
后来随着数据运算量的增加,我们在作部分数据运算时使用了高阶instance类型。这样的计算在一天24小时中大概只进行2到3小时,如果始终运行着这样的高阶instance将会造成很大的浪费。所以我们选择了按需开启instance的方式,这台
instance操作系统与程序代码等都放置在EBS上,另外有一台instance负责在需要时间点启动这台高阶instance,并挂载EBS,然后将当天需要运算的数据从S3拷贝到EBS上,计算结束后,程序代码检查结果数据,确认正确,返回正确结束码,高阶instance关闭自己。
以上就是目前我对亚马逊云计算平台的应用。MapReduce和SQS在目前新项目中将被大量使用,我会在下篇博客中介绍。
分享到:
相关推荐
### 基于OpenStack与KVM的云计算平台构建 #### 概述 随着信息技术的飞速发展,云计算已经成为信息产业的重要组成部分,并逐渐渗透到各行各业之中。云计算将计算能力抽象成一种逻辑上的商品,使企业和用户能够摆脱...
介绍亚马逊相关云计算技术:包括EC2,S3.SimpleDB等基本功能,对于了解Amazon云计算技术有很大的帮助
### 云计算平台的选择 在选择合适的云计算平台时,企业或组织需要考虑多种因素,包括成本效益、技术成熟度、灵活性以及是否能满足特定业务需求。本文将深入探讨不同类型的云计算平台,特别是聚焦于开源平台的选择与...
云计算是一种革新信息技术与商业服务的消费与交付模式,自2007...通过这篇文章,读者不仅能够了解到搭建基于Hadoop的云计算平台的理论知识,还能够掌握实际操作步骤,这将对学习和应用Hadoop云计算技术提供重要的参考。
云计算平台的安全架构是当前信息科技领域研究的重点问题之一,特别是随着越来越多的企业和用户将数据和应用程序迁移到云平台,对数据安全、隐私保护和系统稳定性的需求日益增加。以下围绕文档内容提供的知识点详细...
Amazon云计算服务是亚马逊网络服务(Amazon Web Services, AWS)的重要组成部分,涵盖了众多技术与架构,支持了云计算时代的多项应用和服务。Amazon云计算的核心架构由Dynamo、EC2、S3、SQS、SimpleDB、RDS和...
《基于ARCGIS10平台的云计算》 云计算,作为现代信息技术的重要组成部分,已经深入到各个领域,其中地理信息系统(GIS)是其应用的一个显著方向。本文主要探讨了云计算在GIS中的应用,以ARCGIS10为例,揭示了云计算...
亚马逊云计算平台,即亚马逊网络服务(Amazon Web Services,简称AWS),是全球最大的云计算平台之一。其云计算服务模式具有弹性、灵活的特点,通过互联网向用户提供按需付费的IT资源和解决方案。本文将详细介绍AWS...
Google 云计算和 Amazon 云计算都是基于云计算的平台,但它们的架构有所不同。Amazon 的云计算平台架构图显示了 Amazon 平台的抽象架构,动态网页的内容是由页面呈现组件生成,该组件进而查询许多其他服务。Amazon ...
它同样基于开放源代码,旨在为科研和教育社区提供云计算服务,允许用户构建和管理自定义的应用程序和工作流程。 这五个开源云计算平台代表了开源社区在云计算领域的创新和多样性,每个都有其独特的特性和优势,可以...
亚马逊云计算是全球领先的云服务提供商,自2006年推出以来,它的影响力和技术发展对整个IT行业产生了深远影响。亚马逊云计算(Amazon Web Services,简称AWS)是亚马逊公司的子公司,致力于提供一系列广泛的云端运算...
本文将深入探讨“基于Android平台的移动云计算开发”这一主题,介绍相关的关键知识点。 一、Android平台基础 Android是Google主导开发的开源移动操作系统,主要应用于智能手机、平板电脑等设备。它的开放源代码...
- Amazon Web Services (AWS) 是亚马逊公司提供的一系列全面的云服务平台和服务。这些服务涵盖了计算、存储、数据库、分析、机器学习等多个领域,旨在帮助企业和个人构建复杂的应用程序和服务。 - **发展历程**: ...
**基于云计算平台的网上商城** 随着互联网技术的快速发展,电子商务已成为商业领域不可或缺的一部分。而“基于云计算平台的网上商城”正是这种趋势的典型体现。云计算以其弹性的资源分配、按需付费的服务模式以及高...
亚马逊云计算培训教材是一份专为学习者设计的实践导向型教程,旨在帮助用户深入了解和掌握亚马逊AWS(Amazon Web Services)的云服务。这份教材通常包括两天的动手实验室环节,让学员能够通过实际操作来加深对云计算...
综上所述,Amazon云计算和Google云计算各有优势,选择哪个平台取决于具体的需求,如对底层控制的需求、预算、性能要求、开发效率和生态支持等因素。用户应根据自身业务情况,对两个平台进行详细评估,以找到最佳的...
通过对开源软件的深入研究和对比分析,可以有效地指导平台建设,确保所选软件能够满足特定需求,同时充分利用开源社区的优势,持续获取更新和支持。随着云计算的不断发展,开源软件在云计算平台中的角色只会变得更加...
当前,包括Amazon、IBM、Google、Microsoft、Sun、阿里巴巴等在内的各大云计算厂商都推出了自己的云计算服务平台。 文档提到了学术界推动的几种主要的开源云计算平台,包括OpenStack、Eucalyptus、CloudStack和...
### 云计算平台应用详解 #### 一、引言 近年来,“云计算”这一概念迅速成为信息技术领域的热门话题。它不仅改变了人们对传统计算模式的认知,还极大地推动了互联网技术的发展。云计算可以被视为分布式计算、并行...