Мазмұны
Егер сіз бағдарламалық жасақтама индустриясында немесе оның айналасында жұмыс істесеңіз, виртуалды машиналар туралы естіген боларсыз. Әйтпесе, олар не және не үшін пайдаланылады деген сұрақ туындауы мүмкін.
Мен бағдарламалық жасақтама инженері ретінде күнделікті виртуалды машиналарды пайдаланамын. Олар бағдарламалық жасақтаманы әзірлеуде күшті құралдар, бірақ олардың басқа да мақсаттары бар. VM ретінде де белгілі, көптеген кәсіпорындар оларды икемділігі, сенімділігі және үнемділігі себебінен пайдаланады; олар сондай-ақ апатты бағдарламалық қамтамасыз етуді сынаудан сақтайды.
Виртуалды машиналар дегеніміз не және олар не үшін қолданылатынын қарастырайық.
Виртуалды машина дегеніміз не?
Виртуалды машина – компьютердің негізгі ОЖ ішінде жұмыс істейтін Windows, Mac OS немесе Linux сияқты операциялық жүйенің (ОЖ) данасы.
Әдетте ол жұмыс үстеліндегі қолданба терезесінде жұмыс істейді. Виртуалды машинаның толық функционалдығы бар және жеке компьютер немесе машина сияқты әрекет етеді. Негізінде виртуалды машина - басты компьютер деп аталатын басқа компьютердің ішінде жұмыс істейтін виртуалды компьютер.
Сурет 1: Ноутбукта жұмыс істейтін виртуалды машина.
Виртуалды машина жұмыс істемейді. t аппараттық құрал (жад, қатты диск, пернетақта немесе монитор) жоқ. Ол негізгі құрылғының имитацияланған аппараттық құралдарын пайдаланады. Осыған байланысты «қонақтар» деп те аталатын бірнеше VM-ді бір хост машинасында іске қосуға болады.
2-сурет: бірнеше VM-ді басқаратын хост машинасы.
Хост сондай-ақ әртүрлі жұмыс істейтін бірнеше VM іске қоса аладыжүйелер, соның ішінде Linux, Mac OS және Windows. Бұл мүмкіндік гипервизор деп аталатын бағдарламалық құралға байланысты (жоғарыдағы 1 суретті қараңыз). Гипервизор басты компьютерде жұмыс істейді және виртуалды машиналарды жасауға, конфигурациялауға, іске қосуға және басқаруға мүмкіндік береді.
Гипервизор дискілік кеңістікті бөледі, өңдеу уақытын жоспарлайды және әрбір VM үшін жадты пайдалануды басқарады. Oracle VirtualBox, VMware, Parallels, Xen, Microsoft Hyper-V және басқа да көптеген қосымшалар осылай жасайды: олар гипервизорлар.
Гипервизор ноутбукта, компьютерде немесе серверде жұмыс істей алады. Ол виртуалды машиналарды жергілікті компьютерге немесе желі арқылы таратылған пайдаланушыларға қол жетімді етеді.
Виртуалды машиналар мен орталардың әртүрлі түрлері гипервизорлардың әртүрлі түрлерін қажет етеді. Олардың кейбіреулерін қарастырайық.
Виртуалды машиналар түрлері
Жүйелік виртуалды машиналар
Кейде толық виртуализация деп аталатын жүйелік виртуалды машиналар гипервизормен басқарылады және нақты компьютерлік жүйенің функционалдығы. Жүйе ресурстарын басқару және ортақ пайдалану үшін олар хосттың жергілікті операциялық жүйесін пайдаланады.
Жүйелік виртуалды машиналар жиі жылдам немесе бірнеше процессорлары, үлкен көлемдегі жады және көптеген дискілік кеңістіктері бар қуатты хостты қажет етеді. Жеке немесе ноутбук компьютерлерінде жұмыс істейтін кейбіреулері үлкен кәсіпорынның виртуалды серверлеріне қажет есептеу қуатын қажет етпеуі мүмкін; дегенмен, егер хост жүйесі сәйкес келмесе, олар баяу жұмыс істейді.
Виртуалды процессМашиналар
Процесс Виртуалды машиналары SVM-ден айтарлықтай ерекшеленеді — олардың құрылғыңызда жұмыс істеуі мүмкін және оны тіпті білмеуіңіз мүмкін. Олар сонымен қатар қолданбалы виртуалды машиналар немесе басқарылатын орындалу орталары (MRE) ретінде белгілі. Бұл виртуалды машиналар негізгі операциялық жүйеде жұмыс істейді және қолданбаларды немесе жүйелік процестерді қолдайды.
Неге PVM пайдалану керек? Олар арнайы операциялық жүйелерге немесе аппараттық құралдарға тәуелді болмай қызметтерді орындайды. Олардың тек қажетті ресурстары бар өздерінің шағын ОЖ бар. MRE бөлек ортада; оның Windows, Mac OS, Linux немесе кез келген басқа хост компьютерінде жұмыс істейтіні маңызды емес.
Ең көп тараған процесс виртуалды машиналарының бірі - сіз естіген және іске қосылғанын көрген болуыңыз мүмкін. сіздің компьютеріңіз. Ол Java қолданбаларын іске қосу үшін пайдаланылады және қысқаша Java виртуалды машинасы немесе JVM деп аталады.
Гипервизорлардың түрлері
Бізді қызықтыратын виртуалды машиналардың көпшілігі гипервизорды пайдаланады, өйткені олар эмуляция жасайды. тұтас компьютерлік жүйе. Гипервизорлардың екі түрі бар: жалаң металл гипервизорлары және хостинг гипервизорлары. Олардың екеуін де жылдам қарастырайық.
Жалаң металл гипервизоры
BMHs жергілікті гипервизорлар деп те аталуы мүмкін және олар хосттың операциялық жүйесінде емес, тікелей хосттың аппараттық құралында жұмыс істейді. Шын мәнінде, олар хосттың операциялық жүйесінің орнын, жоспарлауды жәнеәрбір виртуалды машинаның аппараттық құралдарды пайдалануын басқару, осылайша процесте «ортаңғы адамды» (хосттың ОЖ) алып тастайды.
Негізгі гипервизорлар әдетте компаниялар қызметкерлерін жұмысшылармен қамтамасыз ету үшін пайдаланатын ірі кәсіпорын VM үшін пайдаланылады. сервер ресурстары. Microsoft Azure немесе Amazon Web Services архитектураның осы түріне орналастырылған виртуалды құрылғылар болып табылады. Басқа мысалдар: KVM, Microsoft Hyper-V және VMware vSphere.
Хостталған гипервизор
Орналастырылған гипервизорлар стандартты операциялық жүйелерде жұмыс істейді — біз машиналарда іске қосатын кез келген басқа қолданба сияқты. Олар ресурстарды басқару және тарату үшін хосттың ОЖ пайдаланады. Гипервизордың бұл түрі өз машиналарында бірнеше операциялық жүйелерді іске қосуды қажет ететін жеке пайдаланушылар үшін жақсырақ.
Оларға Oracle VirtualBox, VMware Workstations, VMware Fusion, Parallels Desktop және басқалары сияқты қолданбалар кіреді. Орналастырылған гипервизорлар туралы толығырақ ақпаратты «Виртуалды машинаның ең жақсы бағдарламалық құралы» мақаласынан таба аласыз.
Неліктен виртуалды машиналарды пайдалану керек?
Енді сіз виртуалды машинаның не екенін негізгі түсінгеннен кейін, кейбір тамаша қолданбалар туралы ойлауыңыз мүмкін. Мұнда адамдардың виртуалды машиналарды пайдалануының негізгі себептері берілген.
1. үнемді
Виртуалды машиналар көптеген жағдайларда үнемді. Ең көрнектілерінің бірі корпоративтік әлемде. Қызметкерлерді ресурстармен қамтамасыз ету үшін физикалық серверлерді пайдалану мүмкінөте қымбат болуы. Аппараттық құрал арзан емес, оны ұстау одан да қымбатырақ.
Виртуалды машиналарды кәсіпорын серверлері ретінде пайдалану енді қалыпты жағдайға айналды. MS Azure сияқты провайдердің VM құрылғыларымен бастапқы жабдықты сатып алу және техникалық қызмет көрсету ақысы жоқ. Бұл виртуалды құрылғыларды орнатуға, конфигурациялауға және сағатына бір тиынға пайдалануға болады. Сондай-ақ, олар пайдаланылмай тұрғанда өшірілуі мүмкін және ешқандай шығынға ұшырамайды.
Құрылғыда VM пайдалану да үлкен ақша үнемдеуі мүмкін. Бірнеше операциялық жүйелерде немесе әртүрлі аппараттық конфигурацияларда жұмыс істеу қажет болса, сіз
бір хостта бірнеше виртуалды машиналарды пайдалана аласыз — әр тапсырма үшін шығып, бөлек компьютер сатып алудың қажеті жоқ.
2. Масштабталатын және икемді
Олар кәсіпорын серверлері немесе ноутбукта жұмыс істейтін виртуалды компьютерлер болсын, виртуалды машиналар масштабталады. Ресурстарды қажеттіліктеріңізге сәйкес келтіру оңай. Егер сізге көбірек жад немесе қатты диск кеңістігі қажет болса, жай ғана гипервизорға өтіп, көбірек болуы үшін VM құрылғысын қайта конфигурациялаңыз. Жаңа жабдықты сатып алудың қажеті жоқ және процесті жылдам аяқтауға болады.
3. Жылдам орнату
Жаңа виртуалды компьютерді жылдам орнатуға болады. Менде жаңа VM орнату қажет болған, оларды басқаратын әріптесіме қоңырау шалып, оларды бір сағаттан аз уақыт ішінде пайдалануға дайындаған жағдайлар болды.
4. Апатты қалпына келтіру
Егер сіз деректердің жоғалуын болдырмауға және апатты қалпына келтіруге дайындалуға тырыссаңыз, VM құрылғыларыкеремет құрал. Олардың сақтық көшірмесін жасау оңай және қажет болған жағдайда әртүрлі орындарда таратуға болады. Егер Microsoft немесе Amazon сияқты үшінші тарап виртуалды машиналарды орналастырса, олар сайттан тыс болады, яғни кеңсеңіз өртеніп кетсе, деректеріңіз қауіпсіз болады.
5. Қайта шығару оңай
Көптеген гипервизорлар VM көшірмесін немесе кескінін жасауға мүмкіндік береді. Бейнелеу кез келген жағдай үшін бірдей негізгі виртуалды компьютердің дәл көшірмелерін оңай айналдыруға мүмкіндік береді.
Мен жұмыс істейтін ортада біз әрбір әзірлеушіге әзірлеу және тестілеу үшін пайдалану үшін VM береміз. Бұл процесс барлық қажетті құралдармен және бағдарламалық құралмен конфигурацияланған кескінге ие болуға мүмкіндік береді. Бізде жаңа әзірлеуші қосылған кезде, сол суреттің көшірмесін жасау ғана қалады және оларда жұмыс істеу үшін қажет нәрсе бар.
6. Perfect for Dev/Test
Виртуалды машиналарды пайдаланудың ең жақсы артықшылықтарының бірі - олар бағдарламалық жасақтаманы әзірлеу және тестілеу үшін тамаша құрал болып табылады. VM-лер әзірлеушілерге бірнеше платформалар мен орталарды бір машинада дамытуға мүмкіндік береді. Егер бұл виртуалды компьютер бүлінсе немесе жойылса, жаңасын тез жасауға болады.
Олар тестілеушіге әрбір сынақ циклі үшін таза жаңа ортаға мүмкіндік береді. Мен жаңа VM жасайтын автоматтандырылған сынақ сценарийлерін орнататын, бағдарламалық құралдың соңғы нұсқасын орнататын, барлық қажетті сынақтарды орындайтын, содан кейін сынақтар аяқталғаннан кейін VM-ді жойатын жобаларда жұмыс істедім.
ВМ құрылғылары келесілер үшін тамаша жұмыс істейді.Өнімді сынау және шолулар, біз SoftwareHow.com сайтында орындаймыз. Қолданбаларды компьютерімде жұмыс істейтін VM-ге орнатып, оларды негізгі ортамды бұзбай тексере аламын.
Тестілеуді аяқтаған кезде виртуалды машинаны әрқашан жоя аламын, содан кейін қажет болғанда жаңасын жасай аламын. Бұл процесс сонымен қатар менде тек Windows құрылғысы болса да, бірнеше платформаларда тестілеуге мүмкіндік береді.
Қорытынды сөздер
Көріп отырғаныңыздай, виртуалды машиналар үнемді, әмбебап құрал болып табылады. көптеген қолданбалар үшін қолданылады. Енді тестерлер, әзірлеушілер және басқалар үшін серверге кіруді қамтамасыз ету үшін қымбат жабдықты сатып алу, орнату және техникалық қызмет көрсету қажет емес. VM құрылғылары бізге қажетті операциялық жүйелерді, аппараттық құралдарды және орталарды кез келген уақытта оңай және жылдам жасауға икемділік береді.