ОбновлСниС Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€ΠΎΠ² Intel Cloud Hypervisor 0.3 ΠΈ Amazon Firecracker 0.19, написанных Π½Π° Rust

Компания Intel ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»Π° Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π° Cloud Hypervisor 0.3. Π“ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€ построСн Π½Π° основС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²
совмСстного ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Rust-VMM, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΊΡ€ΠΎΠΌΠ΅ Intel Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Alibaba, Amazon, Google ΠΈ Red Hat. Rust-VMM написан Π½Π° языкС Rust ΠΈ позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ спСцифичныС для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Ρ‹. Cloud Hypervisor являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставляСт высокоуровнСвый ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин (VMM), Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ²Π΅Ρ€Ρ… KVM ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡, свойствСнных для ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… систСм. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° доступСн ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0.

Cloud Hypervisor cфокусирован Π½Π° запускС соврСмСнных дистрибутивов Linux с использованиСм ΠΏΠ°Ρ€Π°Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… устройств Π½Π° Π±Π°Π·Π΅ virtio. Из ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ упоминаСтся: высокая ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ, Π½ΠΈΠ·ΠΊΠΎΠ΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ памяти, высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ настройки ΠΈ сокращСниС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² для Π°Ρ‚Π°ΠΊ.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° эмуляции свСдСна ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΡƒ ΠΈ ставка дСлаСтся Π½Π° ΠΏΠ°Ρ€Π°Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ. Π’ настоящСС врСмя ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ систСмы x86_64, Π½ΠΎ Π² ΠΏΠ»Π°Π½Π°Ρ… имССтся ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° AArch64. Из гостСвых систСм ΠΏΠΎΠΊΠ° поддСрТиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 64-разрядныС сборки Linux. Настройка CPU, памяти, PCI ΠΈ NVDIMM производится Π½Π° этапС сборки. ΠŸΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСрами.

Π’ Π½ΠΎΠ²ΠΎΠΉ вСрсии:

  • ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ выносу ΠΏΠ°Ρ€Π°Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ процСссы. Для взаимодСйствиС с Π±Π»ΠΎΡ‡Π½Ρ‹ΠΌΠΈ устройствами Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования бэкСндов vhost-user-blk. ИзмСнСниС позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊ Cloud Hypervisor Π±Π»ΠΎΡ‡Π½Ρ‹Π΅ устройства Π½Π° Π±Π°Π·Π΅ модуля vhost-user, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ SPDK, Π² качСствС бэкСндов для ΠΏΠ°Ρ€Π°Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰;
  • Появившаяся Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ выпускС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° выноса сСтСвых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π² бэкСнды vhost-user-net, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π° Π½ΠΎΠ²Ρ‹ΠΌ бэкСндом Π½Π° Π±Π°Π·Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ сСтСвого Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° TAP. БэкСнд написан Π½Π° языкС Rust ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Cloud Hypervisor Π² качСствС основной ΠΏΠ°Ρ€Π°Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ сСтСвой Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹;
  • Для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ эффСктивности ΠΈ защищённости ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ хост-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ гостСвой систСмой ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° гибридная рСализация сокСтов с адрСсациСй AF_VSOCK (Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ сСтСвыС сокСты), Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π°Ρ Ρ‡Π΅Ρ€Π΅Π· virtio. РСализация основана Π½Π° Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Firecracker, Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Amazon. VSOCK позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΉ POSIX Sockets API для взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями Π½Π° сторонС гостСвой систСмы ΠΈ хоста, Ρ‡Ρ‚ΠΎ позволяСт Π»Π΅Π³ΠΊΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ взаимодСйствия ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ сСтСвыС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ взаимодСйствиС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… клиСнтских ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ с ΠΎΠ΄Π½ΠΈΠΌ сСрвСрным ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ;
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ API, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP. Π’ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ Π΄Π°Π½Π½Ρ‹ΠΉ API ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ асинхронных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ гостСвыми систСмами, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ горячСС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ рСсурсов ΠΈ миграция ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ слой с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ транспорта Π½Π° Π±Π°Π·Π΅ virtio MMIO (Memory mapped virtio), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован для создания минималистичных гостСвых систСм, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΡ… эмуляции ΡˆΠΈΠ½Ρ‹ PCI;
  • Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Ρ‹ ΠΏΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ запуска Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… гостСвых систСм Π² Cloud Hypervisor Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ проброса ΠΏΠ°Ρ€Π°Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… устройств IOMMU Ρ‡Π΅Ρ€Π΅Π· virtio, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½ΠΎΡΡ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈ прямого проброса устройств.
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ubuntu 19.10;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ запуска гостСвых систСм с Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ 64 Π“Π‘ ΠžΠ—Π£.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ выпуск смСТно Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин Firecracker, Ρ‚Π°ΠΊΠΆΠ΅ написанного Π½Π° Rust, Π±Π°Π·ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎΡΡ Π½Π° Rust-VMM ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Ρ€Ρ… KVM. Firecracker являСтся ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° CrosVM, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Google для запуска ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Linux ΠΈ Android Π² ChromΠ΅OS. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Firecracker вСдётся Π² ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ Amazon Web Services с Ρ†Π΅Π»ΡŒΡŽ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ эффСктивности Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ AWS Lambda ΠΈ AWS Fargate.

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° рассчитана Π½Π° запуск Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹ΠΌΠΈ расходами ΠΈ прСдоставляСт срСдства для создания ΠΈ управлСния ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ окруТСниями ΠΈ сСрвисами, построСнными с использованиСм бСссСрвСрной ΠΌΠΎΠ΄Π΅Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ (функция ΠΊΠ°ΠΊ услуга). Firecracker ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ лСгковСсныС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, ΠΈΠΌΠ΅Π½ΡƒΠ΅ΠΌΡ‹Π΅ microVM, для ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ изоляции ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π½ΠΎ ΠΏΡ€ΠΈ этом обСспСчиваСтся ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ². НапримСр, ΠΏΡ€ΠΈ использовании Firecracker врСмя с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° запуска microVM Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° выполнСния прилоТСния Π½Π΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 125мс, Ρ‡Ρ‚ΠΎ позволяСт Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ с ΠΈΠ½Ρ‚Π΅Π½ΡΠΈΠ²Π½ΠΎΡΡ‚ΡŒΡŽ Π΄ΠΎ 150 ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ Π² сСкунду.

Π’ Π½ΠΎΠ²ΠΎΠΌ выпускС Firecracker Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Π΅Π· запуска ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° API («—no-api»), ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Тёстко Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ настройками. БтатичСская конфигурация задаётся Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΡ†ΠΈΡŽ «—config-file» ΠΈ опрСдСляСтся Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON. Из ΠΎΠΏΡ†ΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° раздСлитСля «—«, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ послС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ„Π»Π°Π³ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ Π±Π΅Π· ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰Π°Ρ Firecracker компания Amazon Ρ‚Π°ΠΊΠΆΠ΅ объявила ΠΎΠ± ΠΎΠΊΠ°Π·Π°Π½ΠΈΠΈ спонсорской ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² языка программирования Rust. ΠžΡ‚ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ Rust всё Ρ‡Π°Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Π½Ρ‘ΠΌ ΡƒΠΆΠ΅ Π²Π½Π΅Π΄Ρ€Π΅Π½Ρ‹ Π² Ρ‚Π°ΠΊΠΈΡ… слуТбах, ΠΊΠ°ΠΊ Lambda, EC2 ΠΈ S3. Amazon прСдоставил ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ Rust инфраструктуру для хранСния выпусков ΠΈ сборок Π² S3, запуска рСгрСссивных тСстов Π² EC2 ΠΈ поддСрТания сайта docs.rs с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ для всСх ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈΠ· рСпозитория crates.io.

Amazon Ρ‚Π°ΠΊΠΆΠ΅ прСдставил ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ AWS Promotional Credit, Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ бСсплатный доступ ΠΊ сСрвисам AWS, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для хранСния рСсурсов, сборки, Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΈ тСстирования. Из ΡƒΠΆΠ΅ ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π½Ρ‹Ρ… для участия Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΊΡ€ΠΎΠΌΠ΅ Rust ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Ρ‹ AdoptOpenJDK, Maven Central, Kubernetes, Prometheus, Envoy ΠΈ Julia. Заявки ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ ΠΎΡ‚ Π»ΡŽΠ±Ρ‹Ρ… ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², поставляСмых ΠΏΠΎΠ΄ лицСнзиями, ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π½Ρ‹ΠΌΠΈ OSI.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru