使用 QNAP SMI-S Provider 結合 Microsoft SCVMM,管理 QNAP 企業級儲存設備
SMI-S Provider概觀
管理大型虛擬化環境更簡單
在Microsoft Hyper-V虛擬化環境中,System Center Virtual Machine Manager(以下簡稱SCVMM),是一個進階管理工具,可同時集中管理網路、實體伺服器、虛擬機器、以及儲存裝置,有點像是系統免費內建Hyper-V Manager的進階版,只是SCVMM功能更強大、更多樣化。除了Microsoft自家Hyper-V系統之外,SCVMM還可跨界管理VMware ESXi伺服器,在越大型虛擬化環境中,就越能顯現SCVMM的價值。
在大型虛擬化環境中,儲存裝置不只1台,而且彼此之間透過複雜連接架構,以達到高效能、高可用性與備援目標,若要以1台的單位個別操作與管理,再跟伺服器與儲存網路手動整合,會佔用不少管理工作與時間成本。若要達到完全整合的管理目標,則建議採用SCVMM當做主要管理工具,而SCVMM必須借助各家儲存廠商提供的SMI-S Provider作為中介,與儲存裝置聯繫後,才能直接指派工作給儲存裝置,一切都是自動化完成,完成系統管理整合。
當您佈署QNAP ES NAS之後,可立即引進SCVMM+SMI-S Provider管理架構,不需再個別連線到NAS管理介面,便能直接透過SCVMM操控您的所有ES NAS,也不需再個別進入所有Hyper-V伺服器的系統操作介面整合、與設定儲存網路,簡化管理方式與成本。
技術與系統架構
SCVMM與SMI-S Provider技術架構圖:(圖片取自hyper-v.nu)
全域系統架構圖:
準備安裝
系統軟硬體需求
根據前頁的全域系統架構圖顯示,若欲佈署SCVMM與SMI-S Provider解決方案,至少需要以下伺服器角色:
- Active Directory網域伺服器(最少1台,可佈署2台以上達成高可用性。)
- SCVMM伺服器(最少1台,可跟AD網域伺服器佈署在相同主機。)
- SQL伺服器(最少1台,供SCVMM服務存取資料使用,可跟SCVMM佈署在相同主機,不建議跟AD網域伺服器佈署在相同主機。)
- Hyper-V Host伺服器(最少1台,執行Hyper-V hypervisor)
- SMI-S Provider伺服器(數量1台,可跟SQL伺服器佈署在相同主機,不可跟SCVMM佈署在相同主機)
以各個角色來看,SMI-S Provider伺服器所需硬體資源最少,據QNAP Hyper-V Lab經驗顯示,使用Core i3-5010U、2GB RAM的硬體設備即可輕鬆勝任。而Hyper-V Host則需要越多越好的CPU核心與記憶體容量,盡可能承載更多虛擬機器運行。
以上這些伺服器角色也可佈署在虛擬機器內,但建議佈署在另一個獨立的虛擬機器叢集環境,減低管理難度。
伺服器角色與網路設定清單
| Network Settings of Servers and VMs | |||
|---|---|---|---|
| Server Role | IP | Server Name | Description |
| Domain Controller A | 172.17.23.8 | AD1 | Active Directory Server |
| Domain Controller B | 172.17.23.9 | AD2 | Active Directory Server |
| Hyper-V Host A | 172.17.23.133 | HV01 | Hyper-V Host in HVCluster |
| Data Network A1 | 8.8.1.50 | HV01 | Data port 1 of HV01 |
| Data Network A2 | 8.8.2.50 | HV01 | Data port 2 of HV01 |
| Hyper-V Host B | 172.17.23.134 | HV02 | Hyper-V Host in HVCluster |
| Data Network B1 | 8.8.1.60 | HV02 | Data port 1 of HV02 |
| Data Network B2 | 8.8.2.60 | HV02 | Data port 2 of HV02 |
| Hyper-V Host C | 172.17.23.135 | HV03 | Hyper-V Host in HVCluster |
| Data Network C1 | 8.8.1.70 | HV03 | Data port 1 of HV03 |
| Data Network C2 | 8.8.2.70 | HV03 | Data port 2 of HV03 |
| Hyper-V Host D | 172.17.23.136 | HV04 | Hyper-V Host in HVCluster |
| Data Network D1 | 8.8.1.80 | HV01 | Data port 1 of HV04 |
| Data Network D2 | 8.8.2.80 | HV01 | Data port 2 of HV04 |
| Hyper-V Cluster | 172.17.23.137 | HVCluster | Hyper-V Cluster of 4 Hosts |
| SMI-S Provider | 172.17.23.138 | SMI-SProvider | SMI-S Provider Server |
| SQL Server | 172.17.23.138 | SMI-SProvider | SQL Server |
| Storage Network Settings | ||
|---|---|---|
| Setting | Value | Description |
| SCA Management IP | 172.17.22.14 | Management IP of controller A |
| SCA Ethernet1 IP | 8.8.1.107 | Data port 1 IP of controller A |
| SCA Ethernet2 IP | 8.8.2.107 | Data port 2 IP of controller A |
| SCB Management IP | 172.17.22.126 | Management IP of controller B |
| SCB Ethernet1 IP | 8.8.1.108 | Data port 1 IP of controller B |
| SCB Ethernet2 IP | 8.8.2.108 | Data port 2 IP of controller B |
| Pool at SCA | Pool1 | RAID60 pool at controller A |
| iSCSI LUN | iSCSI lun on Pool1 | |
安裝前的確認
- 下載QNAP SMI-S Provider主程式(http://www.qnap.com/utility)
- 下載SCVMM 2012 R2試用版(https://goo.gl/E1E4Vo)
- 安裝AD網域伺服器
- 安裝SQL伺服器
- 安裝Hyper-V Host伺服器
- 下載並安裝Windows ADK 8.1至SCVMM伺服器
(https://www.microsoft.com/zh-tw/download/details.aspx?id=39982) - 下載並安裝SQL Server Native Client 2012至SCVMM伺服器(http://go.microsoft.com/fwlink/?LinkID=239648)
- 下載並安裝SQL Server 2012 Command Line Utilities至SCVMM伺服器(http://go.microsoft.com/fwlink/?LinkID=239650)
- 將QNAP NAS初始化,並正確連接至儲存網路
設定SMI-S Provider伺服器
安裝QNAP SMI-S Provider
- 開啟QNAP SMI-S Provider主程式,確認資訊無誤後,點選「Next >」鍵。

- 視使用者合約條款,確認後點選「I Agree」鍵。

- 選擇主程式安裝路徑,確認後點選「Install」鍵。

- 等待檔案解壓縮與安裝。

- (選擇性)如您想透過HTTP協定存取SMI-S Provider,可在此設定認證資訊。一般使用者可直接跳過這步,點選「Next >」。

- 安裝完成,可勾選立即執行程式,或顯示讀我檔案,按下「Finish」以結束安裝。

將QNAP SMI-S Provider與NAS連線
- 開啟SMI-S Provider後,在主畫面中點選「Scan NAS」,程式將發送Broadcast封包自動尋找您的機器,只要Broadcast封包能到達之處,都能尋找(一般來說在同一switch下)。

- 列出找到的QNAP NAS,點選兩下您想要連線的NAS。
TIPS:
如QNAP SMI-S Provider無法自動找到您的NAS,或是您已經確定NAS的IP位置,也可直接把IP位置輸入到左邊空格,再點選「Add」按鈕以連線NAS。 - 輸入NAS帳號密碼以認證權限。

- QNAP SMI-S Provider會連線到指定NAS,並試著加入。

- 回到主畫面後,如果在清單中看到您剛剛加入的NAS,而且狀態顯示OK,代表已經成功完成這一步。

設定SCVMM 伺服器
安裝SCVMM
- 開啟SCVMM 2012 R2安裝程式,點選「Next >」。

- 選擇安裝檔解壓縮路徑,確認後點選「Next >」鍵。

- 會再次列出安裝檔解壓縮路徑,確認後點選「Extract」鍵。

- 等待檔案解壓縮至指定資料夾。

- 檔案解壓縮完畢後,請再點選「Finish」鍵,以結束解壓縮程式。

- 接下來請到先前指定的解壓縮資料夾,執行安裝程式後,點選「Install」。

- 勾選「VMM management server」後,點選「Next >」鍵。

- 填寫使用者與產品序號等註冊資訊,如只是試用可忽略不填,點選「Next >」。

- 檢視使用者合約條款,確認後勾選同意,並點選「Next >」鍵。

- 依照意願選擇是否參加CEIP計畫後,再點選「Next >」鍵。

- 依照意願選擇是否開啟Microsoft Update後,再點選「Next >」鍵。

- 選擇主程式安裝路徑,確認後點選「Next >」鍵。

- 安裝程式將自動檢查所有系統需求與條件,若有警告或錯誤,請排除再繼續安裝。

- SCVMM需要搭配SQL資料庫運作,這個步驟需要相關資訊。請在「Server name」欄位填入SQL伺服器名稱,安裝程式將自動嘗試與SQL伺服器連線。若連線成功,點選下方「Instance name」欄位,會自動顯示SQL伺服器上現存的執行個體(Instance)名稱。
若您是第一次安裝SCVMM,安裝程式會自動新建一個SQL資料庫。若您曾安裝過SCVMM,也沒有刪除舊有資料庫,也可點選「Existing database」,再選擇舊資料庫名稱套用給SCVMM使用。

- 選擇登入SCVMM的認證方式,若您只想在一台伺服器上安裝SCVMM,使用本機帳戶(Local System account)認證即可。若要在兩台以上伺服器安裝SCVMM,以提供高可用性備援服務,則必須使用Windows網域帳戶(Domain sccount)作為認證手續。

- 設定SCVMM相關功能與服務所使用的連接埠,若無特別需求,保持預設即可。

- 選擇新建程式庫共用(library share),或沿用現有位置。

- 列出所有安裝設定資訊,確認無誤後,按下「Install」開始安裝。

- 將依序進行安裝,取決於伺服器磁碟速度,安裝過程約30至50分鐘不等。

- 順利安裝完成後,可勾選是否立即開啟SCVMM管理視窗,點選「Close」以結束。

啟動SCVMM並連結Hyper-V Host主機
- 選擇登入SCVMM的認證方式,如在安裝時選擇以本機帳戶認證,這裡只要保持預設 值,點選「Connect」即可登入。

- 開啟SCVMM主畫面後,先點選左下角「Fabric」工作空間,再於左上角的「Server」窗格按下滑鼠右鍵,選擇「Add Hyper-V Hosts and Clusters」選項。

- 選擇受管伺服器的加入來源,由於在本範例中,目標的伺服器叢集已經設定在同一Active Directory網域底下,所以選擇第一個「Windows Server computers in a trusted Active Directory domain」選項,再點選「Next」按鈕。

- 選擇探索工作所使用的認證方式,本範例以AD網域管理者的帳號進行認證。

- 輸入受管伺服器/叢集名稱,建議點選「Skip AD verification」讓失敗機率降低。

- 如果前面步驟都順利無誤,SCVMM會自動顯示找到的伺服器或叢集,以本範例來說,SCVMM順利找到「HVCluster」的Hyper-V叢集,並顯示在叢集下的四台伺服器。

- 如果受管伺服器沒有安裝Hyper-V角色,SCVMM會自動將它啟用,這些伺服器將可能重新啟動,確認後點選「OK」

- 指定加入的伺服器/叢集,要放在哪一個Host group中,若無特別需要選預設即可。

- 列出所有設定資訊,確認無誤即可按下「Finish」完成加入。

- 回到SCVMM主畫面後,如果在列表中能看到伺服器名稱,代表已經成功加入。
TIPS:
在本範例中,已經預先使用Windows 2012 R2的 Failover Cluster Manager,將所有Hyper-V伺服器加入叢集。所以在SCVMM內,只要連線到叢集即可,若您是無叢集的單機伺服器Hyper-V環境,只要在Step 5.輸入伺服器名稱即可,其他步驟都相同。
使用SCVMM直接管理儲存系統
前置準備
在NAS上新增儲存池
- NAS初始化後,必須先建立儲存池(Storage Pool),才能再建立Volume與LUN等儲存分區。不過建立儲存池的工作無法靠SCVMM與SMI-S Provider完成,所以我們必須要到NAS上的QES管理介面,執行建立儲存池工作。進入QES首頁後,點選「Storage Manager」。

- 在「Storage Manager」中,點選「New Storage Pool」。

- 以本範例來說,是建立一個RAID60儲存池,請先勾選6顆硬碟,再選擇RAID6。

- 確認硬碟數量與RAID組態無誤後,點選「Create」鍵。

- 接著回到「Storage Manager」中的「Storage Pools」,點選右上角「Actions」,再選擇「Expand Pool」。

- 再勾選剩下的6顆硬碟,點選「Expand」。

- 建立完成後,在Storage Pools中可看到2個RAID6的RAID Group,組成1個儲存池。

連線SMI-S Provider伺服器並尋找您的NAS
- 開啟SCVMM主畫面後,先點選左下角「Fabric」工作空間,再展開位於左上角的「Storage」窗格,在「Providers」的子項目按下滑鼠右鍵,選擇「Add Storage Devices」選項。

- 選擇Storage Provider種類,點選第二項SAN and NAS SMI-S Provider。

- 選擇SMI-S Provider伺服器位置,可輸入伺服器名稱或IP。

- SCVMM另外需要一個帳戶,執行連線到SMI-S Provider伺服器工作,請指派具有存取SMI-S Provider伺服器權限的帳戶,至SCVMM的「Run As Account」內。
TIPS:
SMI-S Provider透過TCP/IP Port 5988進行通訊,如SCVMM無法找到您的SMI-S Provider伺服器,請確認雙方防火牆設定,並將TCP/IP Port 5988加入例外。 - 這些資訊完備後,SCVMM會試著探索SMI-S Provider伺服器,以及轄下的儲存裝置。

- SCVMM順利透過SMI-S Provider伺服器,找到QNAP NAS,並列出型號。

- (選擇性)點選「Create classification」以建立儲存裝置分類。

- 輸入您想要的命名與描述。

- 確認新增儲存裝置資訊無誤後,點選「Next」。

- 再次檢閱相關資訊,點選「Finish」結束整個設定過程。

- 回到SCVMM主畫面後,點選左下角「Jobs」工作空間,確認所有工作都正常執行。

- 點選左下角「Fabric」工作空間,再展開位於左上角的「Storage」窗格,點選「Arrays」的子項目,如有看到您的NAS,代表順利完成。

單機儲存使用情境
分派儲存池至Host groups
- Step 1:在SCVMM主畫面點選左下角「Fabric」工作空間,再點選位於左側的「Storage」窗格,在上方工作列找到「Allocate Capacity」按鈕,並點選它。

- 在「Allocate Storage Capacity」主視窗中,點選需要指派儲存池的Host groups,因為本範例只有一個「All Hosts」群組,維持預設即可,接下來請在右邊點選「Allocate Storage Pools…」按鈕。

- 如果前面步驟都有順利完成,NAS已經成功透過SMI-S Provider被SCVMM管理,這裡會自動顯示NAS上的現有儲存池,選擇想要加入的儲存池後,點選右側「Add」按鍵。

- 確認選擇的儲存池已經移到下方「Allocated Storage Pools」後,點選「OK」離開。

- 接著回到SCVMM主畫面左下角「Fabric」工作空間,再點選位於左側的「Storage」窗格,在「Classifications and Pools」當中,展開儲存裝置的Classification,應可看到「pool1」儲存池,代表已經順利完成。(選擇性)為了容易辨識儲存池,接下來請用滑鼠右鍵點選「pool1」,點選「Properties」選單。

- 在「Name」與「Description」空格內,輸入您想要的名稱,以本範例而言,將新加入儲存池命名為「HVDR1」。

透過SCVMM新增Logical Unit
- 在SCVMM主畫面中,點選左下角「Fabric」工作空間,再點選位於左側的「Storage」窗格,在「Classifications and Pools」當中,找到上一步驟加入的儲存池「HVDR1」,接著點選上方工作列的「Create Logical Unit」按鈕。

- 在「Name」空格填入Logical Unit名稱,並在「Size」處指定容量大小,點選「OK」。

- 接著回到「Classifications and Pools」主畫面,應可看到剛剛新建的Logical Unit。

- 接著在SCVMM主畫面中,點選左下角「Jobs」工作空間,確認工作順利完成。

- NAS管理介面的Storage Manager內,也可看到剛剛在SCVMM建立的「VMLUN1」。

分派Logical Units至Host
- 在SCVMM主畫面中,點選左下角「Fabric」工作空間,再點選位於左側的「Storage」窗格,接著點選上方工作列的「Allocate Capacity」按鈕。

- 在「Allocate Storage Capacity」主視窗中,點選需要指派儲存池的Host groups,因為本範例只有一個「All Hosts」群組,維持預設即可,接下來請在右邊點選「Allocate Logical Units…」按鈕。

- 如果前面步驟都有順利完成,這裡應會自動顯示NAS上的Logical Units,選擇想要加入的Logical Units後,點選右側「Add」按鍵。

- 確認選擇的Logical Units已經移到下方「Allocated Logical Units」後,點選「OK」離開。

- 回到SCVMM主畫面,點選左下角「Jobs」工作空間,確認工作順利完成。

設定Host iSCSI連線
- 在SCVMM主畫面中,點選左下角「Fabric」工作空間,再點選位於左側的「Servers」>「All Hosts」窗格,選擇您想要設定的伺服器,接著點選上方工作列的「Properties」按鈕。

- 在Properties視窗中,點選左邊「Storage」子項目,再點選左上方「Add」>「Add iSCSI Array」。

- 可看到受SMI-S Provider管理NAS已自動加入,點選右邊「Create session…」按鈕。

- 指定iSCSI Target與iSCSI Initiator的IP位置,點選「Create」建立連線。

- 在SCVMM主畫面中,點選左下角「Jobs」工作空間,確認工作順利完成。

掛載Logical Unit至Host並格式化
- 順利連接NAS後,點選左上方「Add」>「Add Disk」。

- 選擇要掛載的Logical Unit,並指定格式化選項與磁碟代號。

- 如果Logical Unit上先前已有檔案系統,SCVMM將不會主動格式化,避免資料遺失。

- 工作完成後,到Host伺服器上磁碟管理查看,也能看到SCVMM掛載的iSCSI LUN。

叢集儲存使用情境
新增可用儲存至Hyper-V host cluster
- SCVMM主畫面中,點選左下角「Fabric」工作空間,再點選位於左側的「Servers」>「All Hosts」窗格,選擇您想要設定的叢集,接著點選上方工作列的「Properties」按鈕。

- 在Properties視窗中,點選左邊「Available Storage」子項目,再點右下方「Add…」按鈕。

- 在彈出的「Add Cluster Disk」視窗中,點選右下方「Create Logical Unit…」按鈕。

- 在「Storage pool」選單指定一個在NAS上的儲存池,在「Name」空格填入新Logical Unit名稱,並指定容量,按下「OK」後執行工作。

- 回到「Add Cluster Disk」視窗後,勾選剛剛建立的Logical Unit,點選「OK」後退出。

- 回到「Properties」視窗也可以看到建立的Logical Unit,點選「OK」開始執行工作。

將分派的Logical Unit轉換成CSV磁碟
- SCVMM主畫面中,點選左下角「Fabric」工作空間,再點選位於左側的「Servers」>「All Hosts」窗格,選擇您想要設定的叢集,接著點選上方工作列的「Properties」按鈕。

- 在Properties視窗中,點選左邊「Available Storage」子項目,選擇已掛載的Logical Unit,再點選右下方「Convert to CSV」按鈕。

- 剛剛選擇的Logical Unit會消失在「Available Storage」清單中,按下「OK」以執行。

- 回到SCVMM主畫面,點選左下角「Jobs」工作空間,確認工作順利完成。

- 回到Properties視窗,點選左邊「Share Volumes」子項目,在右方列表中如果可看到剛剛加入的磁碟,代表已經順利完成,隨時可供叢集存取使用。

指派CSV磁碟至叢集
如您先前已建立CSV磁碟,只是尚未指派到這個Hyper-V伺服器叢集,可依此章節進行。
- SCVMM主畫面中,點選左下角「Fabric」工作空間,再點選位於左側的「Servers」>「All Hosts」窗格,選擇您想要設定的叢集,接著點選上方工作列的「Properties」按鈕。
進入Properties視窗中,點選左邊「Shared Volumes」子項目,再點選下方「Add…」按鈕。

- 勾選想要加入的CSV磁碟,再點選「OK」

- 回到Properties視窗「Share Volumes」子項目,可以看到剛剛選擇的CSV磁碟,按下「OK」以執行工作。

- 待工作完成後,再回到Properties視窗「Share Volumes」子項目,在右方列表中如果可看到剛剛加入的CSV磁碟,代表已經順利完成,隨時可供叢集存取使用。

技術支援與參考資料
- Configuring Storage in VMM Overview - TechNet – Microsoft
(https://technet.microsoft.com/en-us/library/gg610600.aspx) - MS Christmas present: SMI-S Storage Provider for iSCSI Target Server - Hyper-V.nu
(http://www.hyper-v.nu/archives/hvredevoort/2012/12/ms-christmas-present-smi-s-storage-provider-for-iscsi-target-server/) - QNAP應用工具
(http://www.qnap.com/utility)