要考慮CPU的數量問題,全部guestCPU的總數目不要超過物理機CPU的總數目。若是超過,則將對性能帶來嚴重影響,建議選擇複製主機CPU配置後端
內存分配的最小單位是page(頁面),默認大小是4KB。能夠將host機內容相同的內存合併,以節省內存的使用,特別是在虛擬機操做系統都同樣的狀況下,確定會有不少內容相同的內存值,開啓了KSM,則會將這些內存合併爲一個,固然這個過程會有性能損耗,因此開啓與否,須要考慮使用場景。緩存
而KSM對KVM環境有很重要的意義,當KVM上運行許多相同系統的客戶機時,客戶機之間將有許多內存頁是徹底相同的,特別是只讀的內核代碼頁徹底能夠在客戶機之間共享,從而減小客戶機佔用的內存資源,能同時運行更多的客戶機性能優化
cd /sys/kernel/mm/ksm ll
每一個頁面的大小爲4KB,可計算出共享內存爲:4*頁面數=內存大小(KB)
KSM會稍微影響系統性能,以效率換空間,若是系統內存很寬裕,則無需開啓KSM,若是想盡量多地並行運行KVM客戶機,則能夠打開KSM服務器
若是咱們有多個虛擬機,爲了防止某個虛擬機無節制地使用內存資源,致使其餘虛擬機沒法正常使用,就須要對內存的使用進行限制ide
在邏輯地址向物理地址轉換時,CPU保持一個翻譯後備緩衝器TLB,用來緩存轉換結果,而TLB容量很小,因此若是page很小,TLB很容易就充滿,這樣就容易致使cache miss,相反page很大,TLB須要保存的緩存項就變小,就會減小cache miss。經過爲客戶機提供大頁後端內存,就能減小客戶機消耗的內存並提升TLB命中率,從而提高KVM性能。工具
使用大頁,KVM的虛擬機的頁表將使用更少的內存,而且提升CPU的效率。性能
或者在/etc/sysctl.conf 中添加vm.nr_hugepages=2500來持久設定大頁文件系統須要的內存頁面數優化
編輯虛擬機的XML配置文件來使用大頁分配內存操作系統
在實際的生產環境中,爲了不過分消耗磁盤資源而對其餘的虛擬機形成影響,咱們但願每臺虛擬機對磁盤資源的消耗是能夠控制的。就能夠調整I/O的權重weight,權重越高寫入磁盤的優先級越高。插件
一、總體的權重,範圍在100-1000
二、限制具體的I/O
tuned是服務端程序,用來監控收集系統各個組件的數據,並依據數據提供的信息動態調整系統設置,達到動態優化系統的目的
- virtual-guest:企業級服務器配置中使用這個profile,其中包括電池備份控制程序、緩存保護以及管理磁盤緩存 - latency-performance:延遲性能調試的服務器配置 - enterperise-storage:企業存儲服務器優化方案 - default:默認節點配置,是最基本的節點配置,只啓用磁盤和CPU插件 - virtual-host:根據enterperise-storage配置,virtual-host還可減小可置換的虛擬內存,並啓用更多集合髒頁寫回。同時推薦在虛擬化主機中使用這個配置,包括KVM和紅帽企業版Linux虛擬化主機 - throughput-performance:吞吐性能調整的服務器profile。若是系統沒有企業級存儲,建議使用這個profile