如何评价aws开源的firecracker,它对接下来的虚拟机、容器发展方向带来什么变化吗?

猪小花1号提问于 2019-01-08 15:55
1 个回答
  • 未来已来2019-01-08 15:57


    这是 Serverless(无服务器) 前进的一步,也是开源前进的一步。125ms 启动时间、5 MiB 内存占用的 microVM ,让容器/函数轻易获得隔离性的加持(现阶段容器和函数的安全性还是靠虚拟化了),而 AWS 开源此项技术,表明基础技术的未来还是开源。


    一台主机如何运行 Firecracker microVM

    Serverless 技术给企业带来的好处是开发速度快、运营成本低,作为主要载体的 Serverless 容器,可以支持这种高效,但业界一直致力于改善容器安全层面的问题。Firecracker 的出现,可以让在公有云上开发 Serverless 应用的行为提供安全保障 。


    作为云计算领域的友商,网易云也通过公有云直接提供 Serverless 容器服务,采用 Kubernetes 编排技术,支持多租户动态运行模式,效率与安全性的平衡,采用容器和 IaaS 深度融合的模式,支持容器与云主机间扁平网络互通,只有一层 Overlay,也是绞尽脑汁减少不必要的虚拟化开销。


    不过 Firecracker 为客户操作系统提供了最少的所需设备模型,减少开销,减少攻击面:

    只有网络设备,block I / O 设备,可编程定时器,KVM 时钟,串行控制台和一个不完全的键盘(刚好足以让 VM 重置)。


    至于采用 Rust 开发,也是项目决定语言,Rust 有利于保证线程安全并防止可能导致安全漏洞的多种类型的缓冲区溢出错误。


    另外,KVM 已经是云计算的主旋律,AWS 把 Firecracker 开源出来,更多的企业可以使用这项云原生技术来代替 QEMU,想必 AWS 也希望企业可以由此去尝试 AWS Lambda 和 AWS Fargate 。


    AWS 架构策略副总裁 Adrian Cockcroft 接受采访时曾说过一段话,表示开源有利于产品和公司的长远发展。


    独行固然会因为没有太多负担而走得更快,但是你想走得远,就应该一群人走。开源社区可能做事情速度会特别慢,比如你在开源一个项目之前会需要做许多文案工作,给使用者和开源贡献者非常明确的技术指引;同时开源也涉及到了专利版权等内容,这些都会拖慢开源的速度。但是因为是一群人走,所以大家会‘相互搀扶’,这其中也会产生各种各样的创新。


    当然,对这种特性需求更强烈的,还是对多租户隔离要求很高的公有云。诚如其他答友所说,大型云计算厂商通常都有的设备模型的计划,Firecracker 是否适合要两说,不过技术路线验证方面,都可以承 AWS 的情。


    Firecracker 经过了很多测试,已经为包括 AWS Lambda 和 AWS Fargate 在内的多个高容量 AWS 服务提供支持。