Pituduh lengkep pikeun masang sareng nganggo Vagrant dina Hyper-V dina Windows 11

Update terakhir: 08/04/2025

  • Vagrant ngadukung Hyper-V tina Windows 8.1 atanapi langkung luhur sareng ngagampangkeun lingkungan anu tiasa diulang
  • Masang sareng ngonpigurasikeun Vagrant dina Hyper-V ngabutuhkeun setélan jaringan sareng provisioning khusus.
  • Hyper-V teu ngidinan fitur nu tangtu kawas IP statik gampang, tapi aya solusi pelengkap
  • Disarankeun nganggo gambar 'kotak' anu cocog sareng Hyper-V pikeun nyegah kasalahan boot.
Pasang Vagrant dina Hyper-V-1

 

Ti mimiti, Nyetél lingkungan maya gancang sareng teratur dina Windows Sigana mah misi kompléks. Kabeneran, urang gaduh alat sapertos Vagrant dina Hyper-V sangkan bisa. Sareng sanaos panggunaanana langkung pakait sareng VirtualBox, éta ogé sapinuhna cocog sareng téknologi virtualisasi ieu anu parantos diintegrasikeun kana seueur vérsi Windows.

Sanajan kitu, masang jeung ngonpigurasikeun Seungit dina Hyper-V teu jadi gampang saperti sigana. Aya léngkah konci sareng peculiarities panyadia virtualisasi Microsoft anu anjeun kedah terang. Dina tulisan ieu, kami bakal nyayogikeun anjeun sadayana anu anjeun peryogikeun pikeun ngaluncurkeun lingkungan virtual nuturkeun rumus ieu tanpa aya masalah.

Naon Vagrant sareng kunaon nganggo Hyper-V?

Seungit mangrupakeun alat sumber kabuka sahingga ngawangun lingkungan maya anu tiasa diulang sareng dibabawa ku file konfigurasi saderhana. Éta dirancang pikeun pamekar, pangurus sistem, atanapi saha waé anu peryogi lingkungan anu konsisten dina komputer, kalayan dukungan pikeun sababaraha sistem operasi.

Samentara éta, Hyper-V mangrupikeun hypervisor asli Microsoft, kaasup dina versi Profesional, Perusahaan, sareng Pendidikan Windows 8.1 sareng engké. Éta nawiskeun kinerja sareng stabilitas anu luhur, khususna kapaké nalika hypervisors sanés sapertos konflik VirtualBox dina lingkungan Windows modern.

Salah sahiji alesan anu paling umum pikeun milih Hyper-V tinimbang VirtualBox éta sababaraha produk, kayaning Desktop Docker atanapi WSL2 (Windows Subsystem for Linux), merlukeun Hyper-V diaktipkeun. Ieu nyiptakeun incompatibilities sareng VirtualBox, ngajantenkeun Hyper-V hiji-hijina solusi anu sah upami urang henteu hoyong ngaktipkeun sareng nganonaktipkeun jasa.

Eusi ekslusif - Klik Ieuh  Kumaha Tebus Kodeu Google Play

Kaunggulan tina ngagunakeun Vagrant kalawan Hyper-V

Masang Vagrant sareng Aktipkeun Hyper-V

Sateuacan anjeun ngamimitian nganggo Vagrant dina Hyper-V, Pastikeun komputer anjeun gaduh Hyper-V diaktipkeun. Ati-ati, sabab biasana henteu diaktipkeun sacara standar. Anjeun tiasa ngalakukeun ieu sacara manual tina bagian "Aktipkeun fitur Windows" atanapi nganggo paréntah di handap ieu dina PowerShell (salaku administrator):

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

Saatos ngalaksanakeun paréntah ieu, a balikan deui komputer diperlukeun pikeun parobihan bakal ditimbulkeun.

Dina paralel, Anjeun kudu Unduh sareng pasang Vagrant tina situs wéb resmi. Pamasang kalebet sadayana anu anjeun peryogikeun pikeun tiasa nganggo paréntah vagrant langsung ti terminal mana wae.

Sakali dipasang, anjeun tiasa pariksa yén sadayana leres ku ngajalankeun ieu di terminal:

vagrant --version

Paréntah ieu kedah mulangkeun versi anu dipasang, contona Vagrant 2.4.0.

Lengkah 1: Nyiapkeun lingkungan dasar

Vagrant dumasar kana "kotak", anu mangrupikeun gambar dasar tina sistem operasi anu tos dipasang. Ieu otomatis diunduh tina indéks umum anu katelah Vagrant Cloud. Pikeun ngamimitian, anjeun kedah nyiptakeun polder dimana anjeun bakal ngerjakeun proyék anjeun. Salaku conto:

mkdir mi_proyecto_vagrant
cd mi_proyecto_vagrant
vagrant init generic/alpine36

Paréntah ieu bakal ngahasilkeun file anu disebut Vagrantfile dimana sakabeh konfigurasi mesin virtual resides. Di jerona anjeun kedah nyaluyukeun sababaraha parameter konci pikeun ngagunakeun Hyper-V.

Vagrant dina Hyper-V

Hyper-V Konfigurasi Provider

Sacara standar, Vagrant bakal nyobian nganggo VirtualBox salaku panyadia. Pikeun nganggo Hyper-V, anjeun tiasa netepkeun ieu unggal waktos ku ngajalankeun:

vagrant up --provider=hyperv

Atanapi, setel Hyper-V salaku panyadia standar ku netepkeun variabel lingkungan:

$env:VAGRANT_DEFAULT_PROVIDER="hyperv"

Léngkah ieu tiasa dilakukeun tina PowerShell atanapi langsung dina variabel lingkungan sistem anjeun.

Eusi ekslusif - Klik Ieuh  Kumaha anjeun masang apdet kana aplikasi Microsoft Office jauh?

Di jero Vagrantfile, Disarankeun pikeun nangtukeun panyadia sareng setélan khusus. Hiji conto dasar bakal kieu:

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

Parameter ieu ngidinan Anjeun pikeun nangtukeun RAM, jumlah inti, sareng nami mesin bakal aya dina Hyper-V.

Jaringan sareng konektipitas dina Hyper-V

Salah sahiji titik lemah Hyper-V di Vagrant nyaéta yén éta henteu otomatis ngonpigurasikeun jaringan. Ku sabab kitu, anjeun kedah sacara manual milih vSwitch kalayan konektipitas éksternal anu parantos didamel dina Hyper-V.

Pikeun ngahubungkeun jaringan pribadi atanapi milih vSwitch khusus, anjeun tiasa nganggo:

config.vm.network "private_network", bridge: "NombreDelvSwitch"

Punten Catet yén Hyper-V teu ngidinan Anjeun pikeun langsung ngonpigurasikeun IP statik ti Vagrant., ku kituna maranéhanana kudu diatur ngagunakeun Aksara atawa ku modifying setélan sistem operasi tamu.

 

hyper v

aksés mesin: SSH jeung parabot lianna

Sanaos sigana SSH teu tiasa dianggo dina Windows, Vagrant kalebet klien SSH anu diwangun, jadi Anjeun bisa ngakses eta tanpa kudu masang program tambahan.

Lebet sareng:

vagrant ssh

Anjeun oge bisa make PuTTY, tapi bisi nu peryogi Ngarobih konci pribadi anu dihasilkeun ku Vagrant kana format PPK (kalawan PuTTYgen), sabab teu langsung dirojong. Kuncina aya di:

.vagrant/machines/default/hyperv/private_key

Ieu bakal ngamungkinkeun anjeun nyambung sacara manual tina klien SSH anu anjeun pikahoyong.

Provisioning kalawan naskah

Salah sahiji kauntungan pangbadagna ti Vagrant nyaéta dukungan pikeun provisioning otomatis, hatur nuhun kana Aksara. Anjeun tiasa ngaluncurkeun skrip cangkang pikeun pamasangan anu tiasa diulang:

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

Di jero file bootstrap.sh Anjeun tiasa ngalebetkeun petunjuk sapertos:

apk update
apk add git

Ieu bakal ngajalankeun kahiji waktos VM dijieun. Upami anjeun badé nerapkeun deui naskah engké, anjeun tiasa ngalakukeun:

vagrant reload --provision

Provisioning VMs kalawan Aksara

Gawe sareng sababaraha mesin

Vagrant ngamungkinkeun anjeun pikeun ngatur langkung ti hiji mesin tina hiji file. Ieu mangpaat pikeun labs atanapi klaster server. Setélan khas pikeun lab tiasa kalebet sababaraha definisi:

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

Hal ieu ngamungkinkeun mesin ngakuan silih ku ngaran kayaning node1.lokal o master.lokal hatur nuhun kana pamakéan mDNS.

Eusi ekslusif - Klik Ieuh  Kumaha carana maén Ruzzle dina basa sanés

Performance sarta kasaluyuan Tips

Kinerja vagrant dina Hyper-V umumna saé, tapi gumantung kana:

  • Kakuatan tim host anjeun (RAM, CPU, tipe disk).
  • Gambar dasar anu dianggo (hadé ngagunakeun kotak dioptimalkeun).
  • Jumlah mesin ngajalankeun dina waktos anu sareng.
  • Pamakéan disk diferensial jeung provisioning ipis.

Prakték umum pikeun skrip sababaraha lingkungan nyaéta nyiptakeun a kotak pribadi nu geus ngawengku sakabéh kategori anjeun: parabot, jasa, ruteu, jsb Ieu avoids ngabogaan reinstall hal anu sarua dina unggal conto.

Ngagunakeun Vagrant on Hyper-V on Windows sagemblengna giat, sanajan kalawan sababaraha watesan nu bisa direngsekeun ku pangaluyuan leutik. Hyper-V nyayogikeun kateguhan sareng kasaluyuan sareng téknologi Microsoft modéren, sedengkeun Vagrant ngagampangkeun otomatisasi sareng portabilitas lingkungan pangwangunan.