ຄູ່ມືຄົບຖ້ວນສົມບູນໃນການຕິດຕັ້ງແລະນໍາໃຊ້ Vagrant ໃນ Hyper-V ໃນ Windows 11

ອັບເດດຫຼ້າສຸດ: 08/04/2025

  • Vagrant ຮອງຮັບ Hyper-V ຈາກ Windows 8.1 ຫຼືສູງກວ່າ ແລະ ອຳນວຍຄວາມສະດວກໃນສະພາບແວດລ້ອມທີ່ສາມາດແຜ່ພັນໄດ້
  • ການຕິດຕັ້ງ ແລະກຳນົດຄ່າ Vagrant ໃນ Hyper-V ຮຽກຮ້ອງໃຫ້ມີການຕັ້ງຄ່າເຄືອຂ່າຍ ແລະການຈັດຫາສະເພາະ.
  • Hyper-V ບໍ່ອະນຸຍາດໃຫ້ມີຄຸນສົມບັດບາງຢ່າງເຊັ່ນ: IPs static ໄດ້ຢ່າງງ່າຍດາຍ, ແຕ່ມີວິທີແກ້ໄຂເພີ່ມເຕີມ
  • ຂໍແນະນຳໃຫ້ໃຊ້ຮູບພາບ 'box' ທີ່ເຂົ້າກັນໄດ້ກັບ Hyper-V ເພື່ອຫຼີກເວັ້ນຄວາມຜິດພາດໃນການບູດ.
ຕິດຕັ້ງ Vagrant ໃນ Hyper-V-1

 

ການປ້ອນຂໍ້ມູນ, ຕັ້ງຄ່າສະພາບແວດລ້ອມສະເໝືອນຢ່າງໄວ ແລະເປັນລະບຽບໃນ Windows ມັນເບິ່ງຄືວ່າເປັນພາລະກິດທີ່ສັບສົນ. ໂຊກດີ, ພວກເຮົາມີເຄື່ອງມືເຊັ່ນ Vagrant ໃນ Hyper-V ເພື່ອເຮັດໃຫ້ມັນເປັນໄປໄດ້. ແລະເຖິງແມ່ນວ່າການນໍາໃຊ້ຂອງມັນມີຄວາມກ່ຽວຂ້ອງກັບ VirtualBox ຫຼາຍ, ມັນຍັງເຫມາະສົມກັບເຕັກໂນໂລຢີ virtualization ນີ້ທີ່ປະສົມປະສານເຂົ້າໄປໃນ Windows ຫຼາຍໆລຸ້ນ.

ເຖິງວ່າຈະມີນັ້ນ, ການຕິດຕັ້ງແລະການຕັ້ງຄ່າ ວີຊາ ໃນ Hyper-V ມັນບໍ່ແມ່ນເລື່ອງງ່າຍເທົ່າທີ່ມັນເບິ່ງຄືວ່າ. ມີ ຂັ້ນ​ຕອນ​ທີ່​ສໍາ​ຄັນ​ ແລະຄວາມໂດດເດັ່ນຂອງຜູ້ໃຫ້ບໍລິການ virtualization Microsoft ທີ່ທ່ານຄວນຮູ້. ໃນບົດຄວາມນີ້, ພວກເຮົາຈະໃຫ້ທຸກສິ່ງທີ່ທ່ານຕ້ອງການເພື່ອເປີດສະພາບແວດລ້ອມ virtual ຕາມສູດນີ້ໂດຍບໍ່ມີບັນຫາໃດໆ.

Vagrant ແມ່ນຫຍັງ ແລະເປັນຫຍັງຕ້ອງໃຊ້ Hyper-V?

ວີຊາ ມັນແມ່ນຫນຶ່ງ ເຄື່ອງມືເປີດແຫຼ່ງ ເຊິ່ງອະນຸຍາດໃຫ້ ສ້າງສະພາບແວດລ້ອມ virtual ທີ່ສາມາດແຜ່ພັນໄດ້ແລະເຄື່ອນທີ່ຜ່ານໄຟລ໌ການຕັ້ງຄ່າງ່າຍດາຍ. ມັນຖືກອອກແບບມາສໍາລັບນັກພັດທະນາ, ຜູ້ບໍລິຫານລະບົບ, ຫຼືຜູ້ທີ່ຕ້ອງການສະພາບແວດລ້ອມທີ່ສອດຄ່ອງກັນໃນທົ່ວຄອມພິວເຕີ, ສະຫນັບສະຫນູນລະບົບປະຕິບັດງານຫຼາຍ.

ໃນທາງກົງກັນຂ້າມ, Hyper-V ແມ່ນ hypervisor ພື້ນເມືອງຂອງ Microsoft, ລວມຢູ່ໃນຮຸ່ນມືອາຊີບ, ວິສາຫະກິດ, ແລະການສຶກສາຂອງ Windows 8.1 ແລະຕໍ່ມາ. ມັນສະຫນອງປະສິດທິພາບສູງແລະຄວາມຫມັ້ນຄົງ, ໂດຍສະເພາະທີ່ເປັນປະໂຫຍດໃນເວລາທີ່ hypervisors ອື່ນໆເຊັ່ນ VirtualBox ຂັດແຍ້ງໃນສະພາບແວດລ້ອມ Windows ທີ່ທັນສະໄຫມ.

ຫນຶ່ງໃນເຫດຜົນທົ່ວໄປທີ່ສຸດສໍາລັບການເລືອກ Hyper-V ແທນທີ່ຈະ VirtualBox ແມ່ນວ່າບາງຜະລິດຕະພັນ, ເຊັ່ນ: DockerDesktop ຫຼື WSL2 (ລະບົບຍ່ອຍຂອງ Windows ສໍາລັບ Linux), ຮຽກຮ້ອງໃຫ້ Hyper-V ເປີດໃຊ້. ນີ້ສ້າງຄວາມບໍ່ເຂົ້າກັນໄດ້ກັບ VirtualBox, ເຮັດໃຫ້ Hyper-V ເປັນການແກ້ໄຂທີ່ຖືກຕ້ອງເທົ່ານັ້ນຖ້າພວກເຮົາບໍ່ຕ້ອງການທີ່ຈະເປີດໃຊ້ແລະປິດການບໍລິການ.

ເນື້ອຫາສະເພາະ - ຄລິກທີ່ນີ້  ວິ​ທີ​ການ​ນໍາ​ໃຊ້ IDM+​: ດົນ​ຕີ​ໄວ​ຂຶ້ນ​, ວິ​ດີ​ໂອ​, Torrent Downloader app​?

ຂໍ້ໄດ້ປຽບຂອງການນໍາໃຊ້ Vagrant ກັບ Hyper-V

ການຕິດຕັ້ງ Vagrant ແລະເປີດໃຊ້ Hyper-V

ກ່ອນທີ່ທ່ານຈະເລີ່ມໃຊ້ Vagrant ໃນ Hyper-V, ໃຫ້ແນ່ໃຈວ່າຄອມພິວເຕີຂອງທ່ານເປີດໃຊ້ Hyper-V. ຈົ່ງລະມັດລະວັງ, ເພາະວ່າມັນບໍ່ໄດ້ຖືກເປີດໃຊ້ໂດຍປົກກະຕິ. ທ່ານ​ສາ​ມາດ​ເຮັດ​ໄດ້​ດ້ວຍ​ຕົນ​ເອງ​ຈາກ​ພາກ "ເປີດ​ຄຸນ​ສົມ​ບັດ Windows​" ຫຼື​ດ້ວຍ​ຄໍາ​ສັ່ງ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​ໃນ PowerShell (ເປັນ​ຜູ້​ບໍ​ລິ​ຫານ​)​:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All

ຫຼັງຈາກປະຕິບັດຄໍາສັ່ງນີ້, ຕ້ອງປິດເປີດຄອມພິວເຕີຄືນໃໝ່ ສຳ ລັບການປ່ຽນແປງທີ່ຈະມີຜົນ.

ໃນຂະຫນານ, ທ່ານຕ້ອງ ດາວໂຫລດແລະຕິດຕັ້ງ Vagrant ຈາກເວັບໄຊທ໌ທາງການ. ຕົວຕິດຕັ້ງປະກອບມີທຸກສິ່ງທຸກຢ່າງທີ່ທ່ານຕ້ອງການເພື່ອສາມາດນໍາໃຊ້ຄໍາສັ່ງ vagrant ໂດຍກົງຈາກຈຸດໃດນຶ່ງ.

ເມື່ອຕິດຕັ້ງແລ້ວ, ທ່ານສາມາດກວດສອບວ່າທຸກຢ່າງແມ່ນຖືກຕ້ອງໂດຍການດໍາເນີນການຕໍ່ໄປນີ້ໃນ terminal:

vagrant --version

ຄໍາສັ່ງນີ້ຄວນສົ່ງຄືນເວີຊັນທີ່ຕິດຕັ້ງ, ສໍາລັບການຍົກຕົວຢ່າງ ວີຊາ 2.4.0.

ຂັ້ນຕອນທີ 1: ກະກຽມສະພາບແວດລ້ອມພື້ນຖານ

Vagrant ແມ່ນອີງໃສ່ "ກ່ອງ", ເຊິ່ງເປັນຮູບພາບພື້ນຖານຂອງລະບົບປະຕິບັດການທີ່ຕິດຕັ້ງໄວ້ກ່ອນ. ສິ່ງເຫຼົ່ານີ້ຖືກດາວໂຫຼດໂດຍອັດຕະໂນມັດຈາກດັດຊະນີສາທາລະນະທີ່ເອີ້ນວ່າ Vagrant Cloud. ເພື່ອເລີ່ມຕົ້ນ, ທ່ານຈໍາເປັນຕ້ອງສ້າງໂຟນເດີທີ່ທ່ານຈະເຮັດວຽກໃນໂຄງການຂອງທ່ານ. ຕົວຢ່າງ:

mkdir mi_proyecto_vagrant
cd mi_proyecto_vagrant
vagrant init generic/alpine36

ຄຳ ສັ່ງນີ້ ຈະສ້າງໄຟລ໌ທີ່ເອີ້ນວ່າ Vagrantfile ເຊິ່ງເປັນບ່ອນທີ່ການຕັ້ງຄ່າເຄື່ອງ virtual ທັງໝົດຢູ່. ພາຍໃນມັນ, ທ່ານຈະຕ້ອງປັບຕົວກໍານົດການທີ່ສໍາຄັນຈໍານວນຫນຶ່ງເພື່ອໃຊ້ Hyper-V.

Vagrant ໃນ Hyper-V

ການຕັ້ງຄ່າຜູ້ໃຫ້ບໍລິການ Hyper-V

ໂດຍຄ່າເລີ່ມຕົ້ນ, Vagrant ຈະພະຍາຍາມໃຊ້ VirtualBox ເປັນຜູ້ໃຫ້ບໍລິການ. ເພື່ອໃຊ້ Hyper-V, ທ່ານສາມາດກໍານົດແຕ່ລະຄັ້ງໂດຍການແລ່ນ:

vagrant up --provider=hyperv

ຫຼື, ຕັ້ງ Hyper-V ເປັນຜູ້ໃຫ້ບໍລິການເລີ່ມຕົ້ນໂດຍການຕັ້ງຄ່າຕົວແປສະພາບແວດລ້ອມ:

$env:VAGRANT_DEFAULT_PROVIDER="hyperv"

ຂັ້ນຕອນນີ້ສາມາດເຮັດໄດ້ຈາກ PowerShell ຫຼືໂດຍກົງໃນຕົວແປສະພາບແວດລ້ອມລະບົບຂອງທ່ານ.

ເນື້ອຫາສະເພາະ - ຄລິກທີ່ນີ້  ວິທີການປັບແຕ່ງການຕັ້ງຄ່າຄວາມເປັນສ່ວນຕົວໃນແອັບ OkCupid?

ພາຍໃນ Vagrantfile, ແນະນໍາໃຫ້ລະບຸຜູ້ໃຫ້ບໍລິການດ້ວຍການຕັ້ງຄ່າສະເພາະ. ຕົວຢ່າງພື້ນຖານຈະເປັນ:

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., ດັ່ງນັ້ນພວກເຂົາຕ້ອງຖືກຕັ້ງຄ່າໂດຍໃຊ້ສະຄິບຫຼືໂດຍການດັດແກ້ການຕັ້ງຄ່າລະບົບປະຕິບັດການຂອງແຂກ.

 

ໄຮເປີ v

ການເຂົ້າເຖິງເຄື່ອງຈັກ: SSH ແລະເຄື່ອງມືອື່ນໆ

ເຖິງແມ່ນວ່າມັນອາດຈະເບິ່ງຄືວ່າ SSH ບໍ່ສາມາດໃຊ້ໃນ Windows, Vagrant ປະກອບມີລູກຄ້າ SSH ທີ່ມີໃນຕົວ, ດັ່ງນັ້ນທ່ານສາມາດເຂົ້າເຖິງມັນໄດ້ໂດຍບໍ່ຈໍາເປັນຕ້ອງຕິດຕັ້ງໂຄງການເພີ່ມເຕີມ.

ເຂົ້າສູ່ລະບົບດ້ວຍ:

vagrant ssh

ທ່ານຍັງສາມາດໃຊ້ PuTTY, ແຕ່ໃນກໍລະນີນີ້, ທ່ານຈະຕ້ອງການ ປ່ຽນລະຫັດສ່ວນຕົວທີ່ສ້າງຂຶ້ນໂດຍ Vagrant ເປັນຮູບແບບ PPK (ກັບ PuTTYgen), ເນື່ອງຈາກວ່າມັນບໍ່ໄດ້ຮັບການສະຫນັບສະຫນູນໂດຍກົງ. ກຸນແຈຕັ້ງຢູ່ທີ່:

.vagrant/machines/default/hyperv/private_key

ນີ້ຈະຊ່ວຍໃຫ້ທ່ານສາມາດເຊື່ອມຕໍ່ດ້ວຍຕົນເອງຈາກລູກຄ້າ SSH ໃດໆທີ່ທ່ານຕ້ອງການ.

ການຈັດຫາດ້ວຍສະຄຣິບ

ຫນຶ່ງໃນຜົນປະໂຫຍດທີ່ໃຫຍ່ທີ່ສຸດຂອງ Vagrant ແມ່ນການສະຫນັບສະຫນູນຂອງມັນ ການສະຫນອງອັດຕະໂນມັດ, ຂໍຂອບໃຈກັບ scripts. ທ່ານສາມາດເປີດ Shell scripts ສໍາລັບການຕິດຕັ້ງຊໍ້າຄືນໄດ້:

config.vm.provision "shell", path: "bootstrap.sh"

ພາຍໃນເອກະສານ bootstrap.sh ທ່ານສາມາດປະກອບມີຄໍາແນະນໍາເຊັ່ນ:

apk update
apk add git

ນີ້ຈະດໍາເນີນການ ຄັ້ງທໍາອິດທີ່ VM ຖືກສ້າງຂື້ນ. ຖ້າທ່ານຕ້ອງການນຳໃຊ້ສະຄຣິບໃໝ່ໃນພາຍຫຼັງ, ທ່ານສາມາດເຮັດໄດ້:

vagrant reload --provision

ການຈັດຫາ VMs ດ້ວຍສະຄຣິບ

ເຮັດວຽກກັບຫຼາຍເຄື່ອງຈັກ

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

ນີ້ອະນຸຍາດໃຫ້ເຄື່ອງຈັກຮັບຮູ້ເຊິ່ງກັນແລະກັນໂດຍຊື່ເຊັ່ນ: node1.local o master.local ຂໍຂອບໃຈກັບການນໍາໃຊ້ mDNS.

ເນື້ອຫາສະເພາະ - ຄລິກທີ່ນີ້  ວິທີຢຸດ TikTok ຈາກການໃຊ້ຂໍ້ມູນມືຖືທັງໝົດຂອງເຈົ້າ

ຄໍາແນະນໍາດ້ານການປະຕິບັດແລະຄວາມເຂົ້າກັນໄດ້

ປະສິດທິພາບ Vagrant ໃນ Hyper-V ໂດຍທົ່ວໄປແມ່ນດີ, ແຕ່ມັນຂຶ້ນກັບ:

  • ພະລັງຂອງທີມເຈົ້າພາບຂອງເຈົ້າ (RAM, CPU, ປະເພດແຜ່ນ).
  • ຮູບພາບພື້ນຖານທີ່ໃຊ້ (ດີກວ່າທີ່ຈະໃຊ້ກ່ອງທີ່ດີທີ່ສຸດ).
  • ຈໍານວນຂອງເຄື່ອງຈັກທີ່ເຮັດວຽກໃນເວລາດຽວກັນ.
  • ການ​ນໍາ​ໃຊ້​ແຜ່ນ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​ແລະ​ການ​ສະ​ຫນອງ​ບາງ​.

ການປະຕິບັດທົ່ວໄປສໍາລັບການຂຽນ script ຫຼາຍສະພາບແວດລ້ອມແມ່ນການສ້າງ a ກ່ອງສ່ວນຕົວ ເຊິ່ງລວມເອົາທຸກໝວດໝູ່ຂອງທ່ານແລ້ວ: ເຄື່ອງມື, ການບໍລິການ, ເສັ້ນທາງ, ແລະອື່ນໆ. ອັນນີ້ຫຼີກລ່ຽງການຕິດຕັ້ງສິ່ງດຽວກັນໃນແຕ່ລະຕົວຢ່າງ.

ການນໍາໃຊ້ Vagrant ໃນ Hyper-V ໃນ Windows ແມ່ນເປັນໄປໄດ້ທັງຫມົດ, ເຖິງແມ່ນວ່າມີຂໍ້ຈໍາກັດບາງຢ່າງທີ່ສາມາດແກ້ໄຂໄດ້ດ້ວຍການປັບຂະຫນາດນ້ອຍ. Hyper-V ສະຫນອງຄວາມທົນທານແລະຄວາມເຂົ້າກັນໄດ້ກັບເຕັກໂນໂລຢີຂອງ Microsoft ທີ່ທັນສະໄຫມ, ໃນຂະນະທີ່ Vagrant ອໍານວຍຄວາມສະດວກໃນການເຮັດວຽກອັດຕະໂນມັດແລະການເຄື່ອນທີ່ຂອງສະພາບແວດລ້ອມການພັດທະນາ.