Home > Windows にまつわる e.t.c.

Hyper-V Server 2012 R2のリモート管理設定


Hyper-V Server 2012 R2は、ローカルGUI管理画面を持っていませんが、リモートでGUI管理画面を使うことが出ます。

また、PowerShellもリモート管理をサポートしているので、大半の管理はリモートで済ませることが可能です。

 

ちょいと長くなったので、ブックマジャンプつけました

PowerShell

Hyper-Vマネージャー

コンピューターの管理

ファイアウォール

サーバーマネージャー

RSAT

 

PowerShell

Windows Server 2012 R2のPowerShellは、デフォルトでリモート管理を許可していますので、以下のように接続元でリモート接続設定をするだけでPowerShellのリモート操作ができるようになります。

PowerShellのリモート管理許可(管理元の設定)

winrm quickconfig -force
Set-Item WSMan:\localhost\Client\TrustedHosts * -Force

 

PowerShellのリモート操作は、コマンドレットの「-ComputerName」オプションと、対話操作の「Enter-PSSession」、コマンド投入の「Invoke-Command」の3種類があります。

「-ComputerName」オプションは、コマンドレットが操作対象のコンピューターを受け付けるので、ローカルと変わらない操作性で使うことができるのですが、「-ComputerName」オプションをサポートしていないコマンドレッドではリモート操作ができません。

 

これに対し、「Enter-PSSession」は対象コンピューター上で動作する対話式操作です。イメージとしては、PowerShellのリモートデスクトップですね。
ローカルとほぼ変わらない操作ができる上に、操作対象コンピュータ上での動作なので「-ComputerName」オプションをサポートしていないコマンドレットも使うことができます。

ドメイン環境であれば、管理権限を持ったアカウントでログインし、Enter-PSSessionで接続します。

ドメイン環境でのEnter-PSSession

PS C:\> Enter-PSSession hs003
[hs003]: PS C:\Users\Administrator.CONTOSO\Documents>

ワークグループ環境の場合は、「-Credential」オプションで使用するアカウントを明示的に指定します。

ワークグループ環境でのEnter-PSSession

PS C:\> Enter-PSSession hs004 -Credential hs004\administrator
[hs004]: PS C:\Users\Administrator\Documents>

操作が終わって切断するときは、「Exit-PSSession」で切断します。

Enter-PSSessionの終了

[hs004]: PS C:\Users\Administrator\Documents> Exit-PSSession
PS C:\>

 

「Invoke-Command」は、リモートコンピューターに対するコマンド投入です。「Enter-PSSession」は対話処理専用で、バッチ処理に不向きですが(コマンドコピペは可)、「Invoke-Command」はバッチ処理ができます。

イメージ的には、「Invoke-Command」はコマンドやバッチを投げて、終わるまで腕を組んで待つって感じです。

「Enter-PSSession」がお手軽に使えるのに対して、「Invoke-Command」はちょっととっつきにくい感じですが、とても奥が深く自動化には欠かせない存在です。

奥が深いので、とりあえず簡単な使い方だけ紹介します。(ドメイン環境で管理アカウントでログインしている場合は-Credential不要)

# Get-ChildItemコマンドをhs004へ投入
Invoke-Command -ComputerName hs004 -Credential administrator -ScriptBlock { Get-ChildItem c:\ }

# ローカルにあるtest.ps1をhs004へ投入
Invoke-Command -ComputerName hs004 -Credential administrator -FilePath c:\test\test.ps1

 

余談ですが、PowerShellのリモート操作では、UACが無効なので、管理権限を持ったアカウントでリモート操作をすると、管理権限で実行されるので、「管理者で実行」をする必要はありません。

 

Hyper-Vマネージャー

Hyper-Vマネージャーは、リモート操作に対応しているので、操作対象のコンピューターを追加します。

Hyper-Vマネージャーに操作対象のコンピューターを追加

 

ワークグループの場合は、実行ユーザーの資格情報を明示的に入力できないので、「cmdkey」コマンドで資格情報マネージャーに資格情報を登録します。
これは、MMC系の管理ツールでリモート管理する場合も同じです。

ワークグループでは資格情報を事前登録する。

CMDKEY /add:コンピューター名 /user:コンピューター名\ユーザーID /pass:パスワード

 

コンピューターの管理

統合管理ツールである「コンピューターの管理」もリモートコンピューターを管理することができます。

 

別のコンピューターへ接続

 

コンピューターの管理でリモートコンピューターを管理するには、管理される側のファイアウォールを開けます。
PowerShellのリモート管理が可能になっていれば、リモートで設定できますね。

管理対象のサーバーのファイアウォール設定

# リモート管理
Set-NetFirewallRule -DisplayGroup "Windows リモート管理" –Enabled True

# イベントビュアー
Set-NetFirewallRule -DisplayGroup "リモート イベントのログ管理" –Enabled True

# Windows ファイアウォール
Set-NetFirewallRule -DisplayGroup "Windows ファイアウォール リモート管理" –Enabled True

# ディスク
Set-NetFirewallRule -DisplayGroup "リモート ボリューム管理" –Enabled True

# リモートディスクサービスの起動
Set-Service vds -StartupType Automatic
Start-Service vds

ディスク管理は、管理する側のファイアウォールも開ける必要があります。

管理する側のファイアウォール設定

# ディスク
Set-NetFirewallRule -DisplayGroup "リモート ボリューム管理" –Enabled True

 

残念なことに、「デバイスマネージャー」はリモートに対応していないので、GUIでの確認はできません。

 

ファイアウォール

ファイアウォールのリモート管理は、「コンピューターの管理」から操作できないので、MMCのスナップイン追加でリモート接続を指定します。

 

サーバーマネージャー

Windows Server 2012 R2の標準サーバー管理コンソールである「サーバー マネージャーでもHyper-V Server 2012 R2の管理ができます。

サーバー マネージャーへHyper-V Server 2012 R2を追加

 

RSAT

Windows Server 2012 R2には、RSAT(リモート サーバー 管理ツール)の機能が備わっているので、機能の追加でリモート管理ができるようになります。

Windows 8.1用のRSATが提供されているので、これをインストールするとWindows 8.1からHyper-V Server 2012 R2をリモート管理できるようになります。

Windows 8.1 用のリモート サーバー管理ツール

 

RSATのインストール

スタートメニューに「サーバー マネージャー」が追加される

普通にサーバーマネージャーが使える

 

back.gif (1980 バイト)

home.gif (1907 バイト)

Copyright © MURA All rights reserved.