超实用11家PaaS公有云供应商服务功能要点总结

不久前,为企业PaaS云建设,个人对11家PaaS公有云供应商的服务内容进行了调查,共享出来,供进行PaaS项目建设的同仁参考。所有调查内容为2014年7月的状态,受限于项目建设目标,调查的范围主要是运行环境和MySQL数据库服务。

调查范围

  • Pivotal Web Services(based on CF)
  • 搜狐云景
  • IBM Bluemix(based on CF)
  • 百度开放云(based on CF)
  • Google App Engine
  • SinaAppEngine
  • 华为云服务
  • 腾讯弹性Web服务
  • 阿里云引擎ACE
  • AWS Elastic Beanstalk
  • 京东云擎(based on CF)

主要结论

无 论是否基于Cloud Foundry,除了华为这个假PaaS外,11家公有云运营商提供的PaaS模式均为:以运行环境(包括软件负载均衡、运行在虚拟机上的代码运行容器、 其他代码运行需要的框架/接口等)为主体,将关系数据库、文件存储、消息中间件、NoSQL数据库、分布式计算和存储平台、以及其他以API形式提供的服 务能力等作为扩展服务向外提供

  • 扩展服务通过相应技术平台所需的参数提供给用户,由用户自行在PaaS服务主体或其他场所进行使用
  • PaaS平台(如CF)是无法替代IaaS平台(如BMC CLM)的,二者将分别独立运行、共享门户提供服务
  • PaaS平台通常包括版本管理(SVN和GIT),以完成对于应用的生命周期管理
  • PaaS平台(如CF)仅对其主体(即运行环境)提供健全的监控等管理措施,其他扩展服务(如MySql)的架构、运维等并不是其关注范围
  • 关于MySQL数据库服务,通常包括共享和独享两种,共享为同一基础设施平台下的分用户服务,独享为单独基础设施平台上的单独实例服务,理想情况下应提供透明读写分离、异地复制、数据保护等数据库服务
  • 公有云供应商提供的单位运行环境和数据库通常都很小,所以他们的共享数据库环境很容易构建,买个满配580(4T内存)就能支持几万个数据库用户,私有云的共享数据库平台就得考虑一下自动扩容的问题了。
  • 运行环境弹性基本均包括水平和垂直两种,但是垂直是对所有运行环境均修改
  • 对于项目人员管理和项目多环境管理可参照Pivotal Web Services
  • 按策略进行弹性的功能可参照搜狐云景

服务要点-(重复功能未一一列出)

Pivotal Web Services(based on CF)

超实用11家PaaS公有云供应商服务功能要点总结

- 没有按照策略的应用弹性,只有手动的cf_scale

- 对每个项目/应用划分工作空间,这个功能对私有云很必要

- 对每个项目/应用划分域,需要企业域名多一级后全部划分给CF使用

- MySQL数据库是扩展服务,而且是第三方的(ClearDB,运行于Azure上的数据库公有云)

- 有eclipse插件,可以做GUI所有的事情和绝大部分CLI的事情

- 支持项目人员管理功能

搜狐云景

提供水平和垂直弹性,有弹性策略

超实用11家PaaS公有云供应商服务功能要点总结

超实用11家PaaS公有云供应商服务功能要点总结

数据库为独享的数据库群集,不透明的读写分离,估计只有两个节点,提供简单管理工具,配额按照数据容量调整,都是droplist,而不是textbox

超实用11家PaaS公有云供应商服务功能要点总结

IBM Bluemix(based on CF)

从文档上看,基本就是个CF,没做啥特别的东西,力气都放在was和db2集成上了。

百度开放云

MySql数据库为透明读写分离,多机房冗余,可以用任意MySql客户端连接,分为共享和独享,没有数据备份的选项

BAE作为狭义PaaS也不包括数据库,也就是说数据库是单独提供的扩展服务

应用是按照执行单元手动扩展的(支持水平和垂直,但是垂直是对所有的执行单元全部进行扩展),每个执行单元都是一个单独的虚拟机。没有策略驱动的弹性扩容

超实用11家PaaS公有云供应商服务功能要点总结

MySql数据库服务分为共有和私有,共有就是共用一个MySql实例,私有就是自己的MySql实例,但是连接方式是一致的,都是域名、用户名、密码,只能修改大小和字符集,有简单的MySql客户端,支持数据导入导出等,自动读写分离,多机房自动冗余备份

超实用11家PaaS公有云供应商服务功能要点总结

  • 负载均衡功能是默认隐含在BAE中的
  • Source code支持svn和git
  • 支持项目人员管理功能
  • 发布就是上传war包(CLI&GUI),没有集成开发环境插件,没有SDK
  • 有本地开发环境

Google App Engine

  • Eclipse插件,支持在本地运行调试程序,直接从Eclipse里部署到GAE中
  • SDK包是本地运行环境及其他Google提供的服务API,不包括用于使用App Engine资源的API
  • GAE作为狭义PaaS中不包含数据库,只包含运行环境(中间件及相应插件),关系数据库是用提供IP、user、password的方式提供给用户,然后自行配置到GAE中的应用中
  • 负载均衡功能是默认隐含在GAE中的
  • GAE的应用是分成模块的,每个模块有自己的版本管理和多个实例
  • 应用弹性是在实例级别的,分为自动(复杂策略、根据不同的因子去动态决定实例生成)、基本(在应用配置文件中指定最大值,会根据应用压力自动扩大最大值)和手动(在应用配置文件中指定固定个数,需重新注册改变)
  • Source code管理基于git,可连接到github
  • MySQL关系数据库服务按容量计费,可设置参数如下(初始化申请和之后的手动弹性变化),数据库是有异地复制的,推测应该也是分为共享和独享两种,可用MySQL的任何客户端进行连接:

超实用11家PaaS公有云供应商服务功能要点总结

超实用11家PaaS公有云供应商服务功能要点总结

SinaAppEngine

基于策略的弹性

超实用11家PaaS公有云供应商服务功能要点总结

不透明读写分离的MySQL数据库

超实用11家PaaS公有云供应商服务功能要点总结

华为云服务

它的PAAS是假的。。。

超实用11家PaaS公有云供应商服务功能要点总结

腾讯弹性Web服务

仅支持PHP的运行环境,设置的是实例上限

超实用11家PaaS公有云供应商服务功能要点总结

数据库按容量和访问次数计费

超实用11家PaaS公有云供应商服务功能要点总结

阿里云引擎ACE

超实用11家PaaS公有云供应商服务功能要点总结

支持自动弹性的运行环境

超实用11家PaaS公有云供应商服务功能要点总结

基于阿里MySQL技术的数据库服务

AWS Elastic Beanstalk

处于Beta阶段的服务,基本功能与上述公有云运营商提供的一致。

京东云擎(based on CF)

JAE应用属性

超实用11家PaaS公有云供应商服务功能要点总结

基于策略和手动的弹性

超实用11家PaaS公有云供应商服务功能要点总结

共享的数据库服务,多用户共用同一实例

相关推荐