- 應用程式和伺服器虛擬化可以最佳化資源,但會對 CPU、RAM、磁碟和網路造成輕微的開銷,這些開銷必須加以測量和管理。
- 在 App-V 中,精心準備的基礎鏡像、SCS 模式、用戶端參數和良好的設定檔管理 (UE-V/UPM) 的結合是縮短登入時間的關鍵。
- 實體伺服器和虛擬化環境之間的選擇取決於工作負載的類型:裸機用於追求極致效能,而虛擬機器用於追求靈活性、可擴展性和集中管理。
- 壓力測試和持續監控使您能夠調整資源、偵測瓶頸,並確保在 VDI、RDSH 和混合雲中獲得良好的使用者體驗。
La 虛擬化簡單來說,它由以下部分組成: 建立實體資源的虛擬版本 (伺服器、儲存、網路或應用程式)可以在相同硬體上運行多個環境。這種將實體伺服器「切片」成多個邏輯實例的能力是雲端運算和大多數現代資料中心的基礎。
一 虛擬機器(VM) 它是一個獨立的系統,擁有自己的虛擬CPU、記憶體、儲存和網絡,這些都是基於主機的實體資源建構而成。每個虛擬機器都像一台獨立的機器一樣運行,通常封裝在一個或多個檔案中,因此相對容易移動、複製和復原。
使這一切成為可能的組件是 虛擬機器管理程序 或者說是虛擬機器監控器(VMM)。它的功能是將主機的實體資源(CPU、記憶體、磁碟、網路)分離出來,並將它們分配給所需的不同虛擬機,控制它們的使用,並將它們彼此隔離,這樣一台虛擬機的故障就不會影響系統的其餘部分。
存在兩個 虛擬機器管理程式的主要類型第一種類型(裸機)直接在伺服器硬體上運行,常見於資料中心和私有雲。第二種類型是作為應用程式安裝在主機作業系統上(例如,在筆記型電腦上執行多個虛擬機器的桌面虛擬機器管理程式)。
這一點在Linux生態系中尤其重要。 KVM(基於內核的虛擬機),這是一款核心整合的 1 型虛擬機器管理程序,它允許虛擬機器利用 Linux 的效能和功能,並對 CPU、記憶體和裝置進行非常精細的控制。
什麼是應用虛擬化?它與伺服器虛擬化有何不同?
La 應用程式虛擬化 它將應用程式與其作業系統分離,使程式無需實際安裝在用戶設備上即可運行。應用程式「認為」它在與作業系統通信,但實際上,它是在與一個中間層(應用程式虛擬機管理程式或隔離技術)通信,該中間層會重定向對檔案、註冊表和其他資源的存取。
這些應用程式通常運行在 中央伺服器(位於資料中心或雲端) 這些應用程式透過網路(區域網路或網際網路)傳輸到用戶設備。對最終用戶而言,應用程式看起來像是原生應用,但實際上,它是在受控環境中發布或虛擬化的。
與伺服器虛擬化相比,伺服器虛擬化是在以下層面工作的: 完整的操作系統應用程式虛擬化在以下層面上運作: 個人計劃Word 文件、CRM、ERP、設計工具…這大大簡化了管理、隔離和更新,但也帶來了與網路、儲存和使用者設定檔相關的效能挑戰。
應用程式虛擬化對使用者、IT 和企業的好處
從 最終用戶主要優勢在於自由度。他們可以使用自己喜歡的設備(公司筆記型電腦、個人電腦、瘦客戶機、平板電腦),並訪問公司應用程序,而無需擔心… 安裝、更新或維護 沒什麼。對他們來說,設備切換幾乎是無縫的:他們登入後,快捷方式就可以立即使用了。
為 IT 管理員應用虛擬化帶來了顯著的便利。用戶無需在數百上千台機器上部署和修補軟體,只需在一台或幾台伺服器上安裝和維護應用程序,然後將其發布給授權用戶即可。這實現了集中管理,並顯著加快了實施速度。 修補程式、版本變更、安全設定和策略.
很多 開發商 他們也能從中受益。他們可以在同一系統上擁有不同的虛擬化環境,從而在各種作業系統版本或軟體組合上測試程式碼,而無需建立複雜的實體實驗室。此外,虛擬化層提供的隔離性使他們能夠開啟可能損壞或危險的文件,而不會危及宿主系統。
對於整個組織而言,應用虛擬化有助於進行以下措施: BYOD(自帶設備)它減少了購買功能強大的企業設備的需求,簡化了支援工作,並且通常可以節省大量重複許可證、支援工時和提前續訂硬體的費用。
一個重要的點是 規範合規由於敏感資料不會儲存在使用者的裝置上(而是儲存在資料中心或雲端),因此更容易遵守 HIPAA 或 PCI-DSS 等法規,因為暴露面減少了,存取控制和稽核也集中化了。
虛擬化對效能的影響:CPU、記憶體、磁碟和網絡
虛擬化總是會引入某些 資源過載這是因為在應用程式和硬體之間增加了一個額外的層(例如虛擬機器管理程式、發布引擎、遠端客戶端等)。雖然如果平台規模合適,這種性能損失通常很小,但了解它在哪些方面最明顯仍然很必要。
在...的層面上 中央處理器對比測試表明,運行在 KVM 或 VMware vSphere 上的典型虛擬機器效能比直接運行在裸機硬體上的相同系統低 5% 到 7,5%。對於大多數企業應用(辦公室套件、Web 應用、ERP 系統)而言,這種效能差異可以接受,但對於運算密集型任務、人工智慧或 3D 渲染而言,則可能至關重要。
En DDR4 與 DDR5 內存由於需要額外管理虛擬機器管理程序,有效速度可能會降低約 7% 到 13%。在高負載環境下,這需要過度配置記憶體或限制每台主機上的虛擬機器密度,以避免記憶體飽和。
最明顯的差別在於: 儲存(IOPS)使用 fio 等工具進行的測試表明,與裸機上的相同硬碟相比,在 4K 隨機讀寫操作中,效能下降了約 17-25%。選擇 NVMe 硬碟盒、高性能 SSD、快取以及良好的… 共享儲存設計 對於虛擬機器和虛擬化應用程式而言,流暢回應至關重要。
La 網路延遲 當許多虛擬機器共用同一個實體接口,或在遠端會話之間傳輸圖形密集型或視訊流量時,這種情況可能會加劇。 網路設計 (VLAN、QoS、頻寬、卸載)以及高效能圖形發布協定的使用,對使用者體驗有顯著的影響。
Windows、App-V 與 VDI/RDS 環境:實際效能
在現代 Windows 環境(Windows 7 SP1、Windows 10、Windows 11、Windows Server 2012 R2 和 2016)中,應用程式虛擬化與 微軟App-V 它是遠端桌面服務 (RDS) 場景和 VDI 基礎架構中交付應用程式的關鍵技術之一。
在這些環境中,使用者通常會進行以下操作: 非持久性機器 (頻繁重新產生的虛擬機器或 RDSH 主機)。為確保用戶登入後幾秒鐘內即可存取其虛擬應用程序,必須調整以下兩項: App-V 用戶端 例如設定檔管理解決方案和基礎映像本身。
使用者體驗取決於幾個相互關聯的時間間隔:從使用者輸入憑證到可以與桌面互動的時間,從那時到 App-V 發布更新開始的時間,該更新的持續時間,以及最終虛擬應用程式捷徑或檔案關聯可用所需的時間。
優化這些時間涉及結合 App-V 配置(模式 共享內容庫(並發發布限制、用戶整合保留)、良好的效能分析解決方案(UE-V 或其他 UPM)以及根據主要目標設計的基本圖像策略: 最大效能或最大儲存節省.
應用案例:效能導向型方法與儲存導向型方法
我們可以將非持久性、有狀態 VDI/RDSH 環境中的 App-V 部署分為兩大極端情況,但實際上許多公司的情況介於兩者之間:一種情況是…另一種情況是… 針對效能進行了最佳化 和另一個 專注於降低儲存消耗.
在以效能為導向的場景中,基礎鏡像會預先包含部分或全部相關的虛擬應用程式套件及其連接群組。這會增加鏡像的準備和維護工作,但能提供最佳的使用者體驗:使用者登入後,應用程式幾乎可以立即運作。
這種以儲存為導向的方法避免在基礎鏡像中包含使用者特定的軟體包,從而防止共享磁碟陣列被許多使用者可能不需要的資料所佔用。此方法優先考慮減少虛擬機器鏡像的大小,但代價是將一些配置操作轉移到登入時進行,因此會略微增加某些應用程式的可用時間。
在實踐中,通常的做法是將效能方法應用於一部分關鍵用戶或軟體包(例如,客戶服務人員或經常使用的業務應用程式),而將儲存方法應用於偶爾使用的用戶或對啟動時間不太敏感的應用程式。
為 App-V 準備環境和基礎鏡像
為了使 VDI 或 RDSH 中的應用程式虛擬化順利運行,系統必須做好充分的準備。 基本形象 以及個人資料管理解決方案(UE-V 或其他 UPM)。此階段的錯誤通常會導致無休止的登入、整合遺失或不必要的重複發布。
在績效方法中,關鍵步驟包括啟用 整合 App-V 用戶端 在系統中,使用 App-V 配置範本啟動 UE-V(或等效解決方案),將共享內容儲存 (SCS) 模式配置為僅在磁碟上保留發布數據,並將註冊表設定為在登入時保留使用者整合。
此外,他們必須 預先配置所有連接包和群組 包括全域套件和使用者套件(使用諸如 Add-AppvClientPackage 和 Add-AppvClientConnectionGroup 之類的命令),並預發布全域套件。在某些情況下,建議執行全域和使用者發佈/更新週期,取消發佈使用者目標包,並清理設定檔中的 VFS 條目(例如,AppData\Local 和 AppData\Roaming 中與 App-V 相關的條目)。
在以儲存為導向的方法中,準備工作類似,但僅預先配置全域連接群組和軟體套件。使用者特定的軟體包不會包含在基礎鏡像中,以避免增加虛擬機器的大小和磁碟使用量。
此外,需要明確的是,IT 管理需要… 定期更新基礎鏡像 為了反映軟體包版本變更、安全修復和新增存取權限。在某些環境中,需要為不同的使用者設定檔管理多個不同的鏡像。
App-V 用戶端的關鍵效能參數
App-V 用戶端內有多個 註冊設定 這直接影響發布速度以及 CPU、磁碟和網路的負載,尤其是同時有許多使用者的 RDS 主機。
模式 共享內容儲存(SCS) 它僅允許將發布元資料儲存在本機磁碟上,而其餘應用程式資源則按需從中央儲存庫(SAN、內容伺服器)載入。這樣可以節省本機 IOPS 並減少磁碟空間,前提是與內容伺服器的網路連線延遲較低。
選項 登入時保留用戶集成 這可以防止客戶端在登入時對未預先配置的軟體包中的使用者整合進行拆分和重新組裝。如果未啟用此金鑰且存在大量未配置的使用者軟體包,則每次登入都可能導致每個軟體包重複發布,從而顯著影響登入時間。
另一個重要參數是 最大並發發布刷新此設定定義了可以同時啟動版本更新的使用者數量。在 RDS 伺服器上,如果將其設定為無限制,則在大量使用者同時登入時可能會導致 CPU 使用率飆升。設定一個合理的值可以緩解這些峰值,但代價是,在登入高峰期,部分使用者可能需要稍長一些時間才能看到新發布的應用程式。
使用者設定檔管理:UE-V 和其他 UPM 解決方案
為了使虛擬應用程式在非持久性環境中幾乎可以立即啟動,解決方案至關重要。 使用者個人資料管理 維護並套用跨會話的正確「使用者整合」:註冊金鑰、捷徑、開始功能表、App-V 目錄等。
La 使用者體驗虛擬化(UE-V) 微軟的UE-V主要針對VDI和RDS場景。它能夠捕獲並儲存用戶設置,並在用戶登入其他設備或會話時自動套用這些設置。對於App-V,UE-V可以使用特定的範本來擷取整合儲存的確切登錄和檔案路徑。
一個相關的特殊之處在於對…的管理 .lnk 文件 (快捷方式)。 UE-V 僅支援在所有使用者裝置都安裝了相同路徑下的應用程式集相同的情況下,從排除檔案清單中移除 .lnk 副檔名。如果此條件不滿足(例如,應用程式僅安裝在一台電腦上或安裝在不同的路徑中),同步 .lnk 檔案可能會導致捷徑失效。
在使用其他 UPM 解決方案(使用者設定檔磁碟、第三方產品)時,至關重要的是它們能夠:保留指定的使用者整合(註冊表和資料夾), 在適當的時間同步個人資料。 (登入或應用程式啟動,在 App-V 發布之前)並在登出之前捕獲這些位置的變更。
在 App-V 中,引入了 SyncAppvPublishingServer.exe 實用程序,旨在為設定檔解決方案提供清晰的觸發機制:它會在使用者登入時啟動發布更新,但允許延遲更新,直到設定檔完全載入。這樣可以防止 App-V 發佈到不完整或過時的設定檔。
使用者體驗教學:每次登入時會發生什麼
透過逐步觀察流程,我們可以更了解使用者在日常生活中如何看待應用程式虛擬化,這取決於我們採用的是效能方法還是儲存方法。
在方法論中 性能當使用者首次登入非持久性 VDI/RDSH 時,系統會觸發使用者發佈或更新操作。如果這是該用戶首次接收虛擬應用程序,則此操作所需時間與通常情況相同。操作完成後,分析解決方案會擷取使用者整合資訊(通常在使用者登出時),其影響與保存使用者其他狀態類似。
在初始階段,UPM 解決方案會先套用所有使用者集成,然後 App-V 才會開始刷新發布流程。用戶從一開始就能在桌面或「開始」功能表中看到快捷方式,其中許多快捷方式可以立即使用。如果權限沒有更改,發布流程會在幾秒鐘內完成。如果有更改,則所需時間會根據虛擬化應用程式的數量和複雜程度而增加。
因此,透過保留 100% 的用戶集成, 發布期間的負載降至最低。系統僅調整權限或版本變更,登入後應用程式即可很快準備就緒。
在方法論中 存儲首次登入時,使用者發布流程也會啟動,耗時與正常情況相同。但是,無論是首次登入還是後續登錄,預先配置(新增或更新)使用者軟體包的需求都可能延長應用程式的可用時間。根據軟體包的數量和複雜程度,通常會增加 10 秒或更多。
在這種情況下,發布和更新過程必須在每次登入時重新配置所有虛擬應用程序,這不可避免地會延長發布刷新階段。雖然這節省了磁碟空間,但會犧牲一些登入速度。
App-V 套件生命週期和待處理狀態
的管理 App-V 軟體包生命週期 這也會影響效能以及使用者看到的版本一致性。當管理員更新軟體包、更改權限或取消發布應用程式時,如果軟體包正在使用中,這些操作可能會一直處於掛起狀態。
從 App-V 5.0 SP2 版本開始,引入了以下功能: 待定狀態發布或取消發布操作不會失敗,而是會被標記為在下次 App-V 服務重新啟動或再次發出發布/取消發布命令時完成。對於全域發布的軟體包,這通常需要重新啟動伺服器或客戶端服務。
在非持久性環境中,這些待處理任務可能永遠不會被處理,因為在滿足條件之前,電腦可能已被丟棄或重新建立。待處理任務儲存在使用者設定檔中(例如,位於 HKEY_CURRENT_USER\Software\Microsoft\AppV\Client\PendingTasks 下),如果分析解決方案在登入前未套用此登錄項,則這些操作將處於待處理狀態。
這就是為什麼它如此重要 保持基礎影像對齊 透過即時掌握軟體包狀態:版本、權限、全域發布。我們越少依賴待定狀態,體驗就越可預測,軟體包看似未更新或意外消失的情況就越少發生。
優化排序和配置以提高發布效能
App-V 包含多種功能,這些功能會影響應用程式發布和啟動操作的行為。在以下階段進行了一些調整: 定序 它們在高速網路環境中能產生顯著差異。
一個例子是消除 特徵塊 1 (FB1)如果未定義 FB1(啟動應用程式前預先下載的最小檔案集),應用程式將嘗試立即啟動並即時下載所需檔案。在高速網路上,這可以加快首次啟動速度,但在低速網路上,則可能導致中斷或等待,因為需要同時下載其他內容。
使用序列器建立新軟體包時,只需取消選取在串流步驟中針對慢速網路最佳化軟體包的選項即可。對於現有軟體包,您可以更新軟體包而不選擇此最佳化選項。理想情況下,這些測試應在受控環境中執行,並且始終… 將定序儀恢復到乾淨的快照狀態。 後。
另一個方面是組裝管理 並排式 (SxS)例如 Visual C++ 運行時程式庫。無需重新排序軟體套件即可進行修改:如果用戶端已安裝 SxS 依賴項,則 App-V 在發布期間可能啟動的 MSI 安裝程式將不會運行,從而節省時間。軟體包中包含過多的 SxS 組件可能會在發布期間觸發額外的安裝,從而影響效能。
使用EL 動態設定檔 部署/使用者設定檔也會產生影響。 App-V 用戶端必須解析這些檔案並執行腳本或套用虛擬註冊表排除/包含項目。如果每個程式包都包含大量配置,則發布速度會受到影響。只有在真正需要時才使用這些配置,並在不需要的程式包中停用它們,可以顯著縮短發佈時間。
最後,值得回顧一下… 虛擬資源 包含在軟體包中的字型。雖然一個典型的軟體包通常不超過二十種字體,但每個聲明一種字體都會在版本更新過程中增加額外的工作量。透過動態配置停用不必要的虛擬字體,並改為在鏡像中原生安裝實際需要的字體,有助於在使用者眾多的情況下節省部署時間。
虛擬機器的一般效能最佳化
除了App-V之外,還有許多改進的常用方法。 任何虛擬機器的效能無論是在桌面環境、實驗室環境或生產環境。
首先要確保硬體虛擬化擴充(例如) Intel VT-x 或 AMD-V這些功能必須在主機的BIOS/UEFI中啟用。否則,虛擬機器管理程式將不得不透過軟體模擬更多操作,效能將大幅下降。
也建議選擇 固定大小的虛擬磁碟 與動態磁碟相比,雖然動態磁碟會隨著使用量增加而擴展,在空間方面更加靈活,但它們往往會變得更加碎片化,效能也更差。如果主機空間充足,那麼從一開始就預留最大虛擬磁碟容量是值得的。
儲存位置是另一個關鍵因素。只要條件允許,最好將虛擬機器託管在… 快速 SSD 驅動器 相較於機械硬碟或速度較慢的外部硬碟,這種方案在系統啟動、應用程式啟動和資料存取方面的效能提升非常顯著。
別忘了安裝 整合工具 來自虛擬機器管理程式(客戶機增強功能、VMware Tools 等)的虛擬機器系統。這些程序會添加針對視訊、網路、滑鼠和儲存的最佳化驅動程序,與作業系統自帶的通用驅動程式相比,可以實現更流暢的操作。
最後,建議分配足夠的資源。 RAM 和 CPU 核心 對於每個虛擬機,請記住,每個虛擬機都運行一個完整的作業系統。對於 Windows 7/10/11 系統或目前的 Linux 發行版,2 GB 記憶體是一個非常緊張的最低要求;實際上,分配更多記憶體可以顯著提高效能。 CPU 核心數也是如此:如果主機有很多核心,合理地將它們分配給各個虛擬機器將產生顯著的效能差異。
實體伺服器與虛擬化環境:何時選擇哪種方案
在部署服務時,總是會面臨這樣一個問題:選擇哪種方式比較好? 虛擬機器或專用實體伺服器沒有單一的答案:這取決於工作負載、延遲的嚴重程度以及成本和靈活性目標。
實體(裸機)伺服器提供 最大毛產量無需虛擬機器管理程式的額外開銷。它們是高效能事務資料庫、GPU密集型工作負載(人工智慧、3D渲染、進階CAD)或即時服務(遊戲、高編碼串流)的首選,在這些應用中,每一毫秒都至關重要。
另一方面,虛擬機器在以下環境中表現出色: 高靈活性和可擴展性網路服務, 微服務和容器開發和測試環境、虛擬桌面以及許多企業應用程式在虛擬化後都能很好地運行,從而實現快照、即時遷移、快速配置和集中式資源管理。
從許可和成本角度來看,如果使用按 CPU 或插槽付費的商業虛擬機管理程序,虛擬化環境可能更昂貴,但它可以節省硬體、空間和能源消耗。另一方面,專用實體伺服器的授權費用可能會更低,但如果僅託管少量應用程序,其資源利用效率會較低。
在實踐中,許多組織選擇 混合方法對於最關鍵和對效能要求最高的工作負載,使用實體伺服器;對於其餘服務,包括應用程式發布平台和 VDI,使用虛擬化叢集。
壓力測試和性能評估指標
要做出明智的決定,單憑直覺是不夠的:你必須進行衡量。 CPU、記憶體、磁碟和網路壓力測試 它們允許您將虛擬化環境與實體伺服器進行比較,並驗證效能損失對於特定應用程式是否可以接受。
像這樣的工具 系統工作台 它們有助於測量 CPU 的運算能力(例如,透過計算一定限度內的質數),而 memtester 或 stress-ng 等實用程式則可讓您在不同的負載條件下評估記憶體延遲和頻寬。
用於儲存的專用工具,例如 FIO 它們是衡量不同存取模式(順序讀取/寫入、隨機讀取/寫入或兩者混合)下 IOPS、吞吐量和延遲的事實標準。它們可以幫助您量化虛擬化層和所用磁碟後端類型的影響。
在網路層面,諸如以下公用事業公司 iperf3、netperf 和 ping 它們可以幫助您測量實體主機、虛擬機器和遠端用戶端之間的最大頻寬、平均延遲和抖動(抖動)。這些數據在發布圖形應用程式或具有高互動要求的遠端桌面場景中尤其重要。
將這些指標與真實世界的試點使用者體驗結合,可以進行設計調整:從升級某些虛擬機器的 RAM 或 CPU,到更改磁碟位置,修改並發 App-V 發布的最大大小,或決定某個資料庫應該在實體主機上運行。
綜上所述,應用虛擬化和精心設計的基礎設施能夠提供… 性能、靈活性和成本之間達到了非常理想的平衡。利用 App-V、UE-V、KVM 或商業虛擬機管理程序等技術,根據負載仔細選擇實體伺服器和虛擬機,並調整關鍵的發布和用戶配置文件參數,可以讓員工享受快速、隨時隨地可用的應用程序,而不會使底層複雜性成為業務瓶頸。

