inductor's blog

nothing but self note :)

Amazonが作ったサーバレスアプリケーションのための軽量VM、Firecrackerの論文を読み解く -導入編-

はじめに

こんにちは。inductorです。

以前にBorgの論文を翻訳しましたが、引き続いてFirecrackerの論文も訳していくことにしました。

FirecrackerはAmazonが作った軽量な仮想マシン管理のためのOSSで、ワークロードの実行にはコンテナを用いています。

元論文はこちらです

www.amazon.science

Abstract

サーバーレスコンテナやファンクションはクラウドでソフトウェアをデプロイしたり管理したりするために広く使われています。

それらの人気は、運用コストの削減、ハードウェアの利用率の向上、さらに、従来のデプロイ方法よりも高速なスケーリングによるものです。

サーバーレスアプリケーションの経済性と規模では、強力なセキュリティとパフォーマンスの分離を維持しながら、複数の顧客のワークロードを最小限のオーバーヘッドで同じハードウェアで実行する必要があります。

従来の見方では、強力なセキュリティと高いオーバーヘッドを備えた仮想化と、より弱いセキュリティと最小限のオーバーヘッドを備えたコンテナテクノロジーのどちらかを選択します。

このトレードオフは、強力なセキュリティと最小限のオーバーヘッドの両方を必要とするパブリックなインフラ事業者には受け入れられません。

こうしたニーズを満たすために、私達はFirecrackerを開発しました。

これは、新しい仮想マシンモニター(VMM)で、サーバーレスワークロードに特化しながらも一般的な合理的な範囲内でコンテナ、ファンクション、その他のワークロードにも使うことができます。

Firecrackerは、Amazon Web Servicesで公開されている2つのサーバーレスコンピューティングサービス(LambdaとFargate)でデプロイされており、数百万の本番ワークロードと月間数兆のリクエストを支えています。

本文では、Firecrackerの設計をサーバーレスに特化した方法と、Lambdaの利用者をFirecrackerにシームレスに移行することで学んだことを説明します。