Musiyano uripo pakati peVirtualization neContainerization
Mumakombiyuta emazuva ano, kudiwa kwekushandisa mapurogiramu nekukurumidza, zvinobudirira, uye zviri nyore kufamba pakati penzvimbo (malaptop evagadziri, maseva ehofisi, uye gore) kuri kuramba kuchikura. Matekinoroji maviri anowanzo tsigira zvinodiwa izvi ndeye virtualization uye containerization. Kunyange zvazvo ese ari maviri achitibvumira kumhanyisa "nharaunda" dzakawanda pamuchina mumwe chete, mashandiro awo, mwero wekuparadzaniswa, kushandiswa kwezviwanikwa, uye mamiriro ekushandiswa zvakasiyana zvakanyanya. Chinyorwa chino chinotsanangura zvakakwana musiyano uripo pakati pe virtualization ne containerization kuti ikubatsire kusarudza mhinduro chaiyo.
1. Tsananguro yeVirtualization
Virtualization tekinoroji inobvumira muchina mumwe chete wepanyama kushandisa michina yakawanda yemagetsi (VMs) panguva imwe chete. VM yega yega inoita sekombiyuta yakazara: ine sisitimu yayo yekushandisa, kernel, madhiraivha emagetsi, uye nzvimbo yakagoverwa yezviwanikwa (CPU, RAM, nzvimbo yekuchengetera).
Virtualization inowanzoitwa kuburikidza nesoftware inonzi hypervisor. Iyo hypervisor ine basa rekupa zviwanikwa zvehardware uye kutarisira michina chaiyo. Mienzaniso yehypervisors dzakakurumbira dzinosanganisira:
- VMware ESXi
- Microsoft Hyper-V
– KVM (Muchina weVirtual wakavakirwa paKernel)
- VirtualBox (yakajairika yezvinodiwa zvemunharaunda)
Nekushandisa virtualization, unogona kumhanyisa Windows neLinux pane imwe sevha chaiyo, kana kumhanyisa kugoverwa kwakasiyana-siyana kweLinux kune vanhu vakasiyana-siyana uye vanoda kugara pamwe chete.
2. Tsanangudzo yeKuisa muZvivako
Kuisa mu container inzira yekushandisa maapplication mumayuniti akaparadzana anonzi ma containers. Ma containers "package" applications uye zvinoenderana nawo (maraibhurari, runtime, configurations) kuitira kuti akwanise kushanda nguva dzose munzvimbo dzakasiyana-siyana.
Musiyano mukuru kubva kumaVM ndewekuti macontainer haana system yakakwana yekushandisa. Macontainer anogovana kernel nehost OS (kana kernel yeVM kana container iri kushanda pamusoro peVM). Kupatsanurwa kunowanikwa kuburikidza nema kernel features akadai se namespaces ne cgroups (muLinux), ayo anotarisira kupatsanurwa kwema process uye zvirambidzo zve resource.
Mapuratifomu anozivikanwa zvikuru emidziyo ndeaya:
- Docker
- zviri mumidziyo
- Podman
- Kuronga kwakafanana neKubernetes
Kuisa ma containerization kunowanzo shandiswa kuma microservices, kukurumidza kutumirwa, uye mamiriro emazuva ano eDevOps.
3. Kusiyana Kwekuvaka: VM vs Container
Kugadzirisa mashandisirwo emakombiyuta (VM)
PaVM, une zvikamu zvakaita seizvi:
1. Zvishandiso zvemuviri
2. Hypervisor
3. VM (imwe neimwe ine OS yayo + kernel)
4. Kushandiswa
Nekuti VM yega yega ine sisitimu yakakwana yekushandisa, maVM anowanzo "rema" asi kuparadzaniswa kwavo kwakasimba uye vanochinjika kumhanyisa maOS akasiyana.
Kuisa mumidziyo (Mudziyo)
Mumidziyo, zvikamu zvacho zvinowanzo kuve:
1. Zvishandiso zvemuviri
2. Host OS (kernel)
3. Nguva yekushandisa mudziyo (semuenzaniso Docker)
4. Mudziyo (kushandiswa + zvinoenderana)
Makontena akareruka nekuti haaite zvakafanana neoperating system. Nekuda kweizvozvo, anowanzo kurumidza kugadzira, kumhanya, uye kuisa.
4. Musiyano Mukushandiswa Kwezviwanikwa
MaVM anoshandisa zviwanikwa zvakawanda nekuti:
- VM yega yega inoda RAM yeOS
- Pane hypervisor uye OS disk image pamusoro
- Kutanga OS kunotora nguva nezviwanikwa
Makontena anodhura zvishoma nekuti:
- Kugovana kernel yemugamuchiri
- Saizi yemufananidzo idiki (kana tichienzanisa nemufananidzo weOS VM)
- Kutanga/kumira nekukurumidza (kazhinji mumasekonzi kana pasi)
Kana chinangwa chako chiri chekuti ma "containers" ako ashande akawanda kusvika kumazana, ma "containers" anowanzo shanda zviri nani. Zvisinei, kana uchida "isolation" yakakwana kana "OS" yakasiyana, ma "VM" anonyanya kukosha.
5. Musiyano muBoot nekumhanya kweDeployment
VM yakafanana nekutanga komputa itsva: inoda kutanga OS, kutanga masevhisi, nezvimwewo. Nguva yekutanga yeVM inogona kubva pamasekonzi makumi kusvika kumaminitsi.
Makontena akafanana nekumhanyisa maitiro ekushandisa ari ega. Makontena mazhinji anogona kutanga mumasekonzi, kana kutoti zvishoma, zvichienderana nemufananidzo uye kutanga kwekushandisa.
Kubva pamaonero eCI/CD (Continuous Integration/Continuous Deployment), macontainer anowanzo sarudzwa nekuti anokurumidzisa build-test-deploy pipeline.
6. Danho reKuzviparadzanisa uye Kuchengetedzwa
Kuzviparadzanisa nevamwe ndechimwe chezvinhu zvinonyanya kukosha.
VM
- Kuzviparadzanisa kwakasimba nekuti kune muganhu wakasiyana weOS/kernels.
- Kana VM ikakanganiswa, kukanganisa kunowanzo ganhurira kune iyo VM (kunyange zvazvo kuchine njodzi yekushandiswa kwe hypervisor).
- Yakakodzera nzvimbo dzinogara vanhu vakawanda dzine mazinga akaderera ekuvimbana (semuenzaniso kugamuchira vatengi vakasiyana).
Container
- Kuzviparadzanisa "kwakatetepa" nekuda kwekugovana kernel yemugadziri.
– Kana paine dambudziko riripo mu kernel kana kuti harina kunaka pakugadzirisa mudziyo (semuenzaniso, mudziyo uri kushanda semudzi, kodzero dzakanyanya kukwira), njodzi yekukwira kune host inogona kuwedzera.
- Kuchengetedzwa kwemidziyo kunonyanya kuenderana nekuomarara: kushandiswa kwemidziyo isina midzi, zvirambidzo zvekushanda, seccomp/apparmor/selinux, kuongorora mifananidzo, nezvimwewo.
Zvisinei, kuchengetedzwa kwemidziyo kuri kukura nekukurumidza, uye masangano mazhinji makuru anoshandisa midziyo zvakachengeteka nenzira dzakanakisisa.
7. Kutakurwa uye Kuenderana Kwenzvimbo
Makontena anobudirira zvikuru panyaya yekushandiswa kwawo:
- Mifananidzo yemidziyo ine zvinoenderana nekushandiswa
- Inovimbisa kuti "chinomhanya pamuchina wangu" chinomhanyawo pamaseva uye mugore
- Yakakodzera mapoka ekuvandudza anoda kugara kwenguva refu munzvimbo dzakapoteredza
MaVM anotakurikawo, asi anorema:
- Kutamisa VM zvinoreva kutamisa OS yese
- Saizi yefaira remufananidzo inogona kunge yakakura
- Kupa zvinhu kunowanzoita zvishoma nezvishoma
Mumazuva ano, musanganiswa unowanzoitika: maVM anoshandiswa se "nodes" dzakagadzikana uye dzakachengeteka, uye midziyo inomhanya pamusoro pawo kuti ishande zviri nyore.
8. Mashandisirwo Enyika Chaiyo: Nguva Yekusarudza Ndeipi?
Shandisa Virtualization kana:
1. Unofanira kumhanyisa OS dzakasiyana (semuenzaniso Windows Server neLinux panguva imwe chete).
2. Unoda kuparadzaniswa kwakasimba uye miganhu pakati penzvimbo.
3. Uri kushandisa application yekare ine zvinhu zvakawanda zvinonetsa kuisa mu container.
4. Zvivakwa zvako zvatove zvemuchina chaiwo uye manejimendi yeVM yakura.
Shandisa Containerization kana:
1. Uri kuvaka application ye microservices kana architecture yemazuva ano.
2. Unoda kukurumidza kuisirwa uye dynamic scaling.
3. Unoda nzvimbo yakarongeka yeDevOps neCI/CD.
4. Unoda kushanda zvakanaka kwezviwanikwa zvemabasa madiki akawanda.
9. Kusiyana muKutungamira neKurongeka
MaVM anotariswa achishandisa maturusi ekuona zvinhu zvakaita sevCenter, OpenStack, kana Hyper-V Manager. Kunyange zvazvo achigona kukura zvakanyanya, kupa maVM kunowanzova kwakaoma uye kunononoka.
Makontena anowanzo tarisirwa zvakanyanya vachishandisa vanoronga vakaita saKubernetes:
- Kuzviwedzera otomatiki
- Kuzviporesa (mudziyo unotangazve otomatiki)
- Kuenzanisa mutoro wemukati
- Kuvandudzwa kwezvinhu zvitsva uye kudzoserwa kwemari
- Kuzivisa (kushandisa mafaira eYAML)
Izvi zvinoita kuti ma containerization akwane zvakakwana kune ecosystem yemugore.
10. Kesimpulan
Kuisa ma Virtualization nekuisa ma container zvese zvakakosha, asi zvinopa zvinodiwa zvakasiyana. Kuisa ma Virtualization kunoita kuti pave nenzvimbo yakazara yemakombiyuta ine mukana wekushanda nema operating system akasiyana, asi inoda mari yakawanda uye inononoka kuishandisa. Kuisa ma containerization, panguva iyi, kunopa nzira yakareruka, inokurumidza, uye inotakurika yekushandisa ma applications, yakakodzera DevOps, microservices, uye ma deployments makuru—nechenjedzo yekuti nzira dzakanaka dzekuchengetedza nekugadzira ma organization dzinodiwa.
Pakupedzisira, sarudzo yakanakisisa kazhinji haisi "VMs kana macontainer," asi musanganiswa wezvose zviri zviviri: maVMs ehwaro hwezvivakwa, uye macontainer ekushandisa maapplication zvinobudirira. Nekunzwisisa misiyano iyi mikuru, unogona kugadzira masisitimu akasimba, akachengeteka, uye anogona kukura akagadzirirwa zvinodiwa nesangano rako.