IaaS、PaaS、SaaS 是什么?
序言
今天我们来讲讲 IaaS、PaaS、SaaS
原因是今天配环境的时候,mt 给我发了一句 ![[企业微信截图_82d7be3f-0360-4656-82d6-05dec534a065.png]] emmm,说实话,我对这三个 aas 的理解来自于大二上学习 云计算 这门课,是为了应付考试刷了很多次题库,理解始终处于一种非常浅显的理解。
PaaS:平台即服务 SaaS:软件即服务 IaaS:基础设施即服务
我当时理解的其实就这么多,而对于 平台、软件 对应的服务是什么不知道。 å 希望阅读完以下内容,能让你对这些服务有基本的了解。
正文
IaaS、PaaS、SaaS 是云计算的三大服务模式,分别代表 基础设施、平台和软件的服务化。 它们在资源管理、用户操作、应用开发等层面抽象程度不同,适用场景和用户角色也各有侧重。
IaaS
IaaS:Infrastructure as a Service、基础设施即服务。为用户提供底层计算、存储、网络等基础资源,用户可以按需租用虚拟机、存储空间、网络等硬件资源,无需自建数据中心。用户负责在这些资源上安装操作系统、部署应用,拥有较高的灵活性和控制权。
看到这些,大家应该就能轻松想到,我们平常看到的各种云服务器。比如 AWS EC2、阿里云 ECS、OpenStack 等,就属于 IaaS。适用于需要高度定制化、对底层资源有特殊需求的企业或开发者。
它的优势:弹性扩展、资源利用率高、自动化运维;劣势:用户需自行管理操作系统、应用环境,运维压力较大。
这里你可能会有些迷糊,为什么已经是自动化运维了,还会存在用户运维压力较大呢?
本质上是,IaaS 卖的是基础设施的运维。
比如你的 云服务器 的物理机硬盘暴了,它能做到自动数据迁移;你设置好了访问流量策略,人多时加机器扩容,人少时缩容。而这些都是云厂商自动帮你做的,当你看到信息前你是无感的。
而用户的运维压力源自于,云厂商提供给你的是一个虚拟机,这台机器的系统你需要自己搭、端口开放策略自己决定、性能压力很大你需要自己排查(这里为什么不是自动扩缩容,因为云厂商只保证物理机性能没被别人抢走)
简单来说:IaaS 就是你租一个毛坯厨房(虚拟机),里面有水电气。然后就没了,什么锅啊、灶台啊、菜啊,自己想办法去。并且设备坏了,call 给云厂商给你换,但是你又得重新装修。
PaaS
PaaS:Platform as a Service,平台即服务。 PaaS 在 IaaS 之上进一步抽象,提供应用开发、运行、管理所需的平台环境,包括数据库、中间件、开发框架、容器管理等。开发者只需关注应用代码,无需管理底层硬件和操作系统。
说白了,就是将底层硬件进行封装,使用可视化界面进行底层硬件管理。我们常见的 xx后台管理系统,就类似于PaaS。
比如 Google App Engine、Heroku、蓝鲸PaaS平台、OpenShift 等,就属于 PaaS。适用于快速开发、部署、迭代应用的场景,尤其是中小团队或需要敏捷开发的企业。(敏捷开发就是迭代速度要快
优势:开发效率高、自动化部署、资源弹性、运维简化;劣势:平台限制较多,部分场景下对底层资源的控制有限。
这里的平台限制,很好理解,就是固化。我平台只支持 python 3.9,我的代码使用了 3.12 的异步,部署到平台上,发现运行不了,你怎么解决?只能降级,因为平台不是你的,升级版本可能就是个把月后才会做的。
简单来说:PaaS 就是你租了一个标准的中央厨房(应用运行环境),灶台(操作系统)已经砌好,锅(数据库/中间件)已经架上,甚至连切好的葱姜蒜(常用依赖库)都给你装在小碗里了。但是,可能中央厨房会限制你每道菜烹饪时间为 xx分钟,你要是文火煲个鸡汤,你吃的没准还是生的。
SaaS
SaaS:Software as a Service,软件即服务。SaaS是最高层的云服务,直接向用户提供完整的软件应用(比如邮箱、CRM、ERP、协同办公等),用户无需开发、部署、维护,只需通过浏览器或客户端使用就行了。
常见的就是 Salesforce、飞书、企微、蓝鲸SaaS应用等。适用于对IT能力要求低、希望快速上线业务的企业和个人。
优势:即开即用、无需运维、按需付费、升级维护由服务商负责;劣势:定制能力有限,数据安全需依赖服务商。
这就涉及到数据安全的问题了,hh,虽然小公司的数据不是什么非必要的数据......
简单来说:SaaS 就是你直接点外卖,然后吃就可以了
结语
这三种模式,在我看来就是一句话:降低技术门槛,让业务更加简便。
不知道各位看完后,是否对这三个模式有了基础的了解。
最后我想说一些额外的话,可能大家对于这些东西,会有疑问,说:我一定要学这东西吗?好多内容,我要不要都记住?
我的回答是:不需要,你只需看过,有印象,就够了。
愿诸君顺遂。