缩写 | 全称 | 中文 |
---|---|---|
IaaS | Infrastructure as a service | 基础设施即服务 |
PaaS | Platform as a service | 平台即服务 |
SaaS | Software as a Service | 软件即服务 |
服务: 指履行职务,为他人做事,并使他人从中受益的一种有偿或无偿的活动,不以实物形式而以提供劳动的形式满足他人某种特殊需要。
上面提及的”基础设置“、”平台“、”软件“,和传递意义上当成工业产品售卖(属于第二产业)不同,这里更多的是指”服务页范畴“(属于第三产业);而 ”Service“,和传统意义上因社会分工导致的”专业技能输出“的服务(服务员、医生)也有差异,这里更多的是指”经验知识传授“,通过软件来服务。
硬件资源:网络、存储、服务器、虚拟化技术 ==> 【基础设施】 中间层:运行库、中间件、运行系统 ==> 【平台】 使用者接触的:应用、数据 ==> 【软件】
虚拟化技术:指计算元件在虚拟的基础上而不是真实的基础上运行,可以扩大硬件的容量
Q | A |
---|---|
供应商提供什么? | 提供场外服务器、存储、网络硬件等 |
使用者需要做什么? | 需要环境配置、应用程序开发 |
供应商为客户提供对云中存储、网络、服务器和其他计算资源的即用即付访问。
典型的案例:生态型云计算平台,如AWS。用虚拟化操作系统、工作负载管理软件、硬件、网络和存储服务的形式交付计算资源。它也可以包括操作系统和虚拟化技术到管理资源的交付。
IaaS 使最终用户能够根据需要扩展和缩减资源,从而减少对高昂的前期资本支出或不必要的“自有”基础设施的需求,尤其是在“尖峰”工作负载的情况下。与 PaaS 和 SaaS(甚至是容器和无服务器等较新的计算模型)相比,IaaS 提供对云中资源的最低级别控制。
如果不想再硬件上投入太多,且存在扩展或缩小的情况,IaaS 是很好的选择。特别是初创公司或小公司。
Q | A |
---|---|
供应商提供什么? | 提供应用程序开发环境或部分应用 |
使用者需要做什么? | 需要应用程序开发 |
服务提供商提供对基于云的环境的访问(包括底层基础设施),用户可以在其中构建和交付应用程序。其面向开发人员和程序员,它允许用户开发、运行和管理自己的应用,而无需构建和维护通常与该流程相关联的基础架构或平台。
PaaS 旨在支持 Web 应用程序的完整生命周期:生成、测试、部署、管理和更新。你需要管理自己开发的应用程序和服务,剩余事项一般由云服务提供商负责。
典型的案例:AWS Elastic Beanstalk、Google App Engine。
如果有多个开发人员在同一个开发项目上工作,或者必须包含其他供应商,PaaS 可以为整个过程提供极大的速度和灵活性。国内运营商行业都具有自己的 PaaS 平台,如移动-磐基。
Q | A |
---|---|
供应商提供什么? | 提供可直接使用的应用程序 |
使用者需要做什么? | 登录浏览器使用 |
服务提供商通过互联网提供软件和应用程序,用户订阅该软件并通过 Web 或供应商 API 访问它。
传统模式下,厂商通过 License 将软件产品部署到企业内部多个客户终端实现交付。SaaS 定义了一种新的交付方式,也使得软件进一步回归服务本质。SaaS 是一种软件布局模型,其应用专为网络交付而设计,便于用户通过互联网托管、部署及接入。
典型的案例:Google Apps。
PaaS 平台可以采用原生 K8S+Docker 技术。
功能项包括: 多租户管理、集群管理、组件服务、资源调度、镜像/微服务管理、交付管理、运维管理、安全管理等等。
特性:
数据安全和网络安全是 SaaS 需要关注的重点。不仅要保证数据不丢失,还需要保证用户在业务增减等原因导致的安全需求发生变化时能灵活调整。同时,由于平台被多租户共享,数据信息交互复杂,对数据权限的要求极高。
多租户: SaaS 服务通常基于一套标准软件系统为成百上千的不同客户(又称为租户)提供服务。这要求 SaaS 服务能够支持不同租户之间数据和配置的隔离,从而保证每个租户数据的安全与隐私,以及用户对诸如界面、业务逻辑、数据结构等个性化需求。由于 SaaS 同时支持多个租户,每个租户又有很多用户,这对支撑软件的基础设施平台的性能、稳定性和扩展性提出很大挑战。