網管人雜誌
本文刊載於 網管人雜誌第 84 期 - 2013 年 1 月 1 日出刊,NetAdmin 網管人雜誌 為一本介紹 Trend Learning 趨勢觀念、Solution Learning 解決方案、Technology Learning 技術應用的雜誌,下列筆記為本站投稿網管人雜誌獲得刊登的文章,網管人雜誌於每月份 1 日出刊您可於各大書店中看到它或透過下列圖示連結至博客來網路書店訂閱它。文章目錄
1、前言2、實作環境
3、設定 Hyper-V Server 允許 Ping 回應
4、Hyper-V Server 啟動遠端桌面管理功能
5、Hyper-V Server 開啟遠端管理功能
6、Hyper-V Server 允許遠端伺服器管理工具設定
7、Windows 7 安裝 RSAT 遠端伺服器管理工具
8、Windows 7 設定 hosts 解析檔案
9、Windows 7 設定遠端管理項目
10、Windows 7 使用伺服器管理員進行遠端管理
11、結語
1、前言
在上一篇文章當中,雖然我們已經將 Hyper-V Server 的基礎設定部份完成,不過在其它進階設定部份仍然相當的麻煩,舉例來說 當我們想要調整 Hyper-V Server 的防火牆規則時,必須要先遠端連線到 Hyper-V Server 後切換到命令提示字元視窗,接著執行相關指令才得以調整防火牆規則。
又或者當我們為 Hyper-V Server 新增一顆硬碟時該如何執行格式化及建立分割區的動作? 如何管理 Hyper-V Server 系統服務? 如何查詢裝置管理員狀態? 如何使用效能計數器來監控 Hyper-V Server 運作效能? 如何查看系統事件?…等。
這便是本文所要接著介紹的部份,透過在 Windows 7 主機端安裝 RSAT遠端管理設定工具之後,以伺服器管理員遠端針對上述 防火牆規則、系統服務、裝置管理員、效能計數器...等功能,得以使用 GUI 圖形介面的方式進行管理,以及使用 Hyper-V 管理員遠端管理 Hyper-V Server 以建立 VM 虛擬主機以及後續的管理動作。
2、實作環境
- 虛擬化技術平台: Microsoft Hyper-V Server 2008 R2 SP1
- 管理主機作業系統: Windows 7 SP1 旗艦版
- 連線管理軟體: Windows 7 SP1 遠端伺服器管理工具 (RSAT)
- 遠端管理設定工具: Hyper-V Remote Management Configuration Utility (Version 0.7)
3、設定 Hyper-V Server 允許 Ping 回應
預設情況下 Hyper-V Server 安裝完成後便會自動啟動防火牆功能,預設防火牆的規則為「阻擋進入」的封包「允許出去」的封包 (BlockInbound, AllowOutbound),所以在預設的情況下您無法 ping 到 Hyper-V Server 主機,請於 Hyper-V Server 主機端切換至命令提示字元視窗,鍵入以下指令即可開啟 ICMP Type 8 以允許 Echo Request 封包通過防火牆: (關於新舊指令詳細資訊請參考 Microsoft KB-947709)舊指令 netsh firewall:
netsh firewall set icmpsetting 8 enable //允許 ping
netsh firewall set icmpsetting 8 disable //禁止 ping
新指令 netsh advfirewall:
netsh advfirewall firewall add rule name="ICMP Allow incoming IPv4 echo request" protocol=icmpv4:8,any dir=in action=allow //建立防火牆規則
netsh advfirewall firewall set rule name="ICMP Allow incoming IPv4 echo request" new enable=yes //允許 ping
netsh advfirewall firewall set rule name="ICMP Allow incoming IPv4 echo request" new enable=no //禁止 ping
在後續相關設定上如果您覺得可能是 Hyper-V Server 上的防火牆設定,而導致無法進行遠端管理或其它測試項目的話,您可以使用下列指令將 Hyper-V Server 的防火牆進行關閉或開啟的動作。
netsh advfirewall set allprofiles state on //開啟防火牆
netsh advfirewall set allprofiles state off //關閉防火牆
4、Hyper-V Server 啟動遠端桌面管理功能
開啟 Hyper-V Server 的遠端桌面功能,以便後續進行遠端維護作業例如 下指令開啟防火牆允許某個網路協定以及 Port 號能通過、安裝容錯移轉叢集功能...等:- 請切換到 Server Configuration Tool 視窗後鍵入數字 【7】,選擇「遠端桌面」項目。
- 接著依序鍵入相關資訊 「E > 1」 ,其中 E 表示啟用遠端桌面功能,而數字 1 則表示採用較安全的方式來連結遠端桌面服務 (使用網路層級驗證),啟用之後 Hyper-V Server 將會開啟 TCP 協定 Port 3389 (svchost.exe - Windows Services 的主機處理程序),關於遠端連線功能中較安全以及較不安全的遠端桌面用戶端詳細資訊,本文就不在贅述有興趣的讀者請參考 Technet 技術文件庫 – 設定遠端桌面服務連線的網路層級驗證。
圖1、啟用遠端桌面功能並僅允許較安全的遠端桌面用戶端
5、Hyper-V Server 開啟遠端管理功能
此動作中將會開啟 Hyper-V Server 三項遠端管理功能,分別是 MMC、PowerShell、伺服器管理員部份,如果您屆時僅會使用 Hyper-V 管理員來遠端管理 Hyper-V Server 的話,則伺服管理員遠端管理功能可以不必啟用。遠端管理功能的啟用是為了方便我們稍後在 Windows 7 主機端能夠透過 RSAT 遠端伺服器管理工具,進行遠端管理 Hyper-V Server 的動作:
- 請切換到 Server Configuration Tool 視窗後鍵入數字 【4】, 選擇「設定遠端管理」項目。
- 鍵入數字 【1】 啟用 MMC 遠端管理功能,此功能的啟用會使 Hyper-V Server 開啟 TCP 協定 Port 49157 (svchost.exe - Windows Services 的主機處理程序)。
- 鍵入數字 【2】 啟用 Windows PowerShell 遠端管理功能,當此功能啟用完畢之後會彈出提示視窗,要求您重新啟動主機請按下【是】鍵。
- 當 Hyper-V Server 主機重新啟動完畢之後,請依序鍵入【4 > 3】 啟用允許伺服管理員遠端管理功能,此功能的啟用會使 Hyper-V Server 開啟 TCP 協定 Port 5985 (System - NT Kernel & System)。
- 最後請鍵入 【5】 返回 Server Configuration tool 主功能表。
圖2、啟用 Hyper-V Server 的 MMC 遠端管理功能
圖3、啟用 Windows PowerShell 遠端管理功能
圖4、啟用伺服器管理員遠端管理功能
6、Hyper-V Server 允許遠端伺服器管理工具設定
請於 Windows 7 主機下載由 John Howard 所撰寫,針對 Hyper-V Server 的遠端管理簡易設定工具 Hyper-V Remote Management Configuration Utility,接著請於 Windows 7 主機中建立與剛才 Hyper-V Server 相同的管理帳號及密碼後進行登入的動作,登入後您應該可以於 Windows 7 使用 「預設共用 C$」 方式連接至 Hyper-V Server,請開啟 Windows 檔案總管輸入「\\10.10.75.168\c$」連接至 Hyper-V Server,如果 Windows 7 主機的登入使用者帳號與 Hyper-V Server 上不同則會跳出帳號密碼驗證視窗。
圖5、Windows 7 主機登入帳號與 Hyper-V Server 管理帳號不同時需要驗證
順利登入 Hyper-V Server 之後將剛才下載的遠端管理簡易設定工具 HVRemote.wsf,透過預設共用 C$ 存放至 Hyper-V Server 主機中 (本實作為存放至 C:\tools 資料夾內),接著回到 Hyper-V Server 端切換到命令提示字元視窗依序執行如下指令,以便於稍後進行遠端管理:
- 切換至剛才存放 HVRemote.wsf 設定工具的資料夾下 (C:\tools),接著鍵入 【cscript hvremote.wsf /add:weithenn】 指令,透過此工具可以一次幫我們將需要授權使用者帳號遠端存取相關權限的事宜一次處理完畢 (如圖 6 所示)。
- 請鍵入 【REG ADD HKLM\Software\Policies\Microsoft\Windows\DeviceInstall\Settings /v AllowRemoteRPC /t reg_dword /d 1】 指令新增機碼值,否則屆時 Windows 7 主機在執行伺服器管理員進行遠端存取「裝置管理員」時將會發生錯誤訊息。
- 請鍵入 【netsh advfirewall firewall set rule group="遠端磁碟區管理" new enable=yes】 指令,以允許屆時 Windows 7 主機能夠透過伺服器管理進行存取「磁碟管理」 (如圖 7 所示)。
- 如果您在 Windows 7 主機上,並沒有建立與管理 Hyper-V Server 相同的使用者帳號進行遠端管理時,請鍵入【netsh advfirewall firewall set rule group="Windows 防火牆遠端管理" new enable=yes】,以允許屆時 Windows 7 主機能夠透過伺服器管理存取「進階安全性的 Windows 防火牆」部份。
圖6、透過 HVRemote.wsf 設定工具簡單設定所需的使用者帳號遠端存取權限
圖7、新增機碼值以及開啟磁碟管理防火牆規則
上述設定完成無誤後請將 Hyper-V Server 主機重新啟動,您可以在 Server Configuration Tool 視窗依序選擇「13 > 是」將主機重新啟動,或者在命令提示字元下鍵入【shutdown /r】指令將主機重新啟動,以便相關設定能夠套用生效。
至此 Hyper-V Server 允許遠端管理的設定部份已經完成,接著切換到屆時執行遠端管理工具的 Windows 7 主機端進行設定。
7、Windows 7 安裝 RSAT 遠端伺服器管理工具
請下載 Windows 7 SP1 RSAT 遠端伺服器管理工具,將 RSAT 工具安裝完成後在預設情況下並不會自動出現於系統管理工具當中,您必須要至 【開始 > 控制台 > 程式集 > 開啟或關閉 Windows 功能】才能進行遠端伺服器管理功能的安裝及啟用,請勾選【伺服器管理員】以及角色管理工具下的【Hyper-V 工具 (Hyper-V 管理員)】子項目,進行功能的安裝以及啟用作業。
請注意!! 雖然 Windows 8 在無須安裝 RSAT遠端伺服器管理工具,便可以啟用 Hyper-V 管理員功能,但是當您嘗試連接 Hyper-V Server 時,將會得到無法管理舊版本的錯誤訊息,因為 Winodws 8 為針對管理 Hyper-V 3.0 虛擬化平台所設計,並無法相容於舊版的 Hyper-V 2.0 虛擬化平台。
圖8、安裝伺服器管理員以及 Hyper-V 管理員
8、Windows 7 設定 hosts 解析檔案
由於此次的 Hyper-V Server 遠端管理實作環境為「單機」管理並非在 Windows AD 網域當中,但是採用 Hyper-V 管理員遠端進行管理 Hyper-V Server時,必須要採用「主機名稱」的方式進行連結才行,若是採用「IP 位址」的方式進行連結的話將會發生「無法連線至 RPC 服務」的錯誤訊息回彈。因此我們可以透過修改 Windows 7 本機 hosts 檔案,來達成主機名稱與 IP 位址自我解析的需求以順利連結至 Hyper-V Server。請使用「以系統管理員身份執行」的方式開啟筆記本,接著修改「C:\Windows\System32\drivers\etc\hosts」檔案內容,請加入 【10.10.75.168 WeithennV-01】 這一筆記錄後存檔離開即可。
圖9、加入Hyper-V Server 記錄以達成主機名稱與 IP 位址自我解析的需求
9、Windows 7 設定遠端管理項目
首先將開啟用於 WinRM 遠端管理的防火牆規則,接著欲進行遠端管理的 Hyper-V Server 加入至本機的信任主機清單當中,最後切換至存放遠端管理簡易設定工具 HVRemote.wsf 的資料夾路徑,透過此工具一次將需要授權使用者帳號遠端存取相關權限的事宜一次處理完畢。請使用「以系統管理員身份執行」的方式開啟命令提示字元,接著依序執行如下指令:
1. 請鍵入【winrm quickconfig > y > y】 指令開啟用於 WinRM 遠端管理的防火牆規則,請注意 !! 若此台 Windows 7 主機與遠端管理的 Hyper-V Server,其網路卡的網路位置若是處於「公用網路」時此指令將會執行失敗,請將網路位置調整為「網域」或「私人」後再執行此指令即可 (如圖 10 所示)。
圖10、開啟用於 WinRM 遠端管理的防火牆規則
2. 請鍵入【winrm set winrm/config/client @{TrustedHosts="WeithennV-01"}】 指令,將 Hyper-V Server 主機加入至 Windows 7 主機遠端管理的信任主機清單當中 (如圖 11 所示)。
圖11、將要遠端管理的 Hyper-V Server 加入至信任主機清單當中
3. 請鍵入 【netsh advfirewall firewall set rule group="遠端磁碟區管理" new enable=yes】 指令,以允許屆時 Windows 7 主機能夠透過伺服器管理員遠端管理 Hyper-V Server 「磁碟管理」部份 (如圖 12 所示)。
圖12、以允許屆時 Windows 7 主機能夠存取 Hyper-V Server 磁碟管理
4. 最後切換至存放 HVRemote.wsf 設定工具資料夾下,鍵入【cscript hvremote.wsf /AnonDCOM:grant /mmc:enable】 指令,給予 Anonymous Logon 具備遠端存取的權限,以及開啟本機防火牆 MMC 例外規則 (如圖 13 所示)。
圖13、給予 Anonymous Logon 具備遠端存取的權限,以及開啟防火牆 MMC 例外規則
如果您登入的 Windows 7 主機的使用者帳號,與 Hyper-V Server 上管理帳號不同時並且您又不希望在 Windows 7 主機端建立使用者帳號的話,您可以透過指令建立一個專門針對遠端主機進行管理的帳號,請使用「以系統管理員身份執行」的方式開啟命令提示字元,接著鍵入【cmdkey /add:WeithennV-01 /user:weithenn /pass:1qaz@WSX】 指令 (假設 Hyper-V Server 管理密碼為 1qaz@WSX),指定將要存取 Hyper-V Server 的帳號及密碼存放於 Windows 7 電腦中,才可以進行稍後的遠端管理作業,建立完成後可以接著鍵入【cmdkey /list】指令進行確認。
圖14、建立一個專門針對遠端主機進行管理的使用者帳號
若在 Windows 7 主機上,並沒有建立與管理 Hyper-V Server 相同的使用者帳號進行遠端管理時,則需要鍵入【netsh advfirewall firewall set rule group="Windows 防火牆遠端管理" new enable=yes】指令,以允許屆時 Windows 7 主機能夠透過伺服器管理員,遠端管理 Hyper-V Server 的「進階安全性的 Windows 防火牆」部份。
圖15、Windows 7 主機開啟 Windows 防火牆遠端管理規則
10、Windows 7 使用伺服器管理員進行遠端管理
經過上述一連串的相關設定之後,接著我們便可以在 Windows 7 主機透過剛才所安裝的 RSAT 遠端伺服器管理工具,依序點選「開始 > 控制台 > 系統及安全性 > 系統管理工具」呼叫出「伺服器管理員」針對 Hyper-V Server 進行遠端管理作業:連線管理 Hyper-V Server
開啟伺服器管理員後輸入欲進行遠端的電腦主機名稱 (也就是遠端的 Hyper-V Server),此次實作為輸入 【WeithennV-01】 輸入完畢後按下「確定」 鍵,當連結驗證程序成功執行後,便可以使用伺服器管理員進行管理作業 (如圖 16 所示)。
圖16、透過伺服器管理員連線至遠端 Hyper-V Server 以進行管理
Hyper-V 管理員
於左側項目欄位點選 【角色 > Hyper-V > Hyper-V 管理員 > 連線到伺服器】,鍵入 【WeithennV-01】 輸入完畢後按下「確定」 鍵,即可以 Hyper-V 管理員遠端管理 Hyper-V Server 虛擬化平台,進行後續管理動作如 建立 Virtual Machine、設定虛擬網路管理員...等相關作業 (如圖 17 所示)。
圖17、透過 Hyper-V 管理員連線至遠端 Hyper-V Server 以進行管理
事件檢視器
於左側項目欄位點選 【診斷 > 事件檢視器 > Windows 記錄】,透過伺服器管理員遠端查詢 Hyper-V Server 的相關系統事件,以隨時掌握各種系統事件進而進行因應及處理 (如圖 18 所示)。
圖18、透過伺服器管理員遠端查詢 Hyper-V Server 的相關系統事件
效能監視器
於左側項目欄位點選 【診斷 > 效能 > 監視工具 > 效能監視器】,透過伺服器管理員遠端針對 Hyper-V Server 進行效能監控,便於當 Hyper-V Server 發生效能不佳時得以進行監控作業找出效能瓶頸 (如圖 19 所示)。
圖19、透過伺服器管理員遠端針對 Hyper-V Server 進行效能監控
裝置管理員
於左側項目欄位點選 【診斷 > 裝置管理員】,透過伺服器管理員遠端查詢 Hyper-V Server 週邊裝置狀態。但是請注意 !! 此時為「唯讀」模式 (如圖 20 所示)。
圖20、透過伺服器管理員遠端查詢 Hyper-V Server本機裝置狀態
進階安全性防火牆
於左側項目欄位點選 【設定 > 具有進階安全性的 Windows 防火牆】,透過伺服器管理員遠端管理 Hyper-V Server 的防火牆規則,您便可以清清鬆鬆遠端管理Hyper-V Server 的 輸入/輸出、啟用/禁用...等防火牆規則,而不在需要遠端連線到 Hyper-V Server 後辛苦的執行相關指令來管理防火牆規則 (如圖 21 所示)。
圖21、透過伺服器管理員遠端輕鬆管理 Hyper-V Server 的防火牆規則
服務
於左側項目欄位點選 【設定 > 服務】,透過伺服器管理員遠端管理 Hyper-V Server 的系統服務,使您得以方便對系統服務進行 啟動/停止/管理 等作業 (如圖 22 所示)。
圖22、透過伺服器管理員遠端管理 Hyper-V Server 的系統服務
本機使用者和群組
於左側項目欄位點選 【設定 > 本機使用者和群組】,透過伺服器管理員遠端管理 Hyper-V Server 的使用者帳號和使用者群組,而不在需要遠端連線到 Hyper-V Server 後辛苦的執行相關指令來管理使用者帳號及群組 (如圖 23 所示)。
圖23、透過伺服器管理員遠端管理 Hyper-V Server 的使用者帳號和使用者群組
磁碟管理
於左側項目欄位點選 【存放 > 磁碟管理】,透過伺服器管理員遠端管理 Hyper-V Server 的系統磁碟,以方便執行新增硬碟格式化以及建立分割區的動作 (如圖 24 所示)。
圖24、透過伺服器管理員遠端管理 Hyper-V Server 的系統磁碟
11、結語
虛擬化技術已經在市場上及企業中形成一股勢不可擋的風潮,並非因為僅僅是趨勢使然而是大家已經了解虛擬化技術所帶來的優勢,例如 虛擬化技術能夠將作業系統與硬體伺服器抽離,使得在傳統架構上需要大費周章的系統遷移工作變得簡單容易,此外在大量部署作業以及測試研發上也較傳統架構上來得便利與省時...等,在在證明虛擬化技術確實值得大家考慮及使用。
然而對於 IT 預算不高的中小型企業來說,在考量要導入虛擬化技術時便可能因為預算問題而卻步,但是透過這二篇文章的說明後,相信管理人員可以利用可以完全免費使用的 Hyper-V Server 虛擬化技術平台,搭建出伺服器合併 (Server Consolidation) 環境,甚至若企業中建置有 Windows AD 網域時,更能建構出具備高可用性的 容錯移轉叢集(Failover Clustering)、快速遷移(Quick Migration)、即時遷移(Live Migration)...等虛擬化環境,充份享受到虛擬化技術所帶來的各項優點。