1、官方定义
IaaS(Infrastructure as a service – 基础设施即服务):用户可以在云服务提供商提供的基础设施上部署和运行任何软件,包括操作系统和应用软件。用户没有权限管理和访问底层的基础设施,如服务器、交换机、硬盘等,但是有权管理操作系统、存储内容,可以安装管理应用程序,甚至是有权管理网络组件。简单的说用户使用IaaS,有权管理操作系统之上的一切功能。我们常见的IaaS服务有虚拟机、虚拟网络、以及存储。
PaaS(Platform as a service – 平台即服务):PaaS给用户提供的能力是使用由云服务提供商支持的编程语言、库、服务以及开发工具来创建、开发应用程序并部署在相关的基础设施上。用户无需管理底层的基础设施,包括网络、服务器,操作系统或者存储。他们只能控制部署在基础设施中操作系统上的应用程序,配置应用程序所托管的环境的可配置参数。常见的PaaS服务有数据库服务、web应用以及容器服务。成熟的PaaS服务会简化开发人员,提供完备的PC端和移动端软件开发套件(SDK),拥有丰富的开发环境(Inteli、Eclipse、VS等),完全可托管的数据库服务,可配置式的应用程序构建,支持多语言的开发,面向应用市场。
SaaS(Software as a Service – 软件即服务):SaaS给用户提供的能力是使用在云基础架构上运行的云服务提供商的应用程序。可以通过轻量的客户端接口(诸如web浏览器(例如,基于web的电子邮件))或程序接口从各种客户端设备访问应用程序。 用户无需管理或控制底层云基础架构,包括网络,服务器,操作系统,存储甚至单独的应用程序功能,可能的例外是有限的用户特定应用程序配置设置。类似的服务有:各类的网盘(Dropbox、百度网盘等),JIRA,GitLab等服务。而这些应用的提供者不仅仅是云服务提供商,还有众多的第三方提供商(ISV: independent software provider)。
我们说个通俗的例子:
我们以出去旅游为例
- On Premises:自己开车,需要维护汽车,是其安全工作。同时需要为车上保险,提供燃料。(服务器 + 操作系统/数据库 + 应用软件)
- Iaas:去旅游的时候,去租车公司租车,自己想去哪就去哪。自己需要承担安全驾驶的责任和相关的所有邮费高速费等。汽车的维修、安检都由租车公司承担。(使用者需要提供操作系统+应用软件)
- Paas:打车去。由专业的司机驾驶,自己制定目的地即可,汽车的行驶和运行都由司机决定。(使用者只需要提供应用软件即可)
- Saas:坐地铁去。所有的规则和线路由别人控制,根据自己需求,寻找最适合自己的应用。
目前主流的产品如下:
类别 | 应用 | 优势 |
---|---|---|
Iaas | 云主机、备份和恢复服务、CDN | 灵活、完全控制、高扩展度 |
Paas | 商业智能(BI)、数据库、开发和测试平台、应用软件部署 | 协同开发、高集成 |
Saas | 邮箱、协同工具、微信、微博、在线翻译 | 省心、快速启动 |