1. 背景

公有云市场历经多年发展,目前竞争格局已基本趋于稳定。最新的IDC数据显示,阿里巴巴、华为、中国电信、腾讯、中国移动为市场排名前五,市场份额总和约为70%。阿里云IaaS 市场规模依然一枝独秀, 是第二名华为云的2倍。下面就以自己粗浅认知,盘点下目前主流公有云的计算产品服务。

2. 计算产品分类

不同公有云的的IaaS计算产品的品类略有差别,我们刨去云电脑、云手机、定制操作系统等这些特色计算业务,主流的IaaS计算产品大致有如下分类所示:

3. 细节与底层技术

这里我们主要对主流公有云的标准云服务器、轻量服务器、弹性容器和函数计算这几个虚拟化的计算的产品做些分析。部分结论为技术猜测、含主观倾向。

标准云服务器

标准云服务器覆盖全业务场景,能支持高性能计算需求的场景。提供丰富的实例规格,支持实例、带宽、云盘等弹性扩容,有完备的安全方案。其特点总结如下:

  • 特性上最接近物理机
  • 支持X86、ARM
  • 弹性扩展(cpu、内存、带宽等)
  • 甚至可以安装虚拟化套件,可实现嵌套虚拟化
  • 宿主节点的服务器超分比为1:2-1:3之间
  • 底层开源的Hypervisor,一般选择使用QEMU

轻量云服务器

轻量云服务器适用于中低负载的场景,如企业建站、开发测试、微信小程序、云端学习环境等,其功能性一般比标准云服务器的功能略差,比如仅支持挂载一块数据盘,不支持IPv6地址(和公有云厂商使用的底层虚拟化技术相关)。

其特点如下:

  • 性价比高(费用低)
  • 可提供预置应用镜像,快速发放,开箱即用
  • 弹性受限扩展(对比标准ECS)
  • 不支持嵌套虚拟化
  • 宿主节点的服务器超分比为1:4-1:6之间 (有待考证)
  • 建议底层使用更轻量、现代的Hypervisor支持,比如Cloud-HypervisorStratoVirt(Huawei)

弹性容器

这里我们参考阿里云,将弹性容器划分到IaaS的计算产品中,而非容器产品中。不同于传统容器实例,目前公有云提供的弹性容器实例的底层已升级为安全容器,采用轻量级虚拟化隔离,为每个容器提供独立内核。相比传统Docker容器,其隔离性接近虚拟机级别,有效防止容器逃逸和横向渗透攻击。其不依赖容器编排引擎,成为事实上的与ECS并列的另外一种IaaS计算产品形态。

其特性如下:

  • 秒级启动:1秒内启动 ,显著快于云服务器
  • 强隔离性:运行在独立的轻量级虚拟化沙箱中,几乎等效虚拟机的隔离性
  • Pod级兼容:弹性容器实例等效K8s中 POD概念,可直接替换传统上的Pod
  • 弹性伸缩:快速自动扩缩容
  • 底层开源技术代表:Firecracker (AWS),gVisor (Google),Kata+Dragonball

函数计算

函数计算是基于事件驱动的全托管的Serverless的计算服务,用户无需管理服务器等基础设施,只需编写并上传代码。函数计算的底层一般采用弹性容器技术,将需要运行的代码放置于安全容器中,待执行代码后销毁容器。其特性如下:

  • 底层为安全容器,典型开源技术代表 Firecracker(AWS)、Kata+Dragonball
  • 按次计费:仅在代码实际运行消耗资源,未使用时零成本。
  • 弹性扩展:根据请求量自动毫秒级弹性伸缩
  • 免运维:无长期云服务器或容器实例,无需运维

4. 最后总结

纵观主流公有云计算产品,轻量服务器与安全容器已成为IaaS计算产品重要组成。这也是kata containers项目的研究领域。从kata 项目拿到的Hypervisor分析对比,供参考:

(一个有意思的现象是,除了QEMU为C语言,其他的Hypervisor都采用了Rust语言)

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐