面服務,最大程度地兼容現有的虛擬化產 品,并滿足住宅小區(qū)中用戶的特定需求,本發(fā)明公開一種面向住宅小區(qū)虛擬化PC桌面服務 的用戶數據存儲方案和實施方法。
[0023] 應用于桌面虛擬化場景的存儲服務平臺由多個模塊共同提供服務,分別是:服務 器虛擬化系統、公共存儲設備、私有存儲設備、用戶認證和接入模塊和虛擬化PC桌面服務 終端。
[0024] 服務器虛擬化系統,用于在一套服務器物理硬件上虛擬出多套邏輯硬件,每一套 邏輯硬件上安裝一個完整的操作系統為用戶提供虛擬化PC桌面服務。常見的服務器虛 擬化系統有開源的KVM和Xen,以及商業(yè)產品VMware ESX,Microsoft Hyper-V和Citrix XenServer等。本發(fā)明提供一種通用的用戶數據存儲方案,該方案可直接或在部分修正后和 不同的服務器虛擬化系統集成。
[0025] 公共存儲設備,由服務器虛擬化系統直接管理,既可以是直連式存儲(Direct Attached Storage,DAS),也可以是網絡連接式存儲(Network Attached Storage,NAS)。所 有的公共存儲區(qū)域為管理此區(qū)域的服務器上的所有虛擬主機共享,不為特定用戶指定特定 的物理存儲器,公共存儲設備中的所有物理存儲器對用戶是透明的。直接管理的公共存儲 區(qū)域存放用戶的系統文件和應用程序文件,DAS或專用帶寬的NAS可保證響應速度。
[0026] 私有存儲設備,由特定的虛擬主機管理,私有存儲設備為NAS。通常,一個用戶ID 對應一臺虛擬主機,一臺虛擬主機管理一塊私有存儲區(qū)域。且各個用戶的私有存儲設備彼 此隔離,之間不存在物理連接,保證了用戶私有數據的安全。私有存儲設備可安裝在用戶家 里,也可由用戶托管在小區(qū)機房內。
[0027] 用戶認證和接入模塊用于完成用戶的認證,并為通過認證的用戶建立虛擬化PC 桌面服務終端與虛擬化服務器之間的連接,和用戶與其私有存儲設備之間的連接。用戶認 證和接入模塊是整個虛擬化系統為用戶提供的接入門戶。
[0028] 虛擬化PC桌面服務終端用于用戶和虛擬主機交互,接收用戶的輸入并處理虛擬 主機的輸出。同時,在本發(fā)明所述及的范圍內,虛擬化PC桌面服務終端還提供了私有存儲 設備的物理連接接口。如圖2所示。
[0029] 虛擬化數字小區(qū)存儲系統,其主要由私有存儲和公共存儲兩部分組成,并在服務 器虛擬化系統,客戶端虛擬化系統和用戶認證和接入系統的輔助下工作。其中,私有存儲設 備存儲資源為每個用戶單獨分配,私有存儲的物理設備通常由用戶自行提供,私有存儲的 物理介質可以是硬盤,SD卡和U盤等可能出現的新型存儲設備。公共存儲是由服務器虛擬 化系統直接管理的物理存儲介質,通常為硬盤。
[0030] 公共存儲系統既可以是直接連接式存儲,也可以是網絡連接式存儲。
[0031] 私有存儲系統既可以是直接連接式存儲,也可以是網絡連接式存儲。若為直接連 接式存儲,用戶的私有存儲物理介質將安置在小區(qū)集中機房。若為網絡連接式存儲,則用戶 的私有存儲物理介質既可以安置在小區(qū)集中機房,也可以安置在用戶家庭。
[0032] 公共存儲系統在資源有限的情況下,優(yōu)先存儲用戶的系統文件,應用程序和配置 信息。
[0033] 私有存儲系統主要存放用戶的非系統文件,比如文檔和多媒體文件等。
[0034] 私有存儲系統的物理介質可以由用戶自由增加,移除和更換。
[0035] 用戶認證和接入系統,包括用戶認證和接入模塊、資源分配模塊,用戶認證和接入 模塊內保存用戶信息映射表。用戶認證和接入系統是用戶訪問虛擬桌面服務的門戶,對外 提供一個公開的IP地址,所有需要連接小區(qū)虛擬化桌面系統的用戶都首先通過訪問用戶 認證和接入系統提供服務。用戶認證和接入系統在收到用戶的訪問請求后,首先由用戶認 證和接入模塊驗證用戶信息的合法性,如果合法,則由資源分配模塊為其分配虛擬機資源, 并增加或更新用戶信息映射表中用戶對應的表項。
[0036] 用戶信息映射表中包含了用戶標識信息,用戶所使用的虛擬化PC桌面服務終端 IP地址和為用戶分配的虛擬主機IP地址及主要配置參數,如CPU核心數和內存大小。
[0037] 應用于桌面虛擬化場景的存儲服務實現方法,如圖3所示, 步驟1 :創(chuàng)建用戶虛擬主機,在公共存儲區(qū)域中為用戶主機分配一塊存儲區(qū)域,用于保 存用戶操作系統啟動所需要的基本文件。
[0038] 步驟2 :創(chuàng)建用戶私有存儲區(qū)域,將一塊獨立的物理存儲設備,比如硬盤,SD卡等, 通過虛擬化PC桌面服務終端中預留的接口安裝。虛擬化PC桌面服務終端將其IP地址和 用戶ID的映射關系保存在所述用戶認證和接入模塊中的用戶信息映射表中。
[0039] 步驟3 :用戶虛擬主機通過保存在公共存儲區(qū)域中的操作系統文件啟動虛擬桌面 系統。根據保存在用戶認證和接入模塊中的用戶信息映射表找到用戶ID對應的IP地址, 并使用該IP地址訪問(加載)所述用戶私有存儲設備。
[0040] 步驟4 :用戶通過所述虛擬化PC桌面服務終端訪問虛擬主機,在虛擬主機中,用戶 的公有存儲設備和私有存儲設備均以邏輯磁盤的形式顯示。用戶可通過操作系統提供的文 件操作接口進行數據的創(chuàng)建,更新和刪除等操作。
[0041] 更進一步,因為公共存儲區(qū)域內的存儲容量是有限的,為了提高其利用率,本發(fā)明 技術方案使用線上和線下相結合(動態(tài)分配加載)的方式,具體為: 當有新用戶上線時,為其動態(tài)分配資源,即不再一個用戶單獨占用一塊固定的公共存 儲區(qū)域。當每次有新用戶上線時,系統在公共存儲區(qū)域中查找可用的公共存儲空間,并判斷 其是否能滿足新用戶的最低需求,如果剩余空間能滿足用戶的最低需求,則從剩余空間中 分配出一塊區(qū)域供用戶使用。如果剩余空間不能滿足用戶的最低需求,則在所述用戶認證 和接入模塊的用戶信息表中查找離線用戶,并將該離線用戶在公共存儲區(qū)域中對應的文件 保存到用戶的私有存儲區(qū),接著釋放該公共存儲區(qū)域,并將釋放后的存儲資源分配給新上 線的用戶。
[0042] 更進一步,上述用戶切換過程需要耗費較多的時間,為了進一步提高用戶切換的 效率,本技術方案公開一種使用空間換取時間的機制,具體為: 在用戶的私有存儲空間中固定分配一塊和用戶公共存儲空間一樣大小的存儲區(qū)域,由 于用戶的公共存儲空間主要用于存放操作系統啟動時所需要用到的必要文件,所以這部分 存儲空間并不太大。
[0043] 在用戶首次初始化時,將用戶在公共存儲空間產生的數據全部拷貝到用戶私有存 儲空間的系統保留區(qū)域。
[0044] 設置一個監(jiān)視器,每當監(jiān)視到用戶公共存儲空間的數據(文件)發(fā)生變化時,將變 化的數據(文件)更新到用戶私有存儲空間的系統保留區(qū)域,及保持用戶公共存儲空間和私 有存儲空間中系統保留區(qū)的數據一致性。
[0045] 當有新用戶到達,且剩余公共存儲空間不足時,直接釋放某離線用戶的公共存儲 資源,將其重新分配到新用戶,而無需數據拷貝操作。
[0046] 當被釋放資源的離線用戶重新上線時,執(zhí)行和新用戶到達相同的策略,并且分配 到公共存儲空間后,從該用戶的私有存儲區(qū)域中的系統保留分區(qū)加載用戶數據。
[0047] 以上策略的另一個優(yōu)勢在于,不僅用戶的私有數據,用戶的操作環(huán)境等也可以被 保存和迀移,而不會受到系統更新等因素的影響。
[0048] 一個虛擬化服務器根據不同的配置可以虛擬出η個虛擬主機,由虛擬化服務器直 接控制的公共存儲區(qū)域中有η個固定分區(qū),每一個虛擬主機對應一個固定分區(qū)。固定分區(qū) 存放用戶操作系統啟動時所需要的必要文件。
[0049] 用戶認證和接入系統是用戶進入虛擬主機的門戶。運行用戶認證和接入模塊的主 機有公開的IP地址,所有需要連接虛擬主機的用戶都首先訪問用戶認證和接入模塊,用戶 認證和接入模塊在收到用戶的訪問請求后,首先使用用戶認證和接入模塊驗證請求用戶的 基本信息,判斷是否是合法訪問,如果是合法訪問,則調用