下面这些术语是什么意思?

SaaS PaaS IaaS吗?

现在有各种各样的云服务,比如亚马逊的EC2和AWS、Apache Hadoop、微软Azure和许多其他云服务。它们分别属于哪一类,为什么?


当前回答

云服务模型主要分为三类:

软件即服务(SaaS) 平台即服务(PaaS) 基础设施即服务(IaaS)

软件即服务(SaaS)

SaaS是一种为最终客户集中托管和管理的软件。它通常基于多租户架构(应用程序的单个版本用于所有客户),并且通常通过每月或每年的订阅获得许可。

例子 Office 365、Dropbox、Dynamics CRM Online都是SaaS软件的完美例子,订阅者每月或每年支付订阅费,就可以获得Exchange即服务(在线和/或桌面Outlook)或Storage即服务(OneDrive和Dropbox)。

平台即服务(PaaS)

使用PaaS,您可以将应用程序部署到云服务供应商提供的应用程序托管环境(专为构建、测试和部署软件应用程序而设计)中。开发人员有多种方式来部署他们的应用程序,而不需要知道任何支持它的后台发生了什么。

例子 Azure应用程序服务和Azure云服务(Web和工作人员角色)中的Web应用程序功能是PaaS的一个例子。

基础设施即服务(IaaS)

IaaS云供应商运行和管理运行虚拟化软件的服务器场,使您能够创建运行在供应商基础设施上的虚拟机(运行Windows或Linux),并在其上安装您想要的任何东西。开发人员不能控制硬件或虚拟化软件,但他们可以控制几乎所有其他的东西。事实上,与PaaS不同的是,您完全要对它负责。

参考文献

书:云架构:云计算服务模型(SaaS、PaaS和IaaS)的设计决策

其他回答

IaaS PaaS和SaaS的区别

在下面的表格中,我们将解释上下文的差异

  pizza as a service 

我分享我的经验以及NIST的标准定义。我是产品公司的开发人员,我们拥有数据库和客户端(生态系统)。在许多清晰的图片旁边,由于许多参与者(NIST定义的5)和事物与预测不同,混淆出现了。

对于IaaS和裸金属部署,我们出售许可证和包,可以从CD或FTP服务器(rpm)获得。代码经过编译、测试和交付。在这里,我们的客户向我们支付(许可证成本)和/或向云提供商支付实例费用。

我们与云供应商(技术合作伙伴)合作,通过市场销售我们的产品。

通常我们在PaaS的情况下提供图像(ami,vhd等)+一些(云形成模板或ARM模板等)。我们有Jenkins管道将它们放在市场上(基于版本)。这里有一些技能,开发人员可以登录到实例并操作软件(例如,在数据库实例启动后登录并完全删除软件,使它看起来像EC2实例)

在SaaS的情况下,我们的Jenkins管道将直接部署(无论是web应用程序,azure/lambda函数)。开发人员/终端用户对物理硬件的控制都不低。

下面是NIST定义的参与者,因为开发者(提供软件的技术公司)是云提供商的合作伙伴,开发者最好的匹配是云提供商。

有三种主要类型的云服务:IaaS、PaaS和SaaS。您可能在云提供商的网站上看到过这些缩写。在讨论细节之前,让我们先比较一下IaaS、PaaS和SaaS与传输的关系:

On-premises IT infrastructure is like owning a car. When you buy a car, you’re responsible for its maintenance, and upgrading means buying a new car. IaaS is like leasing a car. When you lease a car, you choose the car you want and drive it wherever you wish, but the car isn’t yours. Want an upgrade? Just lease a different car! PaaS is like taking a taxi. You don’t drive a taxi yourself, but simply tell the driver where you need to go and relax in the back seat. SaaS is like going by bus. Buses have assigned routes, and you share the ride with other passengers.

参考:https://rubygarage.org/blog/iaas-vs-paas-vs-saas

云服务模型主要分为三类:

软件即服务(SaaS) 平台即服务(PaaS) 基础设施即服务(IaaS)

软件即服务(SaaS)

SaaS是一种为最终客户集中托管和管理的软件。它通常基于多租户架构(应用程序的单个版本用于所有客户),并且通常通过每月或每年的订阅获得许可。

例子 Office 365、Dropbox、Dynamics CRM Online都是SaaS软件的完美例子,订阅者每月或每年支付订阅费,就可以获得Exchange即服务(在线和/或桌面Outlook)或Storage即服务(OneDrive和Dropbox)。

平台即服务(PaaS)

使用PaaS,您可以将应用程序部署到云服务供应商提供的应用程序托管环境(专为构建、测试和部署软件应用程序而设计)中。开发人员有多种方式来部署他们的应用程序,而不需要知道任何支持它的后台发生了什么。

例子 Azure应用程序服务和Azure云服务(Web和工作人员角色)中的Web应用程序功能是PaaS的一个例子。

基础设施即服务(IaaS)

IaaS云供应商运行和管理运行虚拟化软件的服务器场,使您能够创建运行在供应商基础设施上的虚拟机(运行Windows或Linux),并在其上安装您想要的任何东西。开发人员不能控制硬件或虚拟化软件,但他们可以控制几乎所有其他的东西。事实上,与PaaS不同的是,您完全要对它负责。

参考文献

书:云架构:云计算服务模型(SaaS、PaaS和IaaS)的设计决策

下面是AWS每项服务的另一个例子:

IaaS(基础设施即服务):通过硬件获得整个基础设施。您已经选择了需要安装的操作系统类型。你必须安装必要的软件。

AWS示例:只有硬件的EC2,您选择要安装的基本操作系统。如果你想在上面安装Hadoop,你必须自己动手,它只是AWS提供的基础设施。

PaaS(平台即服务):为您提供带有操作系统和必要基础软件的基础设施。您必须运行脚本以获得所需的输出。

AWS举例:EMR已安装硬件(EC2) + Base OS + Hadoop软件。你必须运行hive/spark脚本来查询表并得到结果。您将需要调用实例并等待10分钟以准备好设置。您必须根据正在运行的作业考虑需要多少个集群,但不必担心集群配置。

SaaS(软件即服务):你不必担心硬件甚至软件。所有的东西都将被安装好,供您立即使用。

示例:Athena,它只是一个UI,用于查询S3中的表(元数据存储在Glu中)。只需打开浏览器登录AWS并开始运行您的查询,无需担心RAM/存储/CPU/集群数量,所有的一切都由云处理。