PowerShell Direct a Hyper-V 2016-ban

PowerShell Direct -ez a Windows Server 2016 és a Windows 10 új PowerShell funkcionalitása, amely lehetővé teszi egy közvetlen helyi PowerShell munkamenet létrehozását a Hyper-V gazdagépen futó virtuális gépekkel, és a kapcsolat nem a hálózaton, hanem a belső busz VM buszon keresztül történik. Így egy Hyper-V rendszergazda a virtuális gépeket a PowerShell használatával is kezelheti, még egy izolált rendszeren is, virtuális hálózati adapterek nélkül.

Alapvető követelmények a Powershell Direct használatához:

  • Mivel a gazda OS Hyper-V használható a Windows Server 2016 vagy a Windows 10 rendszerre
  • A vendég virtuális gépnek ugyanazon a Hyper-V gazdagépen kell futnia, ahonnan a kapcsolat létrejött (azaz helyi kapcsolat).
  • A virtuális gép vendég operációs rendszerének Windows Server 2016 / Windows 10 rendszerűnek is kell lennie
  • Hyper-V gazdagépen a Powershell konzolnak rendszergazdaként kell futnia
  • A vendég operációs rendszerhez való csatlakozáshoz a virtuális gépnek meg kell adnia a virtuális gép fiókjának felhasználónevét és jelszavát

Korábban az adminisztrátor csak a Hyper-V virtuális gépein parancsokat hajthatott végre egy hálózaton keresztül a hálózaton keresztül  Invoke-parancs vagy belép-PSSession. A távoli virtuális géphez való csatlakozás paramétereként adja meg annak hálózati nevét (-ComputerName).

Például kaphat egy listát a távoli szerveren futó folyamatokról:
Invoke-Command-ComputerName WS16-Core -ScriptBlock Get-Process

Vagy hozzon létre egy új interaktív PS munkamenetet egy távoli szerverrel:
Enter-PSSession -ComputerName WS16-Core

Ilyen esetben a PS munkamenetet nem lehet létrehozni olyan virtuális géppel, amely le van választva az izolált vagy tűzfallal védett rendszerben található virtuális kapcsolóról. Minden vezérlés csak a Hyper-V grafikus konzolon keresztül történik.

Ilyen vendég virtuális géphez a Powershell Direct használatával való csatlakozáshoz nem a vendég operációs rendszer hálózati nevét kell használni, hanem a virtuális gép nevét vagy GUID-jét a Hyper-V-ben. Ha a Powershell Direct-en keresztül csatlakozik, akkor az Enter-PSSession segítségével interaktív Powershell-munkamenetet is létrehozhat, vagy az Invoke-Command parancsot egyetlen parancs vagy szkript futtatásához..

  1. Töltse le a virtuális gépek listáját a Hyper-V gazdagépen: Get-VM | Válassza ki a nevet
  2. Futtassa az interaktív PowerShell-munkamenetet: Enter-PSSession -VMName "win10 Compact PSDirect" -Hitelesítő adatok (Get-Credential)
  3. A munkamenet befejezéséhez tegye a következőket: Exit-PSSession

Egyetlen parancs vagy szkript futtatásához használja az Invoke-Command parancsot:

Invoke-Command -VMId -FilePath C: \ script \ some_script.ps1

Például, ha egy fájlt másolnia kell egy izolált virtuális gépen a Powershell Direct segítségével, akkor használja ezt a szkriptet.

Hozzon létre egy új PSSession1 munkamenetet:

$ PSSession1 = Új-PSSession -VMId -Credential (Get-Credential)

Másolja a fájlt a virtuális gépre:

Cikk másolása -ToSession $ PSSession1 -C út: \ win10.iso -Nem cél D: \ ISO \

Másolja a fájlt a virtuális gépből:

Cikk másolása -FromSession $ PSSession1 -C út: \ eredmény_ data.txt-C cél: \ vm_data \

Mint láthatja, a Powershell Direct használata meglehetősen egyszerű és kényelmes. A Windows Server 2016 legtöbb újításához hasonlóan a Powershell Direct célja elsősorban a rendszer funkcionalitásának javítása a virtuális gép szolgáltatást nyújtó szolgáltató / felhő szolgáltatók szempontjából..