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.
- Pridobite seznam VM-jev na gostitelju Hyper-V:
Get-VM | Izberite ime
- Zaženite interaktivno sejo PowerShell:
Vnesite-PSSession -VMName "win10 Compact PSDirect" -Vrednost (Get-poverilnica)
- Č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.