MicroVMهای AWS Lambda برای اجرای امن کد کاربر
خلاصهٔ کاملتر
آمازون سرویس تازهای به اسم AWS Lambda MicroVMs رو معرفی کرده؛ یه واحد محاسباتی سرورلس جدید که بهت اجازه میده کدی رو که کاربرها یا مدلهای هوش مصنوعی تولید میکنن، تو محیطهای ایزوله و باحالت (stateful) اجرا کنی. به گفتهٔ آمازون این سرویس با Firecracker کار میکنه؛ همون فناوری مجازیسازی سبکی که پشت تریلیونها فراخوانی ماهانهٔ خود لامبداست.
تو این مقاله اومده که چرا این سرویس لازم بوده. یه دسته اپلیکیشن چندمستأجری (multi-tenant) هست — مثل دستیارهای کدنویسی AI، محیطهای تعاملی کد، پلتفرمهای تحلیل داده و اسکنرهای آسیبپذیری — که باید به هر کاربر یه محیط اجرای اختصاصی بدن تا کدی که خود توسعهدهنده ننوشته امن اجرا شه. تا حالا انتخاب سختی بوده: ماشین مجازی جداسازی قوی میده ولی چند دقیقه طول میکشه بالا بیاد، کانتینر سریعه ولی چون کرنل مشترکه باید کلی سختسازی دستی روش انجام بدی.
نویسنده توضیح میده که مدل کار «ایمیج، بعد لانچ» هست. اول یه ایمیج MicroVM میسازی؛ یه Dockerfile و کدت رو بهصورت zip میدی، لامبدا Dockerfile رو اجرا میکنه، اپلیکیشنت رو بالا میاره و بعد یه اسنپشات Firecracker از حافظه و دیسک محیطِ در حال اجرا میگیره. هر MicroVM بعدی بهجای بوت سرد، از همون اسنپشات آماده resume میشه؛ برای همین راهاندازی و برگشت از حالت idle هر دو تقریباً آنیان.
قابلیت مهم بعدی، اجرای باحالته. یه MicroVM در حال اجرا، حافظه و دیسک و پروسههای در حال اجرا رو تو کل سشن کاربر نگه میداره. تو دورههای بیکاری میشه معلقش کرد (suspend) در حالی که حالتش دستنخورده میمونه و وقتی درخواست تازه اومد resume شه — از دید کاربر انگار اصلاً وقفهای نبوده. هر MicroVM تا ۸ ساعت اجرای کل رو پشتیبانی میکنه و میشه بعد از یه بازهٔ بیکاریِ قابلتنظیم خودکار معلقش کرد که هزینه رو پایین میاره.
به گفتهٔ آمازون این سرویس مکمل خود Lambda Functions هست، نه جایگزینش؛ لامبدای معمولی هنوز برای بارهای رویدادمحور و درخواست-پاسخ انتخاب درسته و MicroVMها برای اجرای کد ناشناخته تو ایزوله. الان تو چند ریجن (ویرجینیای شمالی، اوهایو، اورگن، ایرلند و توکیو) روی معماری ARM64 در دسترسه، با حداکثر ۱۶ vCPU، ۳۲ گیگ رم و ۳۲ گیگ دیسک برای هر MicroVM.
نکات کلیدی:
- Lambda MicroVMs یه واحد محاسباتی سرورلس تازه برای اجرای امن کد کاربر یا AI تو محیط ایزولهست
- روی Firecracker بنا شده و جداسازی سطح ماشین مجازی میده، بدون کرنل یا منابع مشترک
- مدل «ایمیج، بعد لانچ» با اسنپشات باعث راهاندازی و resume تقریباً آنی میشه
- حالت حافظه و دیسک تو کل سشن حفظ میشه؛ تا ۸ ساعت اجرا و suspend/resume خودکار
- مکمل Lambda Functions هست؛ الان روی ARM64 با تا ۱۶ vCPU و ۳۲ گیگ رم در دسترسه




