在GCE上部署云应用技巧及优劣势比较-阿里云开发者社区

开发者社区> 晚来风急> 正文

在GCE上部署云应用技巧及优劣势比较

简介:
+关注继续查看

云应用开发者应该仔细选择IaaS平台。为了帮助你做出正确的选择,下面是对在GCE上部署云应用的利弊分析。

在GCE上部署云应用技巧及优劣势比较

云应用开发者应该在选择一个用于开发和部署云应用的基础架构即服务(IaaS)平台之前做好功课。选择错误的平台可能会导致不可预测的定价和计费模式,限制开发语言,限制操作系统的选择,几乎无法帮助客户履行合规性要求,并无法提供足够的安全性。

让我们来看看在一个比较流行的IaaS平台:谷歌计算引擎(GCE)上开发和部署云应用的的优缺点。GCE提供运行在谷歌管理的数据中心里的虚拟机(VM)。它让外部的企业和软件开发人员在谷歌的全球基础架构上运行他们自己的软件。那些用于Gmail,地图和其他谷歌应用的硬件和软件栈,现在也用来托管GCE的虚拟机。GCE采用Linux基于内核的VM虚拟化管理软件(KVM)。它支持多种Linux发布版本和Windows。

Google App Engine(GAE)是在2008年发布,而GCE则是在2012年6月宣布推出。GCE以及GAE被视为Google Cloud Platform中最重要的两个服务,谷歌云平台是在2012年5月推出并在2013年5月全面启用。

GCE的特点

现今,与GCE有关的用例常常包括了计算密集型应用,如视频转码和渲染,基因组测序,聚类,机器学习和分析,解决的问题与大数据系统差别不大。

虽然GAE为开发者提供了一个“现成”的开发和部署环境,但GCE仍然也是一个“自己动手”的环境。客户可以创建自己的实例然后进行管理,包括虚拟机上运行的软件。GCE提供各种工具,让你可以与GCE的实例交互和管理。例如,你可以启动和停止实例,附加磁盘存储和配置网络访问。大部分这些事情GAE会在应用需要时自动做好。

要开始使用GCE的时候,你首先需要在开发者控制台,与GCE交互的三种工具之一(一个基于Web的用户界面)中创建一个GCE项目。一个项目是关于你正在开发的应用程序信息的集合,它充当你的计算引擎的容器。磁盘,防火墙,网络和虚拟机都会关连(并包含)在一个单独的项目中。

用户可以使用开发者控制台,加上GCloud,一个用来管理实例和资源的命令行接口,或GCE API(一个RESTful的接口)与GCE实例和资源交互。

GCE提供几种机器类型的支持。每一种机器类型提供了预定义的配置选项集合,例如虚拟CPU的数量及虚拟RAM的容量。机器类型包括:

  • 标准--内存和处理能力的平衡组合
  • 高内存--相对于处理能力来说更高内存容量的选项
  • 高CPU--相对于存储容量来说更高处理能力的选项
  • 共享型--更便宜,更小的配置

GCE支持GAE使用的托管虚拟机环境在可配置的GCE虚拟机上运行GAE应用。此功能为GAE开发者提供了更多的灵活性,通过提供更多的操作系统选择,更多的语言运行时间选择,以及更多的CPU和内存选项来运行GAE应用。GAE会自动为开发人员管理GCE创建的VM。

GCE为你提供了可抢占的实例,可以用比平常更低的价格创建和运行GCE实例。但GCE可以终止一个可抢占的实例并拿走部分或全部的资源,如果这个资源正被其他某些价格较高的(不可抢占的)实例所需的时候。GCE的可抢占实例数量是有限的,所以在高峰使用期要创建一个可抢占的实例也许不大可能成功。

一个GCE VM的基础软件包括了操作系统(及其他系统软件)和应用软件,这个基础软件通常被称为镜像。GCE支持数个标准的镜像(其他IaaS平台,例如AWS也一样)。但是你可以创建自己的自定义镜像,可以从头开始或是修改某个标准镜像。开发者通常有自己想用的操作系统,开发语言运行环境等等。他们可以直接将这些软件包含到他们的镜像中。

GCE支持几种开发人员可以选择的存储系统。[2] 磁盘持久化存储是用于块存储的主要存储机制,一般被选为存储文件系统数据的存储机制。它还提供了针对非结构化数据的谷歌云存储,Cloud Datastore,一个NoSQL数据库和CloudSQL,一个MySQL的存储解决方案。

跟GAE一样,GCE也利用了谷歌的海量网络资源。数据在GCE 虚拟机之间传输的速度比其他依赖互联网传输数据的云平台更快。使用GCE,你会获得一些默认的网络和防火墙功能——项目中的所有实例都连接于一个网络,而实例只能与项目之中的其他实例通信。但你可以配置额外的网络和防火墙功能。[3]

GCE也支持全球负载平衡,借由把传入请求分配于数个实例群和数个区域之间,从而可以实现最大的性能,吞吐量和可用性。

类似于GAE和AWS,GCE将世界划分为地区和区域。一个区域对应于一个物理数据中心,而一个地区则代表一个大的地理范围内数个区域的集合。目前GCE支持三个地区和八个区域。

GCE提供一个SLA保证每月99.95%的正常运行时间。AWS也提供相同的保证。

使用GCE的技巧

GAE和大多数用于开发和部署云应用的平台的利弊列表上主要有几点。虽然定价对每个云平台来说都是挑战,但GCE和AWS的定价和计费模式变化如此之频繁让我们很难给出定价方面的建议。在选择过程中,请了解每个候选平台的最新定价/计费模型。

优点:GCE的客户能够利用所有谷歌在云自动化方面的创新,这些创新已经在谷歌的高压环境下测试过了。

GCE使用谷歌的私有全球光纤网络(也就是谷歌基础架构的骨干)来连接数据中心里的虚拟机,这自然比任何其他的云平台更快,包括使用公共互联网的AWS。

GCE的标准计算实例与AWS相比成本较低,除非你愿意预先绑定支付AWS三年的预留实例。如果谷歌继续沿用摩尔定律的方式定价,那么绑定三年期的AWS 预留实例增加了未来的降价可能会抵消一些你预期省下的成本的风险。对于高内存高CPU的虚拟机来说,谷歌GCE和AWS定价的比较结果是比较复杂的——其中没几个有可比性的项目。

GCE的定价对小一点的企业来说是一大优点,因为它是以每分钟收费的,最低收费则是10分钟,而AWS是以小时收费,不足一小时按一小时计。

GCE能够让你把一个持久化读/写磁盘以只读的方式挂到一个虚拟机并将它连接到同一区域内的数百台VM。这允许你在短时间内将数据分发给大量的工作节点。AWS的客户仍在挣扎于寻找一种在大量的AWS实例之间分享数据和信息的方式。

GCE可以基于负载的增加或减少,在管理实例组内添加或删除虚拟机来自动执行负载平衡。这允许应用程序处理流量的增加和当资源需求较低时降低成本。然而,GCE的负载平衡没有那么自动,因为GCE需要用户指定自动调节的策略,并且它不能用于标准实例,只能在管理实例上使用。AWS的弹性负载均衡会执行类似的功能,但它需要预热(比如,配置负载均衡器使其在预期流量的范围内有适当级别的容量)。GCE允许地区之间的负载平衡并支持基于内容的路由,而这个亚马逊的EC2则做不到。

GCE会即时加密那些写入永久磁盘的数据,传输,然后将其以加密的格式存储。它已经完成了ISO 27001,SSAE-16,SOC 1,SOC 2,及SOC 3的认证。

GCE可以让你以非常具有成本效益的方式使用可抢占的虚拟机来运行大批量和计算的作业。

缺点:GCE仍在服务方面,地区(3比11),客户的数量,产品在存储,计算,数据库,网络和配置管理的广度落后于AWS。AWS的容量是排在它之后的最大的12个竞争对手加起来的五倍。AWS在云市场的占有率是28%;微软是10%而Google是5%(包括GAE和GCE)。

AWS支持多种操作系统,包括Amazon Linux、Red Hat Enterprise Linux、CentOS、Debian,SUSE Linux Enterprise Server、Ubuntu、Oracle Enterprise Linux、FreeBSD和Windows(2003 R2,2008,2008 R2,2012)。GCE支持CentOS,Red Hat Enterprise Linux,Debian,SUSE Linux Enterprise Server、Ubuntu和Windows Server 2008 R2。(对Windows的支持仍在Beta模式。)尽管AWS略胜一筹,但它并没有显著的优势。

GCE在合规方面远远落后于AWS。AWS的合规服务完胜GCE的合规服务。AWS可以帮助企业处理大部分他们可能需要满足的法规。GCE(和Google Cloud Platform)正在尽力赶上AWS的合规服务。

围绕GCE和谷歌云平台的服务数量与AWS和微软Azure相比是较小的。在Forrester的企业公有云平台报告中,作者列出28个重要的AWS服务,22个微软的云服务和只有6个谷歌云平台的服务,包括GAE,GCE,Google Cloud Storage、Google Cloud Datastore、Google Cloud SQL和BigQuery。

GCE缺乏广泛的地理分布。GCE只有三个地区(美国,欧洲和亚洲)和三个可用区域。而AWS,有着11个地区和超过20个的可用性区域。如果你需要一个具有广泛的地理多样性的静态网站并不介意为此付费,又或者你需要托管的大量数据,例如视频或文件下载,建议你使用AWS EC2和AWS S3。


本文作者:佚名

来源:51CTO

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
结合阿里云云开发平台,全程上云开发Serverless SSR应用
正如上一篇文章所介绍的FaaS场景下的SSR框架,已经添加到阿里云云开发平台的默认解决方案当中。结合阿里云的cloudIDE功能,我们可以所有的开发,发布操作都在云上完成无需本地配置开发环境,使用起来十分的方便。
1334 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
7831 0
【云周刊】第214期:阿里小程序云应用上线了,有哪些看点?
欢迎订阅云周刊 本期头条 阿里小程序云应用上线了,有哪些看点? 3月21日,在2019阿里云峰会·北京上,阿里巴巴旗下的阿里云、支付宝、淘宝、钉钉、高德等联合发布“阿里巴巴小程序繁星计划”:提供20亿元补贴,扶持200万+小程序开发者、100万+商家。
4318 0
应用上云改造
1. 概述:  弹内应用使用的大量弹内基础设施在云上不存在或者有对应的产品,但是无法无缝上云需要改造,具体对应如下: 序号 弹内组件 云上 说明及注意事项 1 BUC-SSO aliyun RAM(OpenID) 云上可以使用 aliyun 的 ram 以及 openID 配置统一用户和单点登录应用,需要二次开发 2 Oplog 操作日志审计或者自定义开发简易 Oplog 操作审计日志投递到 OSS 或者日志服务,使用云上操作审计日志查询。
735 0
一文读懂 - 云上用户如何灵活应用定制化网络服务
在将传统数据中心业务迁移上云的过程中,如何将云下基于不同业务场景和设备角色灵活变化的网络配置基于云上网络统一服务能力进行转换,用户及其业务架构通常会面临诸多的挑战。阿里云混合云网络技术团队和阿里云网络产品团队自主创新研发的【开放网络服务平台】(简称:ONSP)构建在阿里云飞天洛神网络系统上,实现了飞天洛神网络和三方网络生态的充分融合,从而优化了企业客户生态服务的体验,更好的帮助客户迁云上云。
920 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
9553 0
朗新科技林海潮:企业应用的云上架构演变
2016云栖大会上海峰会于2016.1.20日在上海科技馆顺利举办。本文是根据朗新科技首席架构师林海潮在2016云栖大会上海峰会《互联网+架构及实践专场》的演讲中分享内容整理而成,林海潮分享了传统行业在使用云架构时采用的技术和一些心得收获。   下面是演讲内容整理。   业务场景及挑战  
5262 0
Tomcat 被爆漏洞,部署在阿里云上的应用该怎么办?
最近很多同学都听说了 Tomcat 的关于 AJP 的漏洞,国家信息安全漏洞共享平台(CNVD) 也对此进行披露,同时该漏洞综合评级被评为“高危”,这篇文章主要用来描述,如果确认您部署在阿里云上的应用受到了影响,该如何处理。
554 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
11347 0
【云栖号案例 | 医疗健康】华大基因上云 打造精准医疗应用云平台日志方案
基因数据产生的体量越来越大,超出了原有计算能力所能支持的范围。通过使用Maxcompute加速对人群结构的分析速度的进展,计算成本大幅降低至1000美金以内。
1028 0
+关注
9380
文章
243
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载