- Kākoʻo ʻo Vagrant i ka Hyper-V mai Windows 8.1 a i ʻole ke kiʻekiʻe aʻe a hoʻomaʻamaʻa i nā kaiapuni hiki ke hana hou ʻia
- Pono ka hoʻonohonoho ʻana a me ka hoʻonohonoho ʻana iā Vagrant ma Hyper-V i nā hoʻonohonoho pūnaewele a me nā hoʻonohonoho hoʻolako.
- ʻAʻole ʻae ʻo Hyper-V i kekahi mau hiʻohiʻona e like me IP static maʻalahi, akā aia nā hoʻonā hoʻohui
- Manaʻo ʻia e hoʻohana i nā kiʻi 'pahu' kūpono ʻo Hyper-V e pale i nā hewa boot.

I ka hoʻomaka ʻana, Hoʻonohonoho wikiwiki a hoʻonohonoho pono i nā kaiapuni virtual ma Windows Me he mea lā he mikiona paʻakikī. ʻO ka mea pōmaikaʻi, loaʻa iā mākou nā mea hana like Vagrant ma Hyper-V e hiki ai. A ʻoiai ʻoi aku ka pili o kona hoʻohana ʻana me VirtualBox, ua paʻa loa ia me kēia ʻenehana virtualization i hoʻohui ʻia i nā mana he nui o Windows.
ʻOiai kēlā, hoʻokomo a hoʻonohonoho ʻAuwana ma Hyper-V ʻaʻole maʻalahi e like me ka mea i manaʻo ʻia. Aia nā ʻanuʻu koʻikoʻi a me nā hiʻohiʻona o ka mea hoʻolako virtualization Microsoft āu e ʻike ai. Ma kēia ʻatikala, hāʻawi mākou iā ʻoe i nā mea a pau e pono ai ʻoe e hoʻomaka i nā kaiapuni virtual e hahai ana i kēia ʻano kumu me ka pilikia ʻole.
He aha ka Vagrant a no ke aha e hoʻohana ai iā Hyper-V?
ʻAuwana He mea ia mea hana kumu wehe e ʻae ana kūkulu i nā kaiapuni virtual reproducible a lawe ʻia ma o nā faila hoʻonohonoho maʻalahi. Hoʻolālā ʻia ia no nā mea hoʻomohala, nā luna hoʻomalu ʻōnaehana, a i ʻole nā mea āpau e makemake i nā kaiapuni kūlike ma nā kamepiula, me ke kākoʻo no nā ʻōnaehana hana lehulehu.
No ko lākou ʻāpana, ʻO Hyper-V ka hypervisor maoli o Microsoft, i hoʻokomo ʻia i loko o nā mana ʻOihana, Enterprise, a me Education o Windows 8.1 a ma hope. Hāʻawi ia i ka hana kiʻekiʻe a me ke kūpaʻa, ʻoi aku ka maikaʻi i ka wā o nā hypervisors ʻē aʻe e like me VirtualBox hakakā i nā ʻenehana Windows hou.
ʻO kekahi o nā kumu maʻamau no ke koho ʻana Hyper-V ma kahi o VirtualBox kekahi mau huahana, e like me Papapihi Docker a i ʻole WSL2 (Windows Subsystem for Linux), koi iā Hyper-V e hoʻā. Hoʻokumu kēia i nā mea like ʻole me VirtualBox, e hana ana iā Hyper-V wale nō ka hopena kūpono inā ʻaʻole mākou makemake e hoʻāla a hoʻopau i nā lawelawe.
Ke hoʻokomo nei i ka Vagrant a me ka hoʻonā ʻana iā Hyper-V
Ma mua o kou hoʻomaka ʻana e hoʻohana iā Vagrant ma Hyper-V, E hōʻoia i kāu kamepiula i hiki iā Hyper-V. E akahele, no ka mea, ʻaʻole hiki ke hoʻohana ʻia e ka paʻamau. Hiki iā ʻoe ke hana i kēia me ka lima mai ka ʻāpana "Huli i nā hiʻohiʻona Windows" a i ʻole me kēia kauoha ma PowerShell (ma ke ʻano he luna hoʻomalu):
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
Ma hope o ka hoʻokō ʻana i kēia kauoha, pono e ho'omaka hou ka lolouila no ka hoʻokō ʻana o nā hoʻololi.
I ka like, pono ʻoe Hoʻoiho a hoʻokomo iā Vagrant mai ka pūnaewele official. Aia ka mea hoʻonoho i nā mea a pau āu e pono ai e hoʻohana i ke kauoha vagrant pololei mai kekahi terminal.
Ke hoʻokomo ʻia, hiki iā ʻoe ke hōʻoia ua pololei nā mea āpau ma ka holo ʻana i kēia ma ka terminal:
vagrant --version
Pono kēia kauoha e hoʻihoʻi i ka mana i kau ʻia, no ka laʻana Vagrant 2.4.0.
KaʻAnuʻu 1: E hoʻomākaukau i kahi kahua kumu
Hoʻokumu ʻia ʻo Vagrant ma nā "pahu", ʻo ia nā kiʻi kumu o nā ʻōnaehana hana i hoʻokomo mua ʻia. Hoʻoiho ʻia kēia mau mea mai ka papa kuhikuhi lehulehu i kapa ʻia ʻo Vagrant Cloud. No ka hoʻomaka ʻana, pono ʻoe e hana i kahi waihona kahi āu e hana ai ma kāu papahana. ʻo kahi laʻana:
mkdir mi_proyecto_vagrant
cd mi_proyecto_vagrant
vagrant init generic/alpine36
ʻO kēia kauoha e hana i kahi faila i kapa ʻia ʻo Vagrantfile ʻo ia kahi e noho ai ka hoʻonohonoho mīkini virtual a pau. I loko o ia mea pono ʻoe e hoʻoponopono i kekahi mau ʻāpana koʻikoʻi e hoʻohana iā Hyper-V.
Hoʻonohonoho hoʻolako Hyper-V
Ma ka paʻamau, E ho'āʻo ʻo Vagrant e hoʻohana iā VirtualBox ma ke ʻano he mea hoʻolako. No ka hoʻohana ʻana iā Hyper-V, hiki iā ʻoe ke kuhikuhi i kēia i kēlā me kēia manawa ma ka holo ʻana:
vagrant up --provider=hyperv
A i ʻole, hoʻonoho iā Hyper-V ma ke ʻano he mea hoʻolako paʻamau ma ka hoʻonohonoho ʻana i kahi ʻano hoʻololi kaiapuni:
$env:VAGRANT_DEFAULT_PROVIDER="hyperv"
Hiki ke hana ʻia kēia ʻanuʻu mai PowerShell a i ʻole pololei i kāu ʻōnaehana kaiapuni.
I loko o ka Vagrantfile, Manaʻo ʻia e kuhikuhi i ka mea hāʻawi me nā hoʻonohonoho kikoʻī. ʻO kahi laʻana kumu:
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
ʻAe kēia mau ʻāpana iā ʻoe e hoʻonohonoho RAM, helu o nā cores, a me ka inoa o ka mīkini i Hyper-V.
ʻO ka pūnaewele a me ka pilina ma Hyper-V
ʻO kekahi o nā wahi nāwaliwali o Hyper-V ma Vagrant ʻaʻole ia e hoʻonohonoho maʻalahi i ka pūnaewele. No kēia kumu, pono ʻoe e koho lima i kahi vSwitch me ka pilina o waho i hana ʻia ma Hyper-V.
No ka hoʻohui ʻana i kahi pūnaewele pilikino a koho paha i kahi vSwitch kikoʻī, hiki iā ʻoe ke hoʻohana:
config.vm.network "private_network", bridge: "NombreDelvSwitch"
E hoʻomanaʻo i kēlā ʻAʻole ʻae ʻo Hyper-V iā ʻoe e hoʻonohonoho pololei i nā IP static mai Vagrant., no laila pono e hoʻonohonoho ʻia me ka hoʻohana ʻana i nā palapala a i ʻole ma ka hoʻololi ʻana i nā hoʻonohonoho hoʻonohonoho hoʻonohonoho hoʻonohonoho hoʻokele malihini.
Loaʻa i ka mīkini: SSH a me nā mea hana ʻē aʻe
ʻOiai ʻaʻole hiki ke hoʻohana ʻia ka SSH ma Windows, Aia ʻo Vagrant i kahi mea kūʻai aku SSH i kūkulu ʻia, no laila hiki iā ʻoe ke komo iā ia me ka ʻole e hoʻokomo i nā polokalamu hou.
E komo me:
vagrant ssh
Hiki iā ʻoe ke hoʻohana i ka PuTTY, akā inā pono ʻoe E hoʻohuli i ke kī pilikino i hoʻokumu ʻia e Vagrant i ke ʻano PPK (me PuTTYgen), no ka mea, ʻaʻole i kākoʻo pololei ʻia. Aia ke kī ma:
.vagrant/machines/default/hyperv/private_key
E ʻae kēia iā ʻoe e hoʻopili me ka lima mai kekahi mea kūʻai aku SSH āu e makemake ai.
Hoʻolako me nā palapala
ʻO kekahi o nā pōmaikaʻi nui loa o Vagrant ʻo kāna kākoʻo no hoʻolako 'akomi, mahalo i nā palapala. Hiki iā ʻoe ke hoʻomaka i nā script shell no ka hoʻokomo hou ʻana:
config.vm.provision "shell", path: "bootstrap.sh"
I loko o ka faila bootstrap.sh Hiki iā ʻoe ke hoʻokomo i nā kuhikuhi e like me:
apk update
apk add git
E holo ana keia ka manawa mua i hana ʻia ai ka VM. Inā makemake ʻoe e hoʻopili hou i ka palapala ma hope, hiki iā ʻoe ke hana:
vagrant reload --provision
Ke hana nei me nā mīkini he nui
ʻAe ʻo Vagrant iā ʻoe e hoʻokele i ʻoi aku ma mua o hoʻokahi mīkini mai kahi faila hoʻokahi. Pono kēia no nā labs a i ʻole nā hui kikowaena. Hiki i kahi hoʻonohonoho maʻamau no kahi lab ke komo i kekahi mau wehewehe:
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
ʻAe kēia i nā mīkini e ʻike i kekahi i kekahi ma nā inoa e like me node1.local o haku.local mahalo i ka hoʻohana ʻana o mDNS.
Nā ʻōlelo aʻoaʻo hana a me ka hoʻohālikelike
Maikaʻi ka hana Vagrant ma Hyper-V, akā pili ia i:
- Ka mana o kāu hui hoʻokipa (RAM, CPU, ʻano diski).
- ʻO ke kiʻi kumu i hoʻohana ʻia (ʻoi aku ka maikaʻi o ka hoʻohana ʻana i nā pahu optimized).
- Ka helu o nā mīkini e holo ana i ka manawa like.
- ʻO ka hoʻohana ʻana i ka disk ʻokoʻa a me ka hoʻolako kikoʻī.
ʻO kahi hana maʻamau no ka kākau ʻana i nā kaiapuni he nui ka hana ʻana a pahu pilikino e komo pū ana kāu mau waeʻano a pau: nā mea hana, nā lawelawe, nā alahele, a pēlā aku.
ʻO ka hoʻohana ʻana iā Vagrant ma Hyper-V ma Windows hiki ke ola, ʻoiai me kekahi mau palena i hiki ke hoʻoponopono ʻia me nā hoʻololi liʻiliʻi. Hāʻawi ʻo Hyper-V i ka paʻa a me ka hoʻohālikelike ʻana me nā ʻenehana Microsoft hou, ʻoiai ʻo Vagrant e hoʻomaʻamaʻa i ka automation a me ka portability o ke kaiapuni hoʻomohala.
He loea ka Lunahooponopono i ka ʻenehana a me nā pilikia pūnaewele me ka ʻoi aku o ka ʻumi makahiki o ka ʻike ma nā pāpaho kikohoʻe like ʻole. Ua hana au ma ke ʻano he mea hoʻoponopono a me ka mea hana maʻiʻo no ka e-commerce, kamaʻilio, ke kūʻai aku pūnaewele a me nā hui hoʻolaha. Ua kākau pū wau ma nā pūnaewele ʻoihana waiwai, kālā a me nā ʻāpana ʻē aʻe. ʻO kaʻu hana hoʻi koʻu makemake. I kēia manawa, ma o kaʻu mau ʻatikala ma Tecnobits, Ke ho'āʻo nei au e ʻimi i nā nūhou a me nā manawa hou a ka honua o ka ʻenehana i hāʻawi mai iā mākou i kēlā me kēia lā e hoʻomaikaʻi i ko mākou ola.



