Преглед садржаја
Ако радите у или око софтверске индустрије, вероватно сте чули за виртуелне машине. Ако не, можда се питате шта су и чему служе.
Као софтверски инжењер, свакодневно користим виртуелне машине. Они су моћни алати у развоју софтвера, али имају и друге намене. Такође познате као ВМ, многе компаније их користе због њихове флексибилности, поузданости и исплативости; они такође спречавају катастрофе због одбеглог тестирања софтвера.
Хајде да погледамо шта су виртуелне машине и зашто се користе.
Шта је виртуелна машина?
Виртуелна машина је инстанца оперативног система (ОС) као што је Виндовс, Мац ОС или Линук који ради у оквиру главног оперативног система рачунара.
Уобичајено, ради у прозору апликације на радној површини. Виртуелна машина има пуну функционалност и делује као посебан рачунар или машина. У суштини, виртуелна машина је виртуелни рачунар који ради унутар другог рачунара познатог као главна машина.
Слика 1: Виртуелна машина ради на лаптопу.
Виртуелна машина не т имају хардвер (меморију, чврсти диск, тастатуру или монитор). Користи симулирани хардвер са матичне машине. Због тога, више ВМ-ова, који се такође називају „гости“, могу да се покрену на једној хост машини.
Слика 2: Машина домаћина која покреће више ВМ-ова.
Хост такође може покренути више ВМ-ова са различитим операцијамасистеми, укључујући Линук, Мац ОС и Виндовс. Ова могућност зависи од софтвера који се зове хипервизор (погледајте слику 1 изнад). Хипервизор ради на главној машини и омогућава вам да креирате, конфигуришете, покрећете и управљате виртуелним машинама.
Хипервизор додељује простор на диску, планира време обраде и управља коришћењем меморије за сваку ВМ. То раде апликације као што су Орацле ВиртуалБок, ВМваре, Параллелс, Ксен, Мицрософт Хипер-В и многе друге: они су хипервизори.
Хипервизор може да ради на лаптопу, ПЦ-у или серверу. Он чини виртуелне машине доступним локалном рачунару или корисницима дистрибуираним широм мреже.
Различити типови виртуелних машина и окружења захтевају различите типове хипервизора. Хајде да погледамо неке од њих.
Типови виртуелних машина
Системске виртуелне машине
Системске ВМ, које се понекад називају и пуна виртуелизација, покреће хипервизор и обезбеђују функционалност стварног рачунарског система. Они користе изворни оперативни систем домаћина за управљање и дељење системских ресурса.
Системске виртуелне машине често захтевају моћан хост са брзим или више ЦПУ-а, великим количинама меморије и тонама простора на диску. Неки, који раде на личним или лаптоп рачунарима, можда неће захтевати рачунарску снагу која је потребна виртуелним серверима великих предузећа; међутим, они ће радити споро ако хост систем није адекватан.
Виртуални процесМашине
Процес Виртуелне машине се прилично разликују од СВМ-ова—можда их имате да раде на вашој машини, а да то чак и не знате. Они су такође познати као виртуелне машине апликација или окружења за управљање (МРЕ). Ове виртуелне машине раде унутар оперативног система домаћина и подржавају апликације или системске процесе.
Зашто користити ПВМ? Они обављају услуге без зависности од специфичних оперативних система или хардвера. Они имају свој мали ОС са само ресурсима који су им потребни. МРЕ је у одвојеном окружењу; није битно да ли ради на Виндовс-у, Мац ОС-у, Линук-у или било којој другој хост машини.
Једна од најчешћих процесних виртуелних машина је она за коју сте вероватно чули и можда сте видели да ради на рачунар. Користи се за покретање Јава апликација и скраћено се назива Јава виртуелна машина или ЈВМ.
Типови хипервизора
Већина виртуелних машина које нас занимају користе хипервизор јер емулирају читав компјутерски систем. Постоје два различита типа хипервизора: голи метални хипервизори и хостовани хипервизори. Хајде да их брзо погледамо.
Баре Метал Хипервисор
БМХ-ови се такође могу назвати изворним хипервизорима, и они раде директно на хардверу хоста уместо да раде у оквиру оперативног система хоста. У ствари, они заузимају место оперативног система домаћина, заказивање иуправљање коришћењем хардвера од стране сваке виртуелне машине, чиме се искључује „средњи човек“ (ОС хоста) у процесу.
Нативни хипервизори се обично користе за ВМ великих предузећа, које компаније користе да обезбеде запосленима ресурси сервера. Мицрософт Азуре или Амазон веб услуге су ВМ хостовани на овој врсти архитектуре. Други примери су КВМ, Мицрософт Хипер-В и ВМваре вСпхере.
Хостовани хипервизор
Хостовани хипервизори раде на стандардним оперативним системима—баш као и свака друга апликација коју покрећемо на нашим машинама. Они користе ОС домаћина за управљање и дистрибуцију ресурса. Овај тип хипервизора је погоднији за појединачне кориснике који морају да покрећу више оперативних система на својим машинама.
Ово укључује апликације као што су Орацле ВиртуалБок, ВМваре Воркстатионс, ВМваре Фусион, Параллелс Десктоп и многе друге. Детаљније информације о хостованим хипервизорима можете пронаћи у нашем чланку, Најбољи софтвер за виртуелне машине.
Зашто користити виртуелне машине?
Сада када имате основно разумевање о томе шта је виртуелна машина, вероватно можете да се сетите неких одличних апликација. Ево неких од главних разлога зашто људи користе виртуелне машине.
1. Исплативо
Виртуелне машине су исплативе у бројним ситуацијама. Један од најистакнутијих је у корпоративном свету. Коришћење физичких сервера за обезбеђивање ресурса за запослене можебити веома скуп. Хардвер није јефтин, а његово одржавање је још скупље.
Употреба виртуелних машина као сервера предузећа је сада постала норма. Са ВМ-овима провајдера као што је МС Азуре, нема почетних куповина хардвера и накнада за одржавање. Ови ВМ се могу подесити, конфигурисати и користити за само пени на сат. Они такође могу да се угасе када се не користе и уопште не коштају.
Коришћење ВМ-а на вашој машини такође може бити велика уштеда новца. Ако треба да радите у више оперативних система или у различитим хардверским конфигурацијама, можете
да користите више виртуелних машина на једном хосту – нема потребе да излазите и купујете посебан рачунар за сваки задатак.
2. Скалабилност и флексибилност
Било да се ради о серверима предузећа или ВМ-овима који раде на вашем лаптопу, виртуелне машине су скалабилне. Лако је прилагодити ресурсе вашим потребама. Ако вам треба више меморије или простора на чврстом диску, само идите у хипервизор и поново конфигуришите ВМ тако да има више. Нема потребе за куповином новог хардвера, а процес се може брзо завршити.
3. Брзо подешавање
Нова ВМ се може брзо подесити. Имао сам случајеве када ми је било потребно ново подешавање ВМ-а, позвао сам свог колегу који њима управља и имао их спреман за употребу за мање од сат времена.
4. Опоравак од катастрофе
Ако покушавате да спречите губитак података и припремите се за опоравак од катастрофе, ВМ могу битиодличан алат. Лако се праве резервне копије и могу се дистрибуирати на различитим локацијама ако је потребно. Ако трећа страна као што је Мицрософт или Амазон хостује виртуелне машине, оне ће бити ван локације — што значи да су ваши подаци безбедни ако ваша канцеларија изгори.
5. Лако за репродукцију
Већина хипервизора вам омогућава да направите копију или слику ВМ-а. Имагинг вам омогућава да лако направите тачне репродукције исте основне ВМ за сваку ситуацију.
У окружењу у којем радим, сваком програмеру дајемо ВМ за развој и тестирање. Овај процес нам омогућава да конфигуришемо слику са свим потребним алатима и софтвером. Када се укључи нови програмер, све што треба да урадимо је да направимо копију те слике и они имају оно што им је потребно да раде.
6. Савршено за Дев/Тест
Једна од најбољих предности коришћења виртуелних машина је то што су савршен алат за развој и тестирање софтвера. ВМ омогућавају програмерима да развијају на више платформи и окружења на једној машини. Ако се тај ВМ оштети или уништи, нови се може брзо креирати.
Оне омогућавају тестеру да има чисто ново окружење за сваки циклус тестирања. Радио сам на пројектима у којима смо постављали аутоматизоване скрипте за тестирање које креирају нову ВМ, инсталирају најновију верзију софтвера, покрећу све потребне тестове, а затим бришемо ВМ када се тестови заврше.
ВМ раде одлично затестирање производа и рецензије попут оних које радимо овде на СофтвареХов.цом. Могу да инсталирам апликације у ВМ који ради на мојој машини и тестирам их без затрпавања примарног окружења.
Када завршим са тестирањем, увек могу да избришем виртуелну машину, а затим да направим нову када ми затреба. Овај процес ми такође омогућава да тестирам на више платформи иако имам само Виндовс машину.
Завршне речи
Као што видите, виртуелне машине су економичан, свестран алат који може користити за многе апликације. Више не морамо да купујемо, подешавамо и одржавамо скуп хардвер да бисмо омогућили приступ серверу за тестере, програмере и друге. ВМ нам пружају флексибилност да лако и брзо креирамо оперативне системе, хардвер и окружења која су нам потребна—у било ком тренутку.