《vSphere性能設計:性能密集場景下CPU、內存、存儲及網絡的最佳設計實踐》一導讀
前 言
很難想象我們已經在虛擬化行業中走了這麼遠。那些曾經被認為隻用於開發和測試使用的小技術如今已經用於生產工作,甚至用於關鍵業務級應用。VMware vSphere平台幾乎能夠無障礙地支撐任何虛擬化工作,接近100%的虛擬化。
現在的工作負載比以往任何時候都有更高的要求。電子郵件服務器經常需要大量的內存和CPU資源來處理每日大量的電子郵件。從容量和性能的角度看,數據庫服務器往往需要大量內存和存儲資源來滿足業務的需求。而且,最新的技術(如虛擬桌麵架構(VDI))在vSphere環境中更是有著迫切的資源需求。
為了滿足對更加強大的虛擬機的迫切需求,VMware繼續開發了vSphere平台。如今在vSphere平台上的虛擬機可以擁有64個虛擬CPU和1TB的內存,同時vSphere擁有大量的內存優化技術,來幫助提升存儲性能。VMware經過測試證明,許多大規模工作負載,如那些與Microsoft Exchange Server、SQL Server、Java相關的工作負載,虛擬化部署可以與在物理服務器上部署達到同樣的效果,甚至在某些情況下可以有更好的效果。
相對於正麵信息,人們傾向於長時間記住負麵信息,對虛擬機的性能也是如此。例如2005年在VMware ESX 2.x上虛擬化一個大的工作負載,其性能可能達不到部署在物理服務器上的性能表現。但是那意味著當今vSphere 5.5的表現也是如此不堪嗎?顯然,如今你會獲得更好的性能,但是很多人還是會以性能差為理由選擇物理服務器。
正是基於這個理由我們撰寫了本書,我們想要第一時間幫助那些擁有虛擬化解決方案的客戶。我們已經親眼看到,幾乎所有的工作負載都可以虛擬化,vSphere平台可以提供與物理設備近似或者同樣的性能。vSphere平台可以滿足今天大規模工作負載的需求,我們將會向你一一展示。
這本書涵蓋了你所需要的信息,以確保虛擬機性能能夠滿足應用和業務需求。我們希望通過閱讀這本書,你將不再擔心虛擬化工作負載的性能問題。
本書內容
本書從兩方麵介紹虛擬基礎設施的性能:概念方麵和實際操作方麵。
本書在概念方麵將重點介紹設計原理,即當你創造虛擬基礎設施和虛擬機時需要考慮的重要內容。本書還將展示如何排除性能故障,這也是對那些要求高性能的應用程序進行虛擬化時的一個重要話題。此外,本書還討論一套通用工具,可以幫助你校準性能、診斷問題、檢測持續性能。
本書還討論虛擬基礎設施性能的實際操作方麵,包括分配虛擬機的CPU、內存、網絡、存儲時需要考慮的特定注意事項。理解這些原理並正確地分配這些資源會對你環境中所有虛擬機的性能產生巨大影響。每一章都會介紹通用的故障排除方法,這些方法可以用來診斷和解決CPU、內存、網絡與存儲性能問題。
本書各章主要內容如下:
第1章首先重點介紹如今在虛擬環境中構建數據中心性能時經常忽視的必要設計因素。通過現實設計案例,闡述使用數據中心已有資源構建應用程序的原則。
第2章提供虛擬化管理員工具箱裏必備的工具,包括容量規劃、性能基準管理、仿真vSphere的工具。這一章闡述這些工具的作用以及何時在容量規劃、性能基準管理或者分析性能中使用這些工具。
第3章將介紹何時建立以及為什麼建立一個測試實驗室。另外,這一章還闡述將實驗室擴大的可用工具和資源。該章還將為你的實驗室提供一個獨立的故障排除解決方案集。
第4章闡述在ESXi平台中CPU進程調度的基礎知識,以及在如今現代處理器中硬件虛擬化增強的功能。該章還涉及CPU大小的推薦標準,從而為你的虛擬機提供良好的性能。本章還介紹了排除CPU性能故障的技術。
第5章闡述VMware ESXi管理內容的多種方法,包括工作負荷如何共享內存、如何從VM中回收內容。該章還涉及為虛擬機提供良好性能的內存大小的推薦標準以及排除內存性能故障的技術。
第6章闡述設計物理以及虛擬網絡的方法,從而支持你的vSphere環境,包括主機選擇會如何影響你的網絡選項。還涉及推薦的網絡分配和配置,以及排除網絡性能故障的技術。
第7章闡述設計滿足性能需求的物理和虛擬存儲的方法。VMware在vSphere平台中引入很多的存儲增強機製,該章將闡述這些機製及其使用方法,從而為虛擬機提供良好性能。還涉及排除存儲性能故障的技術。
目 錄
Contents 目錄
獻詞
譯者序
前言
致謝
作者簡介
第1章 性能設計
1.1 準備工作
1.1.1 確定參數
1.1.2 構建應用程序
1.1.3 評估物理性能
1.1.4 從默認值開始
1.2 建立基準
1.2.1 CPU基礎設施基準
1.2.2 內存
1.2.3 網絡
1.2.4 存儲
1.3 構建應用程序
1.4 考慮許可要求
1.5 集成虛擬機
1.5.1 虛擬機可擴展性
1.5.2 vMotion
1.5.3 分布式資源調度
1.5.4 高可用性
1.6 了解設計要素
1.7 小結
第2章 建立你的工具箱
2.1 容量規劃工具
2.1.1 VMware容量規劃器
2.1.2 微軟評估和規劃工具包
2.1.3 使用容量規劃工具
2.1.4 運行容量管理
2.2 性能分析工具
2.2.1 esxtop
2.2.2 vscsiStats
2.3 性能基準測試工具
2.3.1 VMmark
2.3.2 vBenchmark
2.4 性能仿真工具
2.4.1 CPU/內存
2.4.2 存儲
2.4.3 網絡
2.5 小結
第3章 測試實驗室
3.1 為什麼要建立一個測試實驗室
3.1.1 在投入生產之前測試變化
3.1.2 測試新的應用和補丁
3.1.3 重現生產問題
3.1.4 模擬性能問題來排除故障
3.1.5 新硬件的基準測試
3.1.6 學習虛擬化
3.2 成功構建測試實驗室的策略
3.2.1 建立一個真實的環境
3.2.2 建立實驗室
3.2.3 使用合適的測量工具
3.3 如何建立你的實驗室
3.3.1 測試目標
3.3.2 實驗室小結
3.3.3 供應實驗室
3.3.4 定義IOmeter的工作負載和配置
3.3.5 實驗室的事後分析
3.4 小結
第4章 CPU
4.1 CPU虛擬化基礎
4.1.1 x86架構下的CPU保護模式
4.1.2 定義CPU虛擬化的類型
4.1.3 物理CPU和虛擬CPU之間的區別
4.1.4 vCPU狀態
4.2 ESXi CPU的調度程序
4.2.1 比例分配算法
4.2.2 CPU聯合調度
4.2.3 CPU調度單元
4.2.4 CPU拓撲感知負載均衡
4.2.5 多核感知負載均衡
4.3 為虛擬機調整CPU大小
4.3.1 vSMP的注意事項
4.3.2 NUMA與vNUMA的注意事項
4.3.3 CPU資源熱插拔
4.4 CPU資源管理
4.4.1 CPU保留
4.4.2 CPU限製
4.4.3 配置CPU保留和限製
4.4.4 資源池
4.5 CPU性能問題的故障排除
4.5.1 使用esxtop診斷CPU性能問題
4.5.2 高CPU就緒時間
4.5.3 ESXi主機的CPU使用率高
4.5.4 用戶的CPU高利用率高
4.6 小結
第5章 內存
5.1 ESXi內存管理
5.1.1 內存虛擬化
5.1.2 ESXi的內存管理
5.1.3 硬件輔助MMU虛擬化
5.2 虛擬機的內存回收
5.2.1 透明頁共享
5.2.2 內存膨脹
5.2.3 內存壓縮
5.2.4 管理程序內存交換
5.2.5 主機SSD緩存交換
5.2.6 主機內存回收
5.2.7 空閑頁回收
5.3 管理虛擬機內存分配
5.3.1 工作集大小
5.3.2 比例分配算法
5.3.3 改變虛擬機內存大小
5.3.4 內存開銷
5.3.5 內存過量
5.4 解決內存性能問題
5.4.1 使用esxtop來診斷內存性能問題
5.4.2 高虛擬機已消耗內存
5.4.3 高內存膨脹
5.4.4 管理係統內存交換
5.4.5 客戶機操作係統內存交換
5.5 小結
第6章 網絡
6.1 創建網絡設計
6.2 選擇虛擬交換機
6.2.1 標準vSwitch
6.2.2 vSphere分布式交換機
6.2.3 Cisco Nexus 1000V dvSwitch的思考
6.2.4 如何選擇虛擬交換機
6.3 選擇主機硬件
6.3.1 主機服務器類型
6.3.2 網絡適配器
6.4 性能設計
6.4.1 ESXi主機層性能
6.4.2 虛擬機性能
6.5 解決網絡問題
6.6 小結
第7章 存儲
7.1 選擇存儲平台
7.1.1 存儲區域網絡
7.1.2 網絡文件係統
7.1.3 虛擬SAN
7.2 設計物理存儲
7.2.1 確定你的需求
7.2.2 RAID級別
7.2.3 閃存基礎設施層
7.2.4 IP存儲網絡
7.3 設計vSphere存儲
7.3.1 存儲的重要性
7.3.2 VAAI
7.3.3 存儲I/O控製
7.3.4 存儲分布式資源調度程序
7.3.5 配置驅動存儲
7.3.6 數據存儲大小
7.3.7 vFlash讀緩存
7.3.8 虛擬SAN
7.3.9 IP存儲巨型幀
7.4 優化虛擬機性能
7.4.1 原始設備映射與VMDK文件
7.4.2 虛擬磁盤類型
7.4.3 虛擬SCSI適配器
7.4.4 客戶操作係統磁盤對齊
7.5 排除存儲故障問題
7.5.1 存儲延遲
7.5.2 錯誤配置應用程序的存儲
7.5.3 存儲隊列
7.5.4 端對端網絡
7.6 小結
最後更新:2017-06-22 12:02:00