具有空閒 ubuntu 12.04 來賓的 Ubuntu 12.04 KVM 主機高負載
我被這個困住了。
在兩台物理機上全新安裝 Ubuntu 12.04 伺服器 64 位。機器是相同的,除了一台有 8GB 記憶體,問題機器有 32GB 記憶體,兩台機器是同時購買的,規格相同。截至 24 小時前,Ubuntu 已完全更新。
我通過 SSH 隧道上的 X-windows 使用 virt-manager 來管理虛擬機,伺服器作業系統根本不執行 X-windows 會話,我的桌面執行。
建構並執行多個 Ubuntu 12.04 伺服器 64 位虛擬機,每個虛擬機分配 1GB RAM。虛擬機基本上都配置相同(原諒 MAC 地址等)。
8GB 機器有 2 個虛擬機,32GB 機器有 3 個虛擬機。所有虛擬機都報告低負載(小於 0.5,通常為 0.01)並且根本沒有得到高度利用。
8GB 主機伺服器報告的負載小於 0.1,通常為 0.01。32GB 主機伺服器報告負載持續大於 10.0。同樣,所有 VM 都報告小於 0.5 的內部負載。頂部的 CPU 95%+ 空閒,0.0% 等待。
關於為什麼 32GB 機器具有高負載(主機空閒和來賓空閒)而配置相同的 8GB 機器報告預期低負載的想法?
啟動一個 VM 時 32GB 的負載會變高,執行 3xVM 不會使負載變高。停止所有虛擬機會導致 32GB 機器負載下降。
我無法弄清楚這一點。我希望 32GB 負載與 8GB 負載相匹配。
更新#1:內森 C
top - 16:19:54 up 8 days, 6:01, 1 user, load average: 14.33, 18.23, 18.07 Tasks: 135 total, 1 running, 134 sleeping, 0 stopped, 0 zombie Cpu(s): 0.5%us, 0.4%sy, 0.0%ni, 98.9%id, 0.0%wa, 0.0%hi, 0.2%si, 0.0%st Mem: 32938864k total, 29307380k used, 3631484k free, 331324k buffers Swap: 4182436k total, 0k used, 4182436k free, 25330400k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 8752 libvirt- 20 0 3170m 747m 6932 S 7 2.3 26:27.20 /usr/bin/kvm -S -M pc-1.0 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name r -uuid ... 8720 libvirt- 20 0 3969m 928m 6936 S 3 2.9 76:17.66 /usr/bin/kvm -S -M pc-1.0 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name m -uuid ... 8687 libvirt- 20 0 3315m 1.0g 6936 S 2 3.3 60:33.03 /usr/bin/kvm -S -M pc-1.0 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name d -uuid ...
因此,經過大量調查,我現在發現了機器出了什麼問題。非常感謝幫助過的人!
一個有用的網頁在這裡:http: //itscblog.tamu.edu/improve-disk-io-performance-in-kvm/
基本上,我的物理主機有 SATA 磁碟,而虛擬機配置有 SATA 控制器和 SATA 磁碟。我不知道這意味著虛擬化子系統將呈現虛擬 SATA 而不是 SATA 直通。
解決方案是為磁碟切換到 virtio。這意味著虛擬機現在意識到它們是虛擬化系統的一部分,並且會合作以獲得更好的性能。(我認為這就是它的意思)。
長話短說,請始終將 virtio 用於虛擬機上的磁碟和網路。
主機現在處於大約 2-3 的快樂和涼爽的平均負載。比以前的 20-50 好多了。