−25%

kwa Windows ya mwaka, hadi 31 Okt. Tazama mipango

EQVPS
Anza

Utengaji wa kontena dhidi ya microVM: viwango 4 vimelinganishwa, kutoka mchakato mdogo hadi VM kamili

Oct 10, 2026 · 5 dakika za kusoma · EQVPS Team

“Iendeshe ndani ya sandbox” inasikika kama agizo moja. Kivitendo kuna mipaka minne ya kawaida ambayo watu humaanisha, na inazuia vitu tofauti sana. Kuchagua isiyofaa kunakuacha bila ulinzi au kunafanya kila uendeshaji uwe wa polepole na ghali kuliko inavyohitajika.

Ulinganisho huu unachukulia kwamba msimbo kweli hauaminiki: umeandikwa na modeli ya lugha, umewasilishwa na mtumiaji, au umefika kwenye pull request kutoka kwa mtu usiyemjua. Msimbo uliouandika mwenyewe una mahitaji tofauti.

Kinachoweza kwenda vibaya

Kabla ya kulinganisha mipaka, inasaidia kutaja ni ya nini. Msimbo usioaminika unaweza:

  1. Kusoma kisichopaswa: vigezo vya mazingira, funguo za SSH, faili kwenye saraka yako ya nyumbani, endpoint za metadata za wingu.
  2. Kumaliza rasilimali: kuzunguka milele, kuzalisha michakato hadi mashine ikwame, kujaza diski.
  3. Kutumia vibaya mtandao: kuchanganua wenyeji wengine, kutuma barua taka, kuchimba sarafu za kidijitali, kuita huduma zako za ndani.
  4. Kujikita: kusakinisha cron job au huduma inayodumu baada ya kazi kuisha.
  5. Kutoroka: kutumia hitilafu katika tabaka la chini kuendesha msimbo kwenye mwenyeji mwenyewe.

Kila kiwango hapa chini kinashughulikia sehemu ya haya, si yote.

Kiwango cha 1: mchakato

Sandbox rahisi zaidi ni mchakato mtoto: subprocess.run yenye kikomo cha muda, labda chini ya mtumiaji wake, ikiwa na mipaka ya rasilimali na kichujio cha seccomp kama wewe ni makini.

Inazuia: uendeshaji usio na mwisho (kikomo cha muda), sehemu ya kumaliza rasilimali (mipaka), baadhi ya miito hatari ya mfumo (seccomp). Haizuii: kusoma chochote ambacho mtumiaji huyo anaweza kusoma, ufikiaji wa mtandao, kujikita kupitia chochote ambacho mtumiaji anaweza kuandika, na hitilafu yoyote ya kernel. Kushindwa kwa kawaida: msimbo husoma faili uliyosahau inasomeka, au mkalimani wa lugha “aliyezuiliwa” anagundulika kuwa na mlango wa nyuma. Historia imejaa sandbox ndani ya lugha zilizoshindwa kustahimili.

Muda wa kuwaka ni karibu sifuri. Inafaa kwa msimbo wako; si mpaka kwa msimbo wa wengine.

Kiwango cha 2: kontena

Namespaces huupa msimbo mwonekano wake wa faili, michakato na mtandao; cgroups hupunguza CPU na kumbukumbu; capabilities zilizoondolewa na seccomp hupunguza kile unachoweza kuomba kutoka kwa kernel.

Inazuia: kusoma faili za mwenyeji (isipokuwa zimeunganishwa), kuona michakato mingine, matumizi ya rasilimali yasiyo na kikomo, sehemu kubwa ya tatizo la kujikita kama kontena linatupwa. Haizuii: hitilafu katika kernel inayoshirikiwa ya mwenyeji. Kila kontena kwenye mashine huzungumza na kernel ileile, kwa hiyo udhaifu wa kernel unaofikika ni njia ya kutoka. Kushindwa kwa kawaida: usanidi badala ya mashambulizi ya ajabu. Kontena lenye mamlaka maalum, soketi ya runtime ya kontena iliyounganishwa ndani, mtandao wa mwenyeji uliowashwa “kwa utatuzi tu”. Kila moja huondoa mpaka kimyakimya.

Muda wa kuwaka ni milisekunde. Kuna aina zilizoimarishwa, zikiwemo kernel za nafasi ya mtumiaji zinazonasa miito ya mfumo kabla haijamfikia mwenyeji, kwa gharama ya kasi na upatanifu. Kwa msimbo kutoka kwa watu unaowaamini, kontena lililosanidiwa vizuri ni chaguo-msingi la busara.

Kiwango cha 3: microVM

MicroVM huendesha kernel yake chini ya hypervisor, kama VM kamili, lakini karibu bila vifaa vinavyoigwa. Mfano unaojulikana zaidi ni Firecracker.

Inazuia: kila kitu ambacho kontena linazuia, pamoja na tatizo la kernel inayoshirikiwa. Ili kumfikia mwenyeji, msimbo lazima uvunje hypervisor au mojawapo ya kiganja cha vifaa pepe, uso mdogo sana kuliko kiolesura cha miito ya mfumo cha kernel. Haizuii: matumizi mabaya ya kile unachoipa. Trafiki iliyo wazi ya kutoka bado inaweza kutumiwa vibaya; siri zilizoingizwa bado zinaweza kuvuja. Kushindwa kwa kawaida: sera, si utengaji. Mtu hupitisha token ya uzalishaji “ili majaribio yafanye kazi”, au huacha trafiki ya kutoka bila vikwazo mahali isipohitajika.

Muda wa kuwaka ni kati ya sehemu ya sekunde na takriban sekunde moja, kwa gharama ya ziada ya megabaiti chache. Hiyo ni kasi ya kutosha kuunda moja kwa kila kazi na kuifuta baadaye, jambo ambalo pia hutatua tatizo la kujikita: hakuna kitu kinachobaki cha kurudia.

Kiwango cha 4: mashine pepe kamili

VM ya kawaida, au VPS, ina aina ileile ya mpaka kama microVM: uboreshaji pepe wa vifaa na hypervisor. Tofauti iko katika kila kitu kinachoizunguka: mfumo kamili wa vifaa, mfumo mzima wa uendeshaji, IP ya umma ukitaka, na mzunguko wa maisha unaopimwa kwa siku au miezi.

Inazuia: aina zilezile za matatizo kama microVM, kwa uso wa mashambulizi mkubwa kidogo kwa sababu vifaa zaidi vinaigwa. Haizuii: matumizi mabaya ya utambulisho wake wa mtandao. VM yenye IP ya umma inayoendesha msimbo hatari hufanya IP yake iingie kwenye orodha za kuzuia, jambo muhimu kama IP hiyohiyo inatuma barua pepe zako. (Kama hilo limeshatokea, tazama la kufanya IP yako ikiwa kwenye orodha ya kuzuia.) Kushindwa kwa kawaida: inaishi muda mrefu mno. VM iliyoundwa kwa jaribio moja hukusanya vitambulisho na hali, na polepole inakuwa mashine inayoaminika ambayo ilipaswa kuilinda.

Muda wa kuwaka ni makumi ya sekunde hadi dakika, na utozaji kwa kawaida ni wa mwezi. Huo ndio umbo sahihi kwa huduma ya muda mrefu inayohitaji porti za kuingia, na umbo lisilofaa kwa kuendesha msimbo kwa sekunde 20.

Ulinganisho

MchakatoKontenaMicroVMVM kamili
Kernel yakehapanahapanandiyondiyo
Mpaka mkuuruhusa za mtumiajinamespaces + kernel inayoshirikiwahypervisor, mfumo mdogo kabisa wa vifaahypervisor, mfumo kamili wa vifaa
Muda wa kuwaka~0ms~0.1–1 seksek 10 – dakika
Gharama ya ziadahakunandogoMiB chachemakumi–mamia ya MiB
Kutupa baada ya kila kazirahisirahisirahisipolepole, ghali
Porti za kuingia / IP ya ummaza mwenyejiza mwenyejikwa kawaida hakunandiyo

Kuchagua

  • Msimbo ulioandikwa na wewe au timu yako: mchakato au kontena linatosha.
  • CI kwa matawi yako mwenyewe: kontena kwenye runner yako.
  • Msimbo wa mawakala, mawasilisho ya watumiaji, pull request za nje: microVM moja kwa kila kazi, inayofutwa baadaye.
  • Huduma isiyoaminika inayopaswa kupokea miunganisho au kuendeshwa kwa wiki: VM tofauti yenye IP yake, mbali na chochote kinachohifadhi vitambulisho vyako au kutuma barua pepe zako.

Chochote utakachochagua, kanuni mbili zinaongezeka juu yake: usiweke ndani kitu chochote ambacho usingempa mwandishi wa msimbo, na amua kwa makusudi mtandao unaruhusiwa kufanya nini.

Bidhaa zetu ziko wapi

Kwa kiwango cha 3, tunatoa sandbox za msimbo: microVM za Firecracker zinazowaka kwa takriban sekunde moja, zenye intaneti ya kutoka, bila porti za kuingia na malipo kwa sekunde. Zinalenga hasa kipengele cha tatu hapo juu; ukurasa wa kinga za MCP unaeleza jinsi ya kupunguza kile ambacho wakala anaweza kufanya nazo. Kwa kiwango cha 4, VPS kama ushuru wa AI agent inakupa mashine nzima kwa mwezi. Mifano iliyochambuliwa kwenye sandbox kwa mawakala wa AI inaonyesha mtindo wa microVM kuanzia mwanzo hadi mwisho, na kile ambacho mawakala wa AI wanahitaji kweli kutoka kwa miundombinu inatazama utengaji kama moja ya mahitaji kadhaa.

Maswali

Je, kontena inatosha kwa msimbo uliotengenezwa na AI?

Kwa msimbo wa timu yako mwenyewe, kwa kawaida ndiyo. Kwa msimbo ambao hakuna aliyeukagua — matokeo ya wakala, mawasilisho ya watumiaji, pull request za nje — kernel inayoshirikiwa ya kontena ndio udhaifu. MicroVM au VM huweka hypervisor kati ya msimbo huo na mwenyeji.

Kuna tofauti gani kati ya microVM na VM ya kawaida katika utengaji?

Mpaka ni wa aina moja: uboreshaji pepe wa vifaa na hypervisor. MicroVM hufichua vifaa pepe vichache sana, kwa hiyo uso ni mdogo, na huwaka kwa takriban sekunde moja badala ya makumi ya sekunde. VM kamili ni bora kwa huduma za muda mrefu zinazohitaji IP ya umma, vifaa zaidi au mfumo mzima wa uendeshaji.

Je, utengaji unazuia msimbo kuiba funguo zangu za API?

Tu kama funguo haziko ndani. Utengaji unamlinda mwenyeji dhidi ya msimbo; haulindi siri ulizoweka ndani kwa makusudi. Usimpe msimbo usioaminika kitu chochote ambacho hapaswi kuwa nacho.

Na mtandao je?

Una umuhimu sawa na mpaka wa kompyuta. Amua kama msimbo unahitaji intaneti ya kutoka kabisa, na hakikisha hakuna kinachoweza kuunganishwa kuingia. Hata mashine iliyotengwa kikamilifu bado inaweza kutumiwa kuchanganua, kutuma barua taka au kuchimba sarafu kama trafiki yake haina vikwazo.

Maoni

Bado hakuna maoni. Kuwa wa kwanza.

Acha maoni

Maoni yanakaguliwa kabla ya kuonekana.