Intel
ΡΡΠ²ΠΌΠ΅ΡΡΠ΅Π½ ΠΏΡΠΎΠ΅ΠΊΡ
Cloud Hypervisor Π΅ ΡΠΎΠΊΡΡΠΈΡΠ°Π½ Π²ΡΡΡ Ρ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ ΠΏΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° virtio. Π‘ΡΠ΅Π΄ ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΈΡΠ΅ ΠΊΠ»ΡΡΠΎΠ²ΠΈ ΡΠ΅Π»ΠΈ ΡΠ°: Π²ΠΈΡΠΎΠΊΠ° ΠΎΡΠ·ΠΈΠ²ΡΠΈΠ²ΠΎΡΡ, Π½ΠΈΡΠΊΠ° ΠΊΠΎΠ½ΡΡΠΌΠ°ΡΠΈΡ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ, Π²ΠΈΡΠΎΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ, ΠΎΠΏΡΠΎΡΡΠ΅Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈΡΠ΅ Π²Π΅ΠΊΡΠΎΡΠΈ Π½Π° Π°ΡΠ°ΠΊΠ°.
ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Π΅ΠΌΡΠ»Π°ΡΠΈΡ Π΅ ΡΠ²Π΅Π΄Π΅Π½Π° Π΄ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΈ ΡΠΎΠΊΡΡΡΡ Π΅ Π²ΡΡΡ Ρ ΠΏΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ°. Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠ°ΠΌΠΎ x86_64 ΡΠΈΡΡΠ΅ΠΌΠΈ, Π½ΠΎ ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° AArch64. ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° Π³ΠΎΡΡΠΈ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠ°ΠΌΠΎ 64-Π±ΠΈΡΠΎΠ²ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° Linux. ΠΡΠΎΡΠ΅ΡΠΎΡΡΡ, ΠΏΠ°ΠΌΠ΅ΡΡΠ°, PCI ΠΈ NVDIMM ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Ρ Π½Π° Π΅ΡΠ°ΠΏΠ° Π½Π° ΡΠ³Π»ΠΎΠ±ΡΠ²Π°Π½Π΅. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° ΠΌΠΈΠ³ΡΠΈΡΠ°ΡΠ΅ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΡΠ²ΡΡΠΈ.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- ΠΡΠΎΠ΄ΡΠ»ΠΆΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΠΏΠΎ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ I/O ΠΊΡΠΌ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π±Π΅ΠΊΠ΅Π½Π΄ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π·Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°
vhost-ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»-blk . ΠΡΠΎΠΌΡΠ½Π°ΡΠ° Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ²ΡΡΠ·Π²Π°ΡΠ΅ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° vhost-user ΠΌΠΎΠ΄ΡΠ»Π° ΠΊΡΠΌ Cloud Hypervisor, ΠΊΠ°ΡΠΎ Π½Π°ΠΏΡSPDK , ΠΊΠ°ΡΠΎ Π±Π΅ΠΊΠ΅Π½Π΄ Π·Π° ΠΏΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅; - ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΊΡΠΌ Π±Π΅ΠΊΠ΅Π½Π΄, Π²ΡΠ²Π΅Π΄Π΅Π½Π° Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ
vhost-user-net , ΡΠ°Π·ΡΠΈΡΠ΅Π½ Ρ Π½ΠΎΠ² Π±Π΅ΠΊΠ΅Π½Π΄, Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π·Π° Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΡΠ΅ΠΆΠ°TAP . ΠΠ΅ΠΊΠ΅Π½Π΄ΡΡ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Rust ΠΈ ΡΠ΅Π³Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² Cloud Hypervisor ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π° ΠΏΠ°ΡΠ°-Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°; - ΠΠ° Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΠΈΡΠΈ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° Π½Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Ρ
ΠΎΡΡ ΡΡΠ΅Π΄Π°ΡΠ° ΠΈ Π³ΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°, ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Ρ
ΠΈΠ±ΡΠΈΠ΄Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΠΎΠΊΠ΅ΡΠΈ Ρ AF_VSOCK Π°Π΄ΡΠ΅ΡΠΈΡΠ°Π½Π΅ (ΡΠΎΠΊΠ΅ΡΠΈ Π·Π° Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΡΠ΅ΠΆΠ°), ΡΠ°Π±ΠΎΡΠ΅ΡΠΈ ΡΡΠ΅Π· virtio. ΠΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π°Π²Π° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈΡΠ΅ ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°
Firecracker , ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ΅Π½ ΠΎΡ Amazon. VSOCK Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡ API Π½Π° POSIX Sockets Π·Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° Π³ΠΎΡΡ ΠΈ Ρ ΠΎΡΡ, ΠΊΠΎΠ΅ΡΠΎ ΡΠ»Π΅ΡΠ½ΡΠ²Π° Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Π·Π° ΡΠ°ΠΊΠΎΠ²Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΡΠΎ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Ρ Π΅Π΄Π½ΠΎ ΡΡΡΠ²ΡΡΠ½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅; - ΠΡΠΈΠ³ΡΡΠ΅Π½Π° ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° API Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ HTTP ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°. Π Π±ΡΠ΄Π΅ΡΠ΅ ΡΠΎΠ·ΠΈ API ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½ΠΈΡΠΈΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π³ΠΎΡΡΠΈ, ΠΊΠ°ΡΠΎ ΡΠ΅ΡΡΡΡΠΈ Ρ Π³ΠΎΡΠ΅ΡΠΎ Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ ΠΈ ΠΌΠΈΠ³ΡΠΈΡΠ°ΡΠΈ ΡΡΠ΅Π΄ΠΈ;
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΡΠ»ΠΎΠΉ Ρ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ, Π±Π°Π·ΠΈΡΠ°Π½Π° Π½Π° virtio MMIO (Memory mapped virtio), ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡΠΈΡΠ½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π³ΠΎΡΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ Π΅ΠΌΡΠ»Π°ΡΠΈΡ Π½Π° PCI ΡΠΈΠ½Π°;
- ΠΠ°ΡΠΎ ΡΠ°ΡΡ ΠΎΡ ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΈΠ²Π°ΡΠ° Π·Π° ΡΠ°Π·ΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ Π²Π»ΠΎΠΆΠ΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π³ΠΎΡΡΠΈ, Cloud Hypervisor Π΄ΠΎΠ±Π°Π²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ IOMMU ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΡΠ΅Π· virtio, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° Π½Π° Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡΠ΅ ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎΡΠΎ ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°Π½Π΅ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
- ΠΡΠΈΠ³ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Ubuntu 19.10;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π³ΠΎΡΡΠΈ Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 64 GB RAM.
ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ
ΠΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½Π° Π΄Π° ΡΠΏΡΠ°Π²Π»ΡΠ²Π° Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π΄ΠΈ ΠΈ ΡΡΠ»ΡΠ³ΠΈ, ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΌΠΎΠ΄Π΅Π» Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π±Π΅Π· ΡΡΡΠ²ΡΡ (ΡΡΠ½ΠΊΡΠΈΡ ΠΊΠ°ΡΠΎ ΡΡΠ»ΡΠ³Π°). Firecracker ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π»Π΅ΠΊΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ, Π½Π°ΡΠ΅ΡΠ΅Π½ΠΈ microVM, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π·Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½Π° Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, Π·Π° Π΄Π° ΠΎΡΠΈΠ³ΡΡΡΡ ΠΏΡΠ»Π½Π° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡ, ΠΊΠ°ΡΠΎ ΡΡΡΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ Π³ΡΠ²ΠΊΠ°Π²ΠΎΡΡΡΠ° Π½Π° ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Firecracker, Π²ΡΠ΅ΠΌΠ΅ΡΠΎ ΠΎΡ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° microVM Π΄ΠΎ Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π΅ Π½Π°Π΄Π²ΠΈΡΠ°Π²Π° 125ms, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ Π½ΠΎΠ²ΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Ρ ΠΈΠ½ΡΠ΅Π½Π·ΠΈΠ²Π½ΠΎΡΡ Π΄ΠΎ 150 ΡΡΠ΅Π΄ΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°.
ΠΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° Firecracker Π΄ΠΎΠ±Π°Π²Ρ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΡΠ°Π±ΠΎΡΠ° Π±Π΅Π· ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° API ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠ° (ββno-apiβ), ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°ΠΉΠΊΠΈ ΡΡΠ΅Π΄Π°ΡΠ° ΡΠ°ΠΌΠΎ Π΄ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅, ΡΠ²ΡΡΠ΄ΠΎ ΠΊΠΎΠ΄ΠΈΡΠ°Π½ΠΈ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ°ΠΉΠ». Π‘ΡΠ°ΡΠΈΡΠ½Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Ρ ΡΡΠ΅Π· ΠΎΠΏΡΠΈΡΡΠ° β--config-fileβ ΠΈ ΡΠ΅ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° Π²ΡΠ² ΡΠΎΡΠΌΠ°Ρ JSON. ΠΡ ΠΎΠΏΡΠΈΠΈΡΠ΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ ΡΡΡΠΎ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ βββ, ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΡΠ»Π°Π³ΠΎΠ²Π΅ ΡΠ»Π΅Π΄ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΡΠ΅Π΄Π°Π²Π°Ρ ΠΏΠΎ Π²Π΅ΡΠΈΠ³Π°ΡΠ° Π±Π΅Π· ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°.
Amazon, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° Firecracker, ΡΡΡΠΎ
Amazon ΡΡΡΠΎ
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru