Što je virtualni stroj? (Zašto i kada ga koristiti)

  • Podijeli Ovo
Cathy Daniels

Ako radite u softverskoj industriji ili oko nje, vjerojatno ste čuli za virtualne strojeve. Ako niste, možda se pitate što su oni i čemu služe.

Kao softverski inženjer svakodnevno koristim virtualne strojeve. Oni su moćni alati u razvoju softvera, ali imaju i druge namjene. Također poznate kao VM, mnoge tvrtke ih koriste zbog njihove fleksibilnosti, pouzdanosti i isplativosti; također sprječavaju katastrofe uzrokovane neuspješnim testiranjem softvera.

Pogledajmo što su virtualni strojevi i zašto se koriste.

Što je virtualni stroj?

Virtualni stroj je instanca operativnog sustava (OS) kao što je Windows, Mac OS ili Linux koji radi unutar glavnog OS-a računala.

Obično se pokreće u prozoru aplikacije na radnoj površini. Virtualni stroj ima punu funkcionalnost i ponaša se kao zasebno računalo ili stroj. U biti, virtualni stroj je virtualno računalo koje radi unutar drugog računala poznato kao host stroj.

Slika 1: Virtualni stroj radi na prijenosnom računalu.

Virtualni stroj ne nemate hardver (memoriju, tvrdi disk, tipkovnicu ili monitor). Koristi simulirani hardver s glavnog računala. Zbog toga se više VM-ova, koji se nazivaju i "gostima", može pokrenuti na jednom glavnom računalu.

Slika 2: Glavno računalo koje pokreće više VM-ova.

Host također može pokretati više virtualnih strojeva s različitim načinom radasustavima, uključujući Linux, Mac OS i Windows. Ova mogućnost ovisi o softveru koji se zove hipervizor (pogledajte sliku 1 gore). Hipervizor radi na glavnom računalu i omogućuje vam stvaranje, konfiguriranje, pokretanje i upravljanje virtualnim strojevima.

Hipervizor dodjeljuje prostor na disku, raspoređuje vrijeme obrade i upravlja korištenjem memorije za svaki VM. To rade aplikacije kao što su Oracle VirtualBox, VMware, Parallels, Xen, Microsoft Hyper-V i mnoge druge: one su hipervizori.

Hipervizor može raditi na prijenosnom računalu, računalu ili poslužitelju. Čini virtualne strojeve dostupnima lokalnom računalu ili korisnicima distribuiranim preko mreže.

Različite vrste virtualnih strojeva i okruženja zahtijevaju različite vrste hipervizora. Pogledajmo neke od njih.

Vrste virtualnih strojeva

Virtualni strojevi sustava

VM-ove sustava, koji se ponekad nazivaju potpunom virtualizacijom, pokreće hipervizor i pružaju funkcionalnost stvarnog računalnog sustava. Koriste izvorni operativni sustav glavnog računala za upravljanje i dijeljenje resursa sustava.

Virtualni strojevi sustava često zahtijevaju moćno glavno računalo s brzim ili više procesora, velikom količinom memorije i tonama prostora na disku. Neki, koji rade na osobnim ili prijenosnim računalima, možda neće zahtijevati računalnu snagu koju trebaju virtualni poslužitelji velikih poduzeća; međutim, radit će sporo ako host sustav nije adekvatan.

Process VirtualStrojevi

Virtualni strojevi procesa prilično su različiti od SVM-ova—možda ih imate pokrenute na svom računalu, a da toga niste ni svjesni. Također su poznati kao aplikacijski virtualni strojevi ili upravljana runtime okruženja (MRE). Ovi virtualni strojevi rade unutar operativnog sustava hosta i podržavaju aplikacije ili sistemske procese.

Zašto koristiti PVM? Oni obavljaju usluge bez ovisnosti o određenim operativnim sustavima ili hardveru. Imaju vlastiti mali OS sa samo resursima koji su im potrebni. UM je u zasebnom okruženju; nije važno radi li na Windowsu, Mac OS-u, Linuxu ili bilo kojem drugom host stroju.

Jedan od najčešćih procesnih virtualnih strojeva je onaj za koji ste vjerojatno čuli i možda ste ga vidjeli kako radi tvoje računalo. Koristi se za pokretanje Java aplikacija i skraćeno se naziva Java Virtual Machine ili JVM.

Vrste hipervizora

Većina virtualnih strojeva kojima se bavimo koriste hipervizor jer emuliraju cijeli računalni sustav. Postoje dvije različite vrste hipervizora: Bare Metal hipervizori i hostirani hipervizori. Pogledajmo na brzinu oba.

Bare Metal Hypervisor

BMH se također mogu nazvati izvornim hipervizorima i pokreću se izravno na hardveru glavnog računala umjesto da se pokreću unutar operativnog sustava glavnog računala. Zapravo, oni zauzimaju mjesto operativnog sustava hosta, raspoređivanja iupravljanje upotrebom hardvera od strane svakog virtualnog stroja, čime se izbacuje "srednji čovjek" (OS hosta) u procesu.

Nativni hipervizori obično se koriste za velike poslovne VM-ove, koje tvrtke koriste kako bi zaposlenicima pružile resursi poslužitelja. Microsoft Azure ili Amazon Web Services su VM hostirani na ovoj vrsti arhitekture. Ostali primjeri su KVM, Microsoft Hyper-V i VMware vSphere.

Hostirani hipervizor

Hostirani hipervizori rade na standardnim operativnim sustavima—kao i svaka druga aplikacija koju pokrećemo na našim strojevima. Oni koriste OS hosta za upravljanje i distribuciju resursa. Ova vrsta hipervizora je prikladnija za pojedinačne korisnike koji trebaju pokrenuti više operativnih sustava na svojim strojevima.

Ovo uključuje aplikacije kao što su Oracle VirtualBox, VMware Workstations, VMware Fusion, Parallels Desktop i mnoge druge. Detaljnije informacije o hostiranim hipervizorima možete pronaći u našem članku Najbolji softver za virtualne strojeve.

Zašto koristiti virtualne strojeve?

Sada kada imate osnovno razumijevanje o tome što je virtualni stroj, vjerojatno se možete sjetiti nekoliko izvrsnih aplikacija. Evo nekih od glavnih razloga zašto ljudi koriste virtualne strojeve.

1. Isplativi

Virtualni strojevi su isplativi u brojnim situacijama. Jedan od najistaknutijih je u korporativnom svijetu. Korištenje fizičkih poslužitelja za pružanje resursa zaposlenicima možebiti vrlo skupo. Hardver nije jeftin, a njegovo održavanje još je skuplje.

Upotreba virtualnih strojeva kao poslužitelja poduzeća sada je postala norma. S VM-ovima dobavljača kao što je MS Azure nema početnih kupnji hardvera niti naknada za održavanje. Ovi VM-ovi se mogu postaviti, konfigurirati i koristiti za samo peni na sat. Također se mogu isključiti kada se ne koriste i ne stvaraju nikakve troškove.

Korištenje VM-a na vašem računalu također može biti velika ušteda novca. Ako trebate raditi u više operativnih sustava ili različitih hardverskih konfiguracija, možete

koristiti više virtualnih strojeva na jednom glavnom računalu—nema potrebe da izlazite i kupujete zasebno računalo za svaki zadatak.

2. Skalabilan i fleksibilan

Bez obzira jesu li poslovni poslužitelji ili VM-ovi koji rade na vašem prijenosnom računalu, virtualni strojevi su skalabilni. Lako je prilagoditi resurse svojim potrebama. Ako trebate više memorije ili prostora na tvrdom disku, samo idite u hipervizor i ponovno konfigurirajte VM da ima više. Nema potrebe za kupnjom novog hardvera, a proces se može brzo dovršiti.

3. Brzo postavljanje

Novi VM može se brzo postaviti. Imao sam slučajeva u kojima sam trebao novu postavku VM-a, nazvao sam svog suradnika koji njima upravlja i pripremio ih za upotrebu za manje od sat vremena.

4. Oporavak od katastrofe

Ako pokušavate spriječiti gubitak podataka i pripremiti se za oporavak od katastrofe, VM-ovi mogu bitisjajan alat. Lako ih je sigurnosno kopirati i po potrebi se mogu distribuirati na različita mjesta. Ako treća strana poput Microsofta ili Amazona ugošćuje virtualne strojeve, oni će biti udaljeni — što znači da su vaši podaci sigurni ako vaš ured izgori.

5. Jednostavan za reprodukciju

Većina hipervizora omogućuje vam izradu kopije ili slike VM-a. Imaging vam omogućuje jednostavno vrtenje točnih reprodukcija istog osnovnog VM-a za bilo koju situaciju.

U okruženju u kojem radim, svakom razvojnom programeru dajemo VM za korištenje za razvoj i testiranje. Ovaj proces nam omogućuje da sliku konfiguriramo sa svim potrebnim alatima i softverom. Kada imamo novog programera koji se uključuje, sve što moramo učiniti je napraviti kopiju te slike i oni će imati sve što im je potrebno za rad.

6. Savršeno za Dev/Test

Jedna od najvećih prednosti korištenja virtualnih strojeva je ta što su savršen alat za razvoj softvera i testiranje. VM-ovi omogućuju programerima razvoj na više platformi i okruženja na jednom stroju. Ako se taj VM ošteti ili uništi, novi se može brzo izraditi.

Oni omogućuju ispitivaču da ima čisto novo okruženje za svaki testni ciklus. Radio sam na projektima u kojima postavljamo automatizirane testne skripte koje stvaraju novi VM, instaliraju najnoviju verziju softvera, pokreću sve potrebne testove, zatim brišu VM nakon što su testovi dovršeni.

VM-ovi rade sjajno zatestiranje proizvoda i recenzije poput onih koje radimo ovdje na SoftwareHow.com. Mogu instalirati aplikacije u VM koji radi na mom računalu i testirati ih bez zatrpavanja primarnog okruženja.

Kad završim s testiranjem, uvijek mogu izbrisati virtualni stroj, a zatim stvoriti novi kada mi zatreba. Ovaj mi postupak također omogućuje testiranje na više platformi iako imam samo Windows stroj.

Završne riječi

Kao što vidite, virtualni strojevi su troškovno učinkovit, svestran alat koji može koristiti za mnoge primjene. Više ne moramo kupovati, postavljati i održavati skupi hardver kako bismo omogućili pristup poslužitelju testerima, programerima i drugima. VM-ovi nam daju fleksibilnost za jednostavnu i brzu izradu operativnih sustava, hardvera i okruženja koja su nam potrebna—u bilo kojem trenutku.

Ja sam Cathy Daniels, stručnjak za Adobe Illustrator. Softver koristim od verzije 2.0 i izrađujem vodiče za njega od 2003. Moj je blog jedno od najpopularnijih odredišta na webu za ljude koji žele naučiti Illustrator. Osim što radim kao blogerica, bavim se i autoricom i grafičkom dizajnericom.