- Vagrant поддржува Hyper-V од Windows 8.1 или понова верзија и ги олеснува репродуктивните средини
- Инсталирањето и конфигурирањето на Vagrant на Hyper-V бара специфични поставки за вмрежување и обезбедување.
- Hyper-V не дозволува лесно одредени функции како статични IP-адреси, но има дополнителни решенија
- Се препорачува да се користат слики од „кутија“ компатибилни со Hyper-V за да се избегнат грешки при подигање.

Влез, Поставете виртуелни средини брзо и уредно во Windows Изгледа како сложена мисија. За среќа, имаме алатки како Скитник на Hyper-V да се овозможи тоа. И иако неговата употреба е повеќе поврзана со VirtualBox, таа е исто така целосно компатибилна со оваа технологија за виртуелизација која е веќе интегрирана во многу верзии на Windows.
И покрај тоа, инсталирање и конфигурирање Скокач во Hyper-V не е толку лесно како што изгледа. Постои клучни чекори и особености на провајдерот за виртуелизација на Microsoft што треба да ги знаете. Во оваа статија, ќе ви обезбедиме сè што ви треба за да започнете виртуелни средини според оваа формула без никакви проблеми.
Што е Vagrant и зошто да се користи Hyper-V?
Скокач е алатка со отворен извор што дозволува изградете репродуктивни и преносливи виртуелни средини преку едноставни конфигурациски датотеки. Дизајниран е за програмери, системски администратори или за секој кој има потреба од конзистентни околини низ компјутерите, со поддршка за повеќе оперативни системи.
Од своја страна, Hyper-V е мајчин хипервизор на Microsoft, вклучени во Професионални, претпријатија и образовни верзии на Windows 8.1 и понови. Нуди високи перформанси и стабилност, особено корисни кога други хипервизори како VirtualBox се во конфликт во модерни околини на Windows.
Една од најчестите причини да се одлучите за Hyper-V наместо VirtualBox е дека некои производи, како на пр Докер работна површина или WSL2 (Windows Подсистем за Linux), бараат Hyper-V да биде овозможено. Ова создава некомпатибилност со VirtualBox, што го прави Hyper-V единственото валидно решение доколку не сакаме да ги активираме и деактивираме услугите.
Инсталирање Vagrant и овозможување Hyper-V
Пред да започнете да го користите Vagrant на Hyper-V, Проверете дали вашиот компјутер има овозможено Hyper-V. Бидете внимателни, бидејќи обично не е овозможено стандардно. Можете да го направите ова рачно од делот „Вклучи карактеристики на Windows“ или со следнава команда во PowerShell (како администратор):
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
По извршувањето на оваа команда, потребно е рестартирање на компјутерот за да стапат на сила измените.
Паралелно, мора Преземете и инсталирајте Vagrant од официјалната веб-страница. Инсталаторот вклучува сè што ви треба за да можете да ја користите командата vagrant директно од кој било терминал.
Откако ќе се инсталира, можете да потврдите дека сè е точно со извршување на следново во терминалот:
vagrant --version
Оваа команда треба да ја врати инсталираната верзија, на пример Бродот 2.4.0.
Чекор 1: Подгответе основна средина
Vagrant се заснова на „кутии“, кои се основни слики на претходно инсталирани оперативни системи. Тие автоматски се преземаат од јавниот индекс познат како Vagrant Cloud. За да започнете, треба да креирате папка каде што ќе работите на вашиот проект. На пример:
mkdir mi_proyecto_vagrant
cd mi_proyecto_vagrant
vagrant init generic/alpine36
Оваа команда ќе генерира датотека наречена Vagrantfile каде што се наоѓа целата конфигурација на виртуелната машина. Во него ќе треба да прилагодите некои клучни параметри за да користите Hyper-V.
Конфигурација на провајдер Hyper-V
Стандардно, Vagrant ќе се обиде да користи VirtualBox како провајдер. За да користите Hyper-V, можете да го наведете ова секој пат со извршување:
vagrant up --provider=hyperv
Или, поставете Hyper-V како стандарден провајдер со поставување на променлива на околината:
$env:VAGRANT_DEFAULT_PROVIDER="hyperv"
Овој чекор може да се направи од PowerShell или директно во променливите на вашата системска околина.
Внатре во досието скитници, Се препорачува да го наведете давателот со специфични поставки. Основен пример би бил:
Vagrant.configure("2") do |config|
config.vm.box = "generic/alpine36"
config.vm.provider "hyperv" do |h|
h.vmname = "mi_vm_hyperv"
h.memory = 2048
h.cpus = 2
end
end
Овие параметри ви дозволуваат да доделите RAM меморија, број на јадра и името што ќе го има машината во Hyper-V.
Вмрежување и поврзување во Hyper-V
Една од слабите точки на Hyper-V во Vagrant е тоа што автоматски не ја конфигурира мрежата. Поради оваа причина, ќе треба рачно да изберете vSwitch со надворешно поврзување веќе создадено во Hyper-V.
За да поврзете приватна мрежа или да изберете специфичен vSwitch, можете да користите:
config.vm.network "private_network", bridge: "NombreDelvSwitch"
Забележете го тоа Hyper-V не ви дозволува директно да конфигурирате статични IP-адреси од Vagrant., така што тие мора да се постават со помош на скрипти или со менување на поставките за гостин оперативен систем.
Машински пристап: SSH и други алатки
Иако може да изгледа дека SSH не може да се користи на Windows, Vagrant вклучува вграден SSH клиент, за да можете да му пристапите без да инсталирате дополнителни програми.
Најавете се со:
vagrant ssh
Можете да користите и кит, но во тој случај ќе ви треба Претворете го приватниот клуч генериран од Vagrant во PPK формат (со PuTTYgen), бидејќи не е директно поддржан. Клучот се наоѓа на:
.vagrant/machines/default/hyperv/private_key
Ова ќе ви овозможи рачно да се поврзете од кој било SSH клиент што го сакате.
Обезбедување со скрипти
Една од најголемите придобивки на Vagrant е неговата поддршка за автоматско обезбедување, благодарение на скриптите. Можете да стартувате скрипти за школка за повторливи инсталации:
config.vm.provision "shell", path: "bootstrap.sh"
Внатре во досието bootstrap.sh Можете да вклучите упатства како што се:
apk update
apk add git
Ова ќе работи првиот пат кога се создава VM. Ако сакате повторно да ја примените скриптата подоцна, можете да направите:
vagrant reload --provision
Работа со повеќе машини
Vagrant ви овозможува да управувате со повеќе од една машина од една датотека. Ова е корисно за лаборатории или кластери на сервери. Типично поставување за лабораторија може да вклучува неколку дефиниции:
Vagrant.configure("2") do |config|
config.vm.define "master" do |master|
master.vm.box = "bento/ubuntu-20.04"
master.vm.hostname = "master"
master.vm.network :private_network, ip: "10.0.0.10"
end
(1..2).each do |i|
config.vm.define "node#{i}" do |node|
node.vm.box = "bento/ubuntu-20.04"
node.vm.hostname = "node#{i}"
node.vm.network :private_network, ip: "10.0.0.#{i + 10}"
end
end
config.vm.provision "shell", inline: <<-SHELL
apt-get update
apt-get install -y avahi-daemon libnss-mdns
SHELL
end
Ова им овозможува на машините да се препознаваат едни со други по имиња како што се јазол1.локален o господар.локален благодарение на употребата на mDNS.
Совети за перформанси и компатибилност
Изведбата на скитници на Hyper-V е генерално добра, но зависи од:
- Моќта на вашиот тим домаќин (РАМ, процесор, тип на диск).
- Користена основна слика (подобро да користите оптимизирани кутии).
- Бројот на машини кои работат во исто време.
- Диференцијална употреба на диск и тенко обезбедување.
Вообичаена практика за скриптирање на повеќе средини е да се создаде a персонализирана кутија што веќе ги вклучува сите ваши категории: алатки, услуги, маршрути итн. Со ова се избегнува потребата од повторно инсталирање на истото во секој пример.
Користењето Vagrant на Hyper-V на Windows е целосно остварливо, иако со некои ограничувања кои можат да се решат со мали прилагодувања. Hyper-V обезбедува робусност и компатибилност со современите технологии на Microsoft, додека Vagrant ја олеснува автоматизацијата и преносливоста на развојната средина.
Уредник специјализиран за технологија и интернет прашања со повеќе од десет години искуство во различни дигитални медиуми. Работев како уредник и креатор на содржини за компании за е-трговија, комуникација, онлајн маркетинг и рекламирање. Имам пишувано и на веб-страниците за економија, финансии и други сектори. Мојата работа е и моја страст. Сега, преку моите написи во Tecnobits, се трудам да ги истражувам сите новости и нови можности кои светот на технологијата ни ги нуди секој ден за подобрување на нашите животи.



