PowerShell Direct を使用して Windows 仮想マシンを管理するManage Windows virtual machines with PowerShell Direct

適用対象: Windows 10、Windows Server 2016、Windows Server 2019Applies To: Windows 10, Windows Server 2016, Windows Server 2019

PowerShell Direct を使用すると、windows 10、windows Server 2016、または Windows Server 2019 Hyper-v ホストから、windows 10、Windows Server 2016、または Windows Server 2019 の仮想マシンをリモートで管理できます。You can use PowerShell Direct to remotely manage a Windows 10, Windows Server 2016, or Windows Server 2019 virtual machine from a Windows 10, Windows Server 2016, or Windows Server 2019 Hyper-V host. PowerShell Direct を使用すると、Hyper-v ホストまたは仮想マシンのいずれかのネットワーク構成またはリモート管理設定に関係なく、仮想マシン内で Windows PowerShell を管理できます。PowerShell Direct allows Windows PowerShell management inside a virtual machine regardless of the network configuration or remote management settings on either the Hyper-V host or the virtual machine. これにより、HYPER-V の管理者を自動化し、仮想マシン管理と構成スクリプトを作成しやすくなります。This makes it easier for Hyper-V Administrators to automate and script virtual machine management and configuration.

PowerShell ダイレクトを実行するには、次の 2 つの方法があります。There are two ways to run PowerShell Direct:

  • 作成し、PSSession コマンドレットを使用して、直接の PowerShell セッションを終了します。Create and exit a PowerShell Direct session using PSSession cmdlets

  • Invoke-command コマンドレットにスクリプトまたはコマンドを実行します。Run script or command with the Invoke-Command cmdlet

以前の仮想マシンを管理している場合は、仮想マシン接続 (VMConnect) を使用するか、仮想マシン用の仮想ネットワークを構成しますIf you're managing older virtual machines, use Virtual Machine Connection (VMConnect) or configure a virtual network for the virtual machine.

作成し、PSSession コマンドレットを使用して、直接の PowerShell セッションを終了します。Create and exit a PowerShell Direct session using PSSession cmdlets

  1. Hyper-V ホストで、管理者として Windows PowerShell を開きます。On the Hyper-V host, open Windows PowerShell as Administrator.

  2. 仮想マシンに接続するには、 PSSession コマンドレットを使用します。Use the Enter-PSSession cmdlet to connect to the virtual machine. 次のコマンドのいずれかを実行して、仮想マシン名または GUID を使用してセッションを作成します。Run one of the following commands to create a session by using the virtual machine name or GUID:

    Enter-PSSession -VMName <VMName>
    
    Enter-PSSession -VMGUID <VMGUID>
    
  3. 仮想マシンの資格情報を入力します。Type your credentials for the virtual machine.

  4. 必要がある任意のコマンドを実行します。Run whatever commands you need to. これらのコマンドは、使用してセッションを作成した仮想マシンで実行します。These commands run on the virtual machine that you created the session with.

  5. 完了したら、 出口 を使用してセッションを終了します。When you're done, use the Exit-PSSession to close the session.

    Exit-PSSession
    

Invoke-command コマンドレットにスクリプトまたはコマンドを実行します。Run script or command with Invoke-Command cmdlet

Invoke-Command コマンドレットを使用して、あらかじめ設定された一連のコマンドを仮想マシン上で実行できます。You can use the Invoke-Command cmdlet to run a pre-determined set of commands on the virtual machine. 仮想マシン名が PSTest であり、実行するスクリプト (foo.ps1) が C:/ ドライブ上のスクリプト フォルダー内にある場合に、Invoke-Command コマンドレットを使用する方法の例を以下に示します。Here is an example of how you can use the Invoke-Command cmdlet where PSTest is the virtual machine name and the script to run (foo.ps1) is in the script folder on the C:/ drive:

Invoke-Command -VMName PSTest  -FilePath C:\script\foo.ps1

単一のコマンドを実行するには、-ScriptBlock パラメーターを使用します。To run a single command, use the -ScriptBlock parameter:

Invoke-Command -VMName PSTest  -ScriptBlock { cmdlet }

PowerShell を使用して何が必要なでしょうか。What's required to use PowerShell Direct?

仮想マシンで PowerShell ダイレクト セッションを作成するにはTo create a PowerShell Direct session on a virtual machine,

  • 仮想マシンでは、ホスト上でローカルに実行する必要があり、起動します。The virtual machine must be running locally on the host and booted.

  • HYPER-V の管理者として、ホスト コンピューターには、ログインする必要があります。You must be logged into the host computer as a Hyper-V administrator.

  • 仮想マシンの有効なユーザー資格情報を指定する必要があります。You must supply valid user credentials for the virtual machine.

  • ホストオペレーティングシステムは、少なくとも Windows 10 または Windows Server 2016 を実行している必要があります。The host operating system must run at least Windows 10 or Windows Server 2016.

  • 仮想マシンは Windows 10 または Windows Server 2016 以降を実行している必要があります。The virtual machine must run at least Windows 10 or Windows Server 2016.

GET VMコマンドレットを使用して、使用している資格情報が hyper-v の管理者ロールを持っていることを確認し、ホスト上でローカルに実行されている仮想マシンの一覧を取得して、起動します。You can use the Get-VM cmdlet to check that the credentials you're using have the Hyper-V administrator role and to get a list of the virtual machines running locally on the host and booted.

関連項目See Also

-PSSession 」と入力します。終了-PSSession Invoke コマンドEnter-PSSession Exit-PSSession Invoke-Command