ワイワレ速報

eye-catch.jpg

AWS Lambdaを支える技術 - ABEJA Tech Blog

2024/12/10 01:35

AWS Lambdaを支える技術 - ABEJA Tech BlogAWS Lambdaを支える技術 - ABEJA Tech Blog引用元:

https://tech-blog.abeja.asia/entry/advent-2024-day09

ずん

「AWS Lambdaを支えるFirecrackerって、なんかすごそうだけど、結局何がそんなに特別なのだ?」

でぇじょうぶ博士

「おお、それは良い質問でやんす!Firecrackerは、AWSが開発した軽量仮想化技術でやんす。従来の仮想マシンよりも高速で軽量なMicroVMを実現しているのが特徴でやんすよ。」

やきう

「ほーん。でもそれって結局、Dockerとかとどう違うねん?名前変えただけちゃうんか?」

でぇじょうぶ博士

「いやいや、それは違うでやんす。Dockerはコンテナ技術でOSレベルの仮想化を行うけど、Firecrackerはハードウェアレベルの分離を提供するMicroVMなんでやんす。セキュリティとパフォーマンスのバランスが絶妙なんでやんすよ。」

ずん

「でもさぁ、起動時間とか気になるのだ。遅かったら意味ないじゃないか!」

でぇじょうぶ博士

「そこがFirecrackerの真骨頂でやんす!BIOSとかUEFIを使わず直接カーネルイメージをロードするから、起動時間はたった125ミリ秒程度なんでやんす!」

やきう

「125ミリ秒!?ワイがラーメンすすり始める前に終わっとるな。それなら許したるわ。」

ずん

「でも博士、その軽量性って具体的にどう実現されてるのだ?」

でぇじょうぶ博士

「例えばmmapによる匿名メモリ割り当てとか、VirtIOデバイスモデルの最小化など、多くの工夫があるでやんす。そしてKVMを使ってvCPUを管理することで、高速なエミュレーションも不要になっているのでやんすよ。」

ずん

「むむむ…難しい話なのだ。でもOSSとして公開されてるなら、自分でも触れるチャンスあるってこと?」

やきう

「お前みたいな怠け者には無理無理。GitHub開いた瞬間に寝落ちしそうな顔しとるぞ。」

ずん

「ぐぬぬ…まぁいいのだ!ボクにはまだABEJAへの就職という手段が残されている!」