เบญเบฑเบšเป€เบ”เบ”เป€เบ›เบฑเบ™ Intel Cloud Hypervisor 0.3 เปเบฅเบฐ Amazon Firecracker 0.19 hypervisors เบ‚เบฝเบ™เปƒเบ™ Rust

Intel เบˆเบฑเบ”เบžเบตเบกเบกเบฒ เบชเบฐเบšเบฑเบšเปƒเบซเบกเปˆเบ‚เบญเบ‡ hypervisor Cloud Hypervisor 0.3. hypervisor เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปƒเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบš
เป‚เบ„เบ‡เบเบฒเบ™เบฎเปˆเบงเบก Rust-VMM, เปƒเบ™เบ™เบฑเป‰เบ™, เบ™เบญเบเบˆเบฒเบ Intel, Alibaba, Amazon, Google เปเบฅเบฐ Red Hat เบเบฑเบ‡เป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบก. Rust-VMM เบ–เบทเบเบ‚เบฝเบ™เป€เบ›เบฑเบ™เบžเบฒเบชเบฒ Rust เปเบฅเบฐเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡ hypervisors เบชเบฐเป€เบžเบฒเบฐเบซเบ™เป‰เบฒเบงเบฝเบ. Cloud Hypervisor เปเบกเปˆเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™ hypervisor เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ virtual เบฅเบฐเบ”เบฑเบšเบชเบนเบ‡ (VMM) เปเบฅเปˆเบ™เบขเบนเปˆเป€เบ—เบดเบ‡เบ‚เบญเบ‡ KVM เปเบฅเบฐเบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡เปƒเบซเป‰เป€เบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™ cloud-native. เบฅเบฐเบซเบฑเบ”เป‚เบ„เบ‡เบเบฒเบ™ เบกเบต เบญเบฐเบ™เบธเบเบฒเบ”เบžเบฒเบเปƒเบ•เป‰ Apache 2.0.

Cloud Hypervisor เปเบกเปˆเบ™เบชเบธเบกเปƒเบชเปˆเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เปเบˆเบเบขเบฒเบ Linux เบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบกเป‚เบ”เบเปƒเบŠเป‰เบญเบธเบ›เบฐเบเบญเบ™ paravirtualized เบ—เบตเปˆเบญเบตเบ‡เปƒเบชเปˆ virtio. เปƒเบ™เบšเบฑเบ™เบ”เบฒเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเป„เบ”เป‰เบเปˆเบฒเบงเบกเบฒเปเบกเปˆเบ™: เบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบชเบนเบ‡, เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบ„เบงเบฒเบกเบˆเปเบฒเบ•เปˆเปเบฒ, เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบชเบนเบ‡, เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเปเบฅเบฐเบเบฒเบ™เบซเบผเบธเบ”เบœเปˆเบญเบ™ vectors เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰.

เบเบฒเบ™เบชเบฐเปœเบฑเบšเบชเบฐเปœเบธเบ™เบเบฒเบ™เบˆเบณเบฅเบญเบ‡เปเบกเปˆเบ™เบ–เบทเบเบฎเบฑเบเบชเบฒเป„เบงเป‰เปœเป‰เบญเบเบ—เบตเปˆเบชเบธเบ” เปเบฅเบฐเป€เบ™เบฑเป‰เบ™เปƒเบชเปˆเบเบฒเบ™เบ›เบฑเบšเบ•เบปเบงเปเบšเบš paravirtualization. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบตเบžเบฝเบ‡เปเบ•เปˆเบฅเบฐเบšเบปเบš x86_64 เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™, เปเบ•เปˆเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ AArch64 เป„เบ”เป‰เบ–เบทเบเบงเบฒเบ‡เปเบœเบ™เป„เบงเป‰. เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบšเปเบ‚เบ, เบžเบฝเบ‡เปเบ•เปˆ 64-bit builds เบ‚เบญเบ‡ Linux เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™. CPU, เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, PCI เปเบฅเบฐ NVDIMM เบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบขเบนเปˆเปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบ›เบฐเบเบญเบš. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบเป‰เบฒเบเป€เบ„เบทเปˆเบญเบ‡ virtual เบฅเบฐเบซเบงเปˆเบฒเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ.

เปƒเบ™โ€‹เบชเบฐโ€‹เบšเบฑเบšโ€‹เปƒเบซเบกเปˆโ€‹:

  • เบชเบทเบšเบ•เปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบ I/O paravirtualized เป„เบ›เบชเบนเปˆเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เปƒเบŠเป‰ backends เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบเบฒเบ™เบžเบปเบงเบžเบฑเบ™เบเบฑเบšเบญเบธเบ›เบฐเบเบญเบ™เบ•เบฑเบ™ vhost-user-blk. เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบญเบธเบ›เบฐเบเบญเบ™เบ•เบฑเบ™เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเป‚เบกเบ”เบนเบ™ vhost-user เบเบฑเบš Cloud Hypervisor, เป€เบŠเบฑเปˆเบ™: SPDK, เป€เบ›เบฑเบ™ backends เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒ paravirtualized;
  • เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบเบฑเบš backends, เบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเปƒเบ™เบเบฒเบ™เบ›เปˆเบญเบเบซเบผเป‰เบฒเบชเบธเบ” vhost-user-net, เบ‚เบฐเบซเบเบฒเบเบ”เป‰เบงเบ backend เปƒเปเปˆเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเป„เบ”เป€เบงเบตเป€เบ„เบทเบญเบ‚เปˆเบฒเบเบชเบฐเป€เปเบทเบญเบ™ TAP. backend เปเบกเปˆเบ™เบ‚เบฝเบ™เปƒเบ™ Rust เปเบฅเบฐเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™ Cloud Hypervisor เป€เบ›เบฑเบ™เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเป€เบ„เบทเบญเบ‚เปˆเบฒเบ para-virtualized เบ•เบปเป‰เบ™เบ•เป;
  • เป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ•เบดเบžเบฒเบšเปเบฅเบฐเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบเบฒเบ™เบชเบทเปˆเบชเบฒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเป€เบˆเบปเป‰เบฒเบžเบฒเบšเปเบฅเบฐเบฅเบฐเบšเบปเบšเปเบ‚เบ, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบšเบšเบ›เบฐเบชเบปเบกเบ‚เบญเบ‡เบŠเบฑเบญเบเป€เบเบฑเบ”เบ—เบตเปˆเบกเบตเบ—เบตเปˆเบขเบนเปˆ AF_VSOCK (เบŠเบฑเบญเบเป€เบเบฑเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบ virtual), เป€เบฎเบฑเบ”เบงเบฝเบเบœเปˆเบฒเบ™ virtio. เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบกเปˆเบ™เบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™ เป€เบ•เบปเบฒเป„เบŸ, เบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบ Amazon. VSOCK เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เปƒเบŠเป‰ POSIX Sockets API เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบชเปเบฒเบžเบฑเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ•เปˆเบฒเบ‡เป†เปƒเบ™เบ”เป‰เบฒเบ™เบ‚เบญเบ‡เปเบ‚เบเปเบฅเบฐเป€เบˆเบปเป‰เบฒเบžเบฒเบš, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบ‡เปˆเบฒเบเบ•เปเปˆเบเบฒเบ™เบ”เบฑเบ”เปเบ›เบ‡เป‚เบ„เบ‡เบเบฒเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบ—เปเบฒเบกเบฐเบ”เบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบชเปเบฒเบžเบฑเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ‚เบญเบ‡เป‚เบ›เปเบเบผเบกเบฅเบนเบเบ„เป‰เบฒเบซเบผเบฒเบเป†เบเบฑเบšเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ”เบฝเบงเบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ;
  • เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบชเปเบฒเบฅเบฑเบš API เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เป‚เบ”เบเปƒเบŠเป‰ HTTP protocol. เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”, API เบ™เบตเป‰เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบชเบฒเบกเบฒเบ”เบฅเบดเป€เบฅเบตเปˆเบกเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบšเปเปˆเบเบปเบ‡เบเบฑเบ™เปƒเบ™เบฅเบฐเบšเบปเบšเปเบ‚เบ, เป€เบŠเบฑเปˆเบ™: เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเบชเบฝเบšเป„เบŸเบฎเป‰เบญเบ™ เปเบฅเบฐเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบ;
  • เป€เบžเบตเปˆเบกเบŠเบฑเป‰เบ™เบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ‚เบปเบ™เบชเบปเปˆเบ‡เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ virtio MMIO (Memory mapped virtio), เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบฅเบฐเบšเบปเบšเปเบ‚เบเบ—เบตเปˆเบ™เป‰เบญเบเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™ PCI bus emulation;
  • เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบฅเบดเป€เบฅเบตเปˆเบกเป€เบžเบทเปˆเบญเบ‚เบฐเบซเบเบฒเบเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบšเปเบ‚เบเบ—เบตเปˆเบงเบฒเบ‡เป„เบงเป‰, Cloud Hypervisor เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบชเบปเปˆเบ‡เบ•เปเปˆเบญเบธเบ›เบฐเบเบญเบ™ IOMMU paravirtualized เบœเปˆเบฒเบ™ virtio, เป€เบŠเบดเปˆเบ‡เบ›เบฑเบšเบ›เบธเบ‡เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบญเบธเบ›เบฐเบเบญเบ™เบ—เบตเปˆเบงเบฒเบ‡เป„เบงเป‰เปเบฅเบฐเบชเบปเปˆเบ‡เบ•เปเปˆเป‚เบ”เบเบเบปเบ‡.
  • เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš Ubuntu 19.10;
  • เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เปเบฅเปˆเบ™เบฅเบฐเบšเบปเบšเปเบ‚เบเบ—เบตเปˆเบกเบต RAM เบซเบผเบฒเบเบเบงเปˆเบฒ 64 GB.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เป„เบ”เป‰ เบเบฒเบ™เบ›เปˆเบญเบเปƒเบซเบกเปˆ เบ•เบดเบ”เบเบฑเบš เบžเบฑเบ”เบ—เบฐเบ™เบฒ เบˆเปเป€เบ„เบทเปˆเบญเบ‡ virtual เป€เบ•เบปเบฒเป„เบŸ, เบเบฑเบ‡เบ‚เบฝเบ™เป€เบ›เบฑเบ™ Rust, เบญเบตเบ‡เบ•เบฒเบก Rust-VMM เปเบฅเบฐเปเบฅเปˆเบ™เบขเบนเปˆเป€เบ—เบดเบ‡เบชเบธเบ”เบ‚เบญเบ‡ KVM. Firecracker เปเบกเปˆเบ™เบชเป‰เบญเบกเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™ CrosVM, เปƒเบŠเป‰เป‚เบ”เบ Google เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เบ•เบปเบงเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™ Linux ะธ Android เปƒเบ™ ChromeOS. Firecracker เบเปเบฒเบฅเบฑเบ‡เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบ Amazon Web Services เป€เบžเบทเปˆเบญเบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเบฐเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ‚เบญเบ‡เปเบžเบฅเบฐเบ•เบฐเบŸเบญเบก AWS Lambda เปเบฅเบฐ AWS Fargate.

เปเบžเบฅเบฐเบ•เบฐเบŸเบญเบกเบ–เบทเบเบญเบญเบเปเบšเบšเบกเบฒเป€เบžเบทเปˆเบญเปเบฅเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡ virtual เบ—เบตเปˆเบกเบตเบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเบซเบ™เป‰เบญเบเบ—เบตเปˆเบชเบธเบ”เปเบฅเบฐเบชเบฐเบซเบ™เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบกเบทเปƒเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡เปเบฅเบฐเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ—เบตเปˆเป‚เบ”เบ”เบ”เปˆเบฝเบงเปเบฅเบฐเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เป‚เบ”เบเปƒเบŠเป‰เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ serverless (เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เบšเปเบฅเบดเบเบฒเบ™). Firecracker เบชเบฐเบซเบ™เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ virtual เบ—เบตเปˆเบกเบตเบ™เป‰เปเบฒเบซเบ™เบฑเบเป€เบšเบปเบฒ, เป€เบญเบตเป‰เบ™เบงเปˆเบฒ microVMs, เบ—เบตเปˆเปƒเบŠเป‰เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบต virtualization เบฎเบฒเบ”เปเบงเป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป‚เบ”เบ”เบ”เปˆเบฝเบงเบ—เบตเปˆเบชเบปเบกเบšเบนเบ™เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเบฐเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบšเบฑเบ™เบˆเบธเปเบšเบšเบ”เบฑเป‰เบ‡เป€เบ”เบตเบก. เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™, เป€เบกเบทเปˆเบญเปƒเบŠเป‰ Firecracker, เป€เบงเบฅเบฒเบˆเบฒเบเป€เบงเบฅเบฒเบ—เบตเปˆ microVM เบ–เบทเบเป€เบ›เบตเบ”เบ•เบปเบงเบˆเบปเบ™เป€เบ–เบดเบ‡เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบšเปเปˆเป€เบเบตเบ™ 125ms, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เบ•เบปเบงเป€เบ„เบทเปˆเบญเบ‡ virtual เปƒเบซเบกเปˆเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเป€เบ‚เบฑเป‰เบกเบ‚เบปเป‰เบ™เป€เบ–เบดเบ‡ 150 เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต.

เบเบฒเบ™เบ›เปˆเบญเบ Firecracker เบชเบฐเบšเบฑเบšเปƒเบซเบกเปˆเป€เบžเบตเปˆเบกเบฎเบนเบšเปเบšเบšเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบง API handler (โ€œโ€”no-apiโ€), เบˆเปเบฒเบเบฑเบ”เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ hard-coded เปƒเบ™เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ. เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ„เบปเบ‡เบ—เบตเปˆเปเบกเปˆเบ™เป„เบ”เป‰เบฅเบฐเบšเบธเป„เบงเป‰เป‚เบ”เบเบœเปˆเบฒเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "--config-file" เปเบฅเบฐเบ–เบทเบเบเปเบฒเบ™เบปเบ”เปƒเบ™เบฎเบนเบšเปเบšเบš JSON. เบˆเบฒเบเบ•เบปเบงเป€เบฅเบทเบญเบเป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡, เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ•เบปเบงเปเบเบ "โ€”" เบเบฑเบ‡เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบก, เบ—เบธเบ‡เบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบœเปˆเบฒเบ™เบฅเบฐเบšเบปเบšเบ•เปˆเบญเบ‡เป‚เบชเป‰เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡.

Amazon, เป€เบŠเบดเปˆเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒ Firecracker, เบเบฑเบ‡ เบ›เบฐโ€‹เบเบฒเบ” เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เปƒเบซเป‰เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบก Rust. เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒ Rust เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบซเบผเบฒเบเบ‚เบถเป‰เบ™เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ”เปเบฅเบฐเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเป‰เบงเปƒเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป€เบŠเบฑเปˆเบ™ Lambda, EC2 เปเบฅเบฐ S3. Amazon เป„เบ”เป‰เบชเบฐเบซเบ™เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™ Rust เบเบฑเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เป€เบžเบทเปˆเบญเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบเบฒเบ™เบ›เปˆเบญเบเปเบฅเบฐเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เปƒเบ™ S3, เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เบ–เบปเบ”เบ–เบญเบเปƒเบ™ EC2, เปเบฅเบฐเบฎเบฑเบเบชเบฒเป€เบงเบฑเบšเป„เบŠเบ—เปŒ docs.rs เบ—เบตเปˆเบกเบตเป€เบญเบเบฐเบชเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบ—เบธเบเปเบžเบฑเบเป€เบเบฑเบ”เบˆเบฒเบเบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™ crates.io.

Amazon เบเบฑเบ‡ เปเบ™เบฐ เบ™เบณ เป‚เบ„เบ‡เบเบฒเบ™ เบชเบดเบ™เป€เบŠเบทเปˆเบญเบชเบปเปˆเบ‡เป€เบชเบตเบกเบเบฒเบ™เบ‚เบฒเบ AWS, เบšเปˆเบญเบ™เบ—เบตเปˆเป‚เบ„เบ‡เบเบฒเบ™เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบŸเบฃเบตเบเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ AWS เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™, เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡, เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เปเบฅเบฐเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš. เปƒเบ™เบšเบฑเบ™เบ”เบฒเป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบญเบฐเบ™เบธเบกเบฑเบ”เปเบฅเป‰เบงเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบกเป‚เบ„เบ‡เบเบฒเบ™, เบ™เบญเบเป€เบซเบ™เบทเบญเบˆเบฒเบ Rust, AdoptOpenJDK, Maven Central, Kubernetes, Prometheus, Envoy เปเบฅเบฐ Julia เป„เบ”เป‰เบ–เบทเบเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™. เบเบฒเบ™เบเบทเปˆเบ™เบชเบฐเป€เบซเบ™เบตเปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบญเบกเบฎเบฑเบšเบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เปƒเบ”เป†เบ—เบตเปˆเบชเบปเปˆเบ‡เบžเบฒเบเปƒเบ•เป‰เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ”เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบญเบฐเบ™เบธเบกเบฑเบ” OSI.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™