梳理 云计算相关概念,包括 IaaS、PaaS、SaaS 以及容器运行时,并解释它们的关系和区别。


1️⃣ 云计算基本层次

云计算通过互联网提供计算资源和服务的技术,用户可以按需动态获取和释放资源。主要分为三种服务模式:

模式 英文 提供内容 用户关注点 示例
基础设施即服务 IaaS (Infrastructure as a Service) 计算资源、存储、网络 操作系统、应用部署、虚拟机管理 AWS EC2、阿里云 ECS、Google Compute Engine
平台即服务 PaaS (Platform as a Service) 应用运行环境、开发工具、数据库服务 关注应用逻辑开发,不用管理底层系统 Heroku、Google App Engine、Azure App Service
软件即服务 SaaS (Software as a Service) 完整应用 用户直接使用应用,不关心底层平台 Gmail、Office 365、Salesforce

🔹 核心区别

  • IaaS:提供硬件和虚拟化资源,用户自己搭建操作系统和应用。

  • PaaS:提供应用开发和运行平台,用户只管开发应用,底层基础设施由服务商管理。

  • SaaS:直接提供应用给用户使用,用户无需关心开发和运维。


2️⃣ 容器运行时(Container Runtime)

🔹 概念

  • 容器运行时是 执行和管理容器的低级软件,负责从镜像启动容器管理容器生命周期以及资源隔离

  • 位于操作系统和容器之间,是容器化技术的核心组件。

🔹 常见容器运行时

容器运行时 说明
Docker Engine 最流行的容器运行时,管理镜像、容器、网络、存储
containerd CNCF 项目,轻量级容器运行时,Docker 默认使用它
CRI-O 主要用于 Kubernetes,兼容 Kubernetes CRI(Container Runtime Interface)
runc 低级容器运行工具,实现 OCI(Open Container Initiative)规范

工作原理:

  1. 镜像 创建容器

  2. 分配 资源隔离(CPU、内存、文件系统、网络)

  3. 启动 进程 并管理生命周期

  4. 提供 API 给上层工具(如 Docker CLI、Kubernetes)


3️⃣ 总结

  • IaaS:云端硬件和虚拟机(自己管理系统和应用)

  • PaaS:云端应用平台(只开发应用,平台管理基础设施)

  • SaaS:云端应用(直接使用)

  • 容器运行时:在操作系统上运行容器的工具,是现代云原生和 PaaS 的基础

  • Serverless 让开发者专注于代码和业务逻辑,把服务器运维交给云厂商,同时按需付费并自动弹性扩展


CNCF(Cloud Native Computing Foundation,云原生计算基金会)

🔹 CNCF 基本介绍

  • 成立时间:2015 年,由 Linux 基金会发起。

  • 宗旨:推动 云原生(Cloud Native)技术 的发展与普及,构建一个开放、厂商中立的生态系统。

  • 定义:CNCF 致力于帮助开发者和企业采用容器化、微服务、服务网格、可观测性、无服务器计算等云原生技术,以实现 可扩展、弹性、可移植 的现代应用。


🔹 CNCF 的核心理念(Cloud Native 三要素)

  1. 容器化(Containerization):应用以容器为最小交付和运行单元,实现轻量级隔离与快速部署。

  2. 微服务化(Microservices):将单体应用拆解为独立的微服务,便于独立开发、部署和扩展。

  3. 动态编排(Dynamic Orchestration):通过 Kubernetes 等编排系统自动化管理容器的调度、伸缩和运维。

扩展要素:服务网格、声明式 API、自愈系统、可观测性 等。

云原生技术:云原生基金会推出的技术

k8s

Prometheus
Logo

加入「COC·上海城市开发者社区」,成就更好的自己!

更多推荐