PowerShell Direct v Hyper-V 2016

PowerShell Direct -to je nova funkcija PowerShell v sistemih Windows Server 2016 in Windows 10, ki vam omogoča, da ustvarite neposredno lokalno sejo PowerShell s katerim koli virtualnim strojem, ki deluje na gostitelju Hyper-V, povezava pa ne prek omrežja, temveč prek notranjega vodila VM. Tako lahko skrbnik Hyper-V z upravljanjem PowerShell-a upravlja z VM-ji tudi v izoliranem sistemu brez navideznih omrežnih adapterjev.

Osnovne zahteve za uporabo Powershell Direct:

  • Kot gostiteljski OS Hyper-V lahko uporabljate Windows Server 2016 ali Windows 10
  • Gosti VM mora delovati na istem gostitelju Hyper-V, iz katerega je vzpostavljena povezava (tj. Lokalna povezava)
  • Gostujoča OS virtualnega stroja mora biti tudi Windows Server 2016 / Windows 10
  • Na gostitelju Hyper-V mora konzola Powershell delovati kot skrbnik
  • Za povezavo z gostujočo OS bo moral virtualni stroj določiti uporabniško ime in geslo računa tega VM-ja

Pred tem je lahko skrbnik izvajal ukaze na virtualnem stroju v Hyper-V prek omrežja z uporabo  Pokliči-Ukaz ali Vnesite-Pssession. Kot parameter za povezavo z oddaljenim VM-om navedite njegovo omrežno ime (-ComputerName).

Na primer, lahko dobite seznam izvajanih procesov na oddaljenem strežniku, kot je ta:
Pokliči-ukaz -ComputerName WS16-Core -ScriptBlock Get-Process

Ali ustvarite novo interaktivno sejo PS z oddaljenim strežnikom:
Vnesite-PSSession -ComputerName WS16-Core

V takšnem scenariju seje PS ni bilo mogoče vzpostaviti z izklopljenim VM-om iz virtualnega stikala, nameščenim v izoliranem sistemu ali zaščitenem zidu. Vsa kontrola se izvaja samo prek grafične konzole Hyper-V.

Če se želite povezati s takim gostujočim VM s pomočjo Powershell Direct, se ne uporablja omrežno ime gostujoče OS, temveč ime ali GUID VM v Hyper-V. Ko se povežete prek Powershell Direct, lahko uporabite tudi Enter-PSSession za ustvarjanje interaktivne seje Powershell ali Pokliči-ukaz, da zaženete en ukaz ali skript.

  1. Pridobite seznam VM-jev na gostitelju Hyper-V: Get-VM | Izberite ime
  2. Zaženite interaktivno sejo PowerShell: Vnesite-PSSession -VMName "win10 Compact PSDirect" -Vrednost (Get-poverilnica)
  3. Če želite končati sejo, naredite: Izhod-PSSession

Če želite zagnati en ukaz ali skript, uporabite Invoke-Command:

Pokliči-ukaz -VMId -FilePath C: \ script \ some_script.ps1

Če želite na primer kopirati določeno datoteko v izolirano VM prek Powershell Direct, uporabite ta skript.

Ustvari novo sejo PSSession1:

$ PSSession1 = New-PSSession -VMId -Credential (Get-poverilnica)

Kopirajte datoteko v virtualni stroj:

Kopiraj-element -ToSession $ PSSession1-Pot C: \ win10.iso -odločitev D: \ ISO \

Kopirajte datoteko iz VM-ja:

Kopiraj-element-od seje $ PSSession1-pot C: \ rezultat_ data.txt -odločitev C: \ vm_data \

Kot vidite, je uporaba Powershell Direct precej preprosta in priročna. Kot večina drugih novosti v sistemu Windows Server 2016 je tudi Powershell Direct namenjen izboljšanju funkcionalnosti sistema z vidika ponudnikov storitev / oblakov, ki zagotavljajo storitev virtualnih strojev.