ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ TinyKVM Π·Π° виртуализация Π½Π° Π½ΠΈΠ²ΠΎ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ процСси

Компания Varnish Software, която Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π° систСми Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΌΡ€Π΅ΠΆΠΈ Π·Π° доставка ΠΈ ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π΅ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅, прСдстави ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ TinyKVM, ΠΊΠΎΠΉΡ‚ΠΎ Ρ€Π°Π·Π²ΠΈΠ²Π° инструмСнти Π·Π° изолация Π½Π° ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ процСси Ρ‡Ρ€Π΅Π· Ρ…ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€ KVM. Π¦Π΅Π»Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π΅ ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½Π°ΠΉ-Π±ΡŠΡ€Π·Π°Ρ‚Π° систСма Π·Π° sandbox-изолация Π½Π° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ процСси, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰Π° Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½Π° виртуализация. ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π΅ написан Π½Π° Π΅Π·ΠΈΡ†ΠΈΡ‚Π΅ C ΠΈ C++ ΠΈ сС разпространява ΠΏΠΎΠ΄ лицСнзия GPLv3 (Π·Π° Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΈΠ·ΠΏΡŠΠ»Π½ΡΡ‚ изискванията Π½Π° GPLv3, сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π° Ρ‚ΡŠΡ€Π³ΠΎΠ²ΡΠΊΠ° лицСнзия).

TinyKVM Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π·Π° ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ΠΎ стартиранС Π½Π° всякакви консолни ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ Π·Π° Linux с производитСлност, Π±Π»ΠΈΠ·ΠΊΠ° Π΄ΠΎ ΠΎΠ±ΠΈΡ‡Π½ΠΎΡ‚ΠΎ изпълнСниС. Π Π°Π·Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ Π·Π° всСки систСмСн ΠΏΠΎΠ²ΠΈΠΊ Π²ΡŠΠ·Π»ΠΈΠ·Π°Ρ‚ Π½Π° ΠΎΠΊΠΎΠ»ΠΎ 2 микросСкунди. ΠšΠ°Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° сС спомСнава Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° изолация Π½Π° процСситС Π² систСмитС Π·Π° ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π΅ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° web-запитвания. TinyKVM Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ Π·Π° замяна Π½Π° Смулацията Π½Π° libriscv, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° изолация Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° всяко web-Π·Π°ΠΏΠΈΡ‚Π²Π°Π½Π΅ Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Varnish. Π”ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ Π΅ създадСн Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° libvmod, позволяващ изпълнСниС Π½Π° ΠΌΠΎΠ΄ΡƒΠ»ΠΈ към Varnish с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° TinyKVM.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ TinyKVM Π·Π° виртуализация Π½Π° Π½ΠΈΠ²ΠΎ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ ΠΏΡ€ΠΎΡ†Π΅ΡΠΈΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ TinyKVM Π·Π° виртуализация Π½Π° Π½ΠΈΠ²ΠΎ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ процСси

ΠŸΡ€ΠΈ стартиранС Ρ‡Ρ€Π΅Π· TinyKVM ΠΌΠ°ΡˆΠΈΠ½Π½ΠΈΡΡ‚ ΠΊΠΎΠ΄ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ‚Π΅ сС изпълнява Π±Π΅Π· Π΅ΠΌΡƒΠ»ΠΈΡ€Π°Ρ‰ΠΈ слоСвС Π½Π° CPU ΠΈ сС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π° Ρ‡Ρ€Π΅Π· API Π½Π° Ρ…ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π° KVM, ΠΊΠΎΠ΅Ρ‚ΠΎ позволява Π΄Π° сС ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π°Ρ‚ Ρ€Π°Π·Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ ΠΈ Π΄Π° сС постигнС производитСлност, Π±Π»ΠΈΠ·ΠΊΠ° Π΄ΠΎ Ρ‚Π°Π·ΠΈ Π½Π° ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π±Π΅Π· виртуализация. ΠžΡΠ½ΠΎΠ²Π½ΠΈΡ‚Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π½Π° TinyKVM са:

  • ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° максималното Π²Ρ€Π΅ΠΌΠ΅ Π·Π° изпълнСниС. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π° ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»Π½ΠΎ спряна слСд ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, Π±Π΅Π· Π΄Π° сС задСйстват ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ Π½Π° сигнали ΠΈ ΠΏΠΎΡ‚ΠΎΡ†ΠΈ.
  • ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚.
  • Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° разклоняванС (fork) Π½Π° Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ СкзСмпляри Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини ΠΎΡ‚ Π΅Π΄ΠΈΠ½ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ СкзСмпляр Π½Π° ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°. ΠšΠΎΠΏΠΈΡΡ‚Π° Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈΡ‚Π΅ машини сС ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ Π² Ρ€Π΅ΠΆΠΈΠΌ copy-on-write, ΠΊΠΎΠ΅Ρ‚ΠΎ позволява Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½Π° икономия Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚, ΠΊΠ°Ρ‚ΠΎ сС Π·Π°ΠΏΠ°Π·Π²Π° само Π΅Π΄ΠΈΠ½ СкзСмпляр Π½Π° ΠΎΠ±Ρ‰ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ.
  • Π Π°Π·ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΡ‚Π΅ процСси ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС Π²Ρ€ΡŠΡ‰Π°Ρ‚ Π² ΠΏΡ€Π΅Π΄Ρ…ΠΎΠ΄Π½ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π°Π·ΠΊΠ»ΠΎΠ½Π΅Π½ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π° http-заявки ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π²ΡŠΡ€Π½Π΅ Π² ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎΡ‚ΠΎ си ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ слСд ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° всяка заявка, Π±Π΅Π· Π΄Π° Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ рСстартиранС). Π˜Π½ΠΎΠ²Π°Ρ‚ΠΈΠ²Π½ΠΈΡΡ‚ процСс ΠΌΠΎΠΆΠ΅ ΡΡŠΡ‰ΠΎ Π΄Π° бъдС Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ Π΄ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π½Π° Π΄Ρ€ΡƒΠ³Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° машина, Π° Π½Π΅ Π½Π° Ρ‚Π°Π·ΠΈ, ΠΎΡ‚ която Π΅ Π±ΠΈΠ» Ρ€Π°Π·ΠΊΠ»ΠΎΠ½Π΅Π½, Π½ΠΎ Π² Ρ‚ΠΎΠ·ΠΈ случай Ρ€Π°Π·Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΏΠΎ-високи, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‰Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π° със страницитС Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°.
  • Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° създаванС Π½Π° статични страници Π·Π° ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° инициализация, подходящи Π΄ΠΎΡ€ΠΈ Π·Π° слоТни runtime Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊΡ‚ΠΎ Π΅ Π² Π΅Π·ΠΈΠΊΠ° Go. Π’ Ρ‚ΠΎΠ·ΠΈ случай ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ са Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈ само Π·Π° страницитС, ΠΊΠΎΠΈΡ‚ΠΎ са Π² Ρ€Π΅ΠΆΠΈΠΌ copy-on-write.
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΎΡ‚Π΄Π°Π»Π΅Ρ‡Π΅Π½ΠΎ отстраняванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° GDB. Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ отстраняванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ Π² Ρ€Π΅Π°Π»Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅ с възобновяванС Π½Π° ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ.

Гостовото ΠΎΠ±ΠΊΡ€ΡŠΠΆΠ΅Π½ΠΈΠ΅ TinyKVM ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π° Π½Π°ΠΌΠ°Π»Π΅Π½ΠΎ ядро, Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ΠΎ ΠΎΡ‚ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, ΡΡŠΠ±Ρ€Π°Π½ΠΎ с Π²Π³Ρ€Π°Π΄Π΅Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π° Π½Π° страницитС Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΎ SMAP (ΠŸΡ€Π΅Π²Π΅Π½Ρ†ΠΈΡ Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ° Π² Ρ€Π΅ΠΆΠΈΠΌ Π½Π° Π½Π°Π΄Π·ΠΎΡ€) ΠΈ SMEP (ΠŸΡ€Π΅Π²Π΅Π½Ρ†ΠΈΡ Π½Π° ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π² Ρ€Π΅ΠΆΠΈΠΌ Π½Π° Π½Π°Π΄Π·ΠΎΡ€) Π·Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° изолация ΠΌΠ΅ΠΆΠ΄Ρƒ ядрото ΠΈ потрСбитСлското пространство. TinyKVM ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π³ΠΎΠ»Π΅ΠΌΠΈ страници Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° (hugepage) Π·Π° повишаванС Π½Π° производитСлността. БистСмнитС извиквания, ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½ΠΈ ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ‚Π΅, сС ΠΏΡ€ΠΈΡ…Π²Π°Ρ‰Π°Ρ‚ ΠΎΡ‚ Смулятора ΠΈ сС прСнасочват към хост-ΠΎΠ±ΠΊΡ€ΡŠΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ (забавянСто Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ транслация Π½Π° Π΅ΠΌΡƒΠ»ΠΈΡ€Π°Π½ΠΎΡ‚ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π΅ ΠΎΠΊΠΎΠ»ΠΎ 2 микросСкунди). Π’ самото Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° машина Π½Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈ, Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄ ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ устройства.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ TinyKVM Π·Π° виртуализация Π½Π° Π½ΠΈΠ²ΠΎ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ процСси


Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru
ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster