Virtualbox 來賓透過 SSH 回應非常緩慢,VBoxHeadLess 停留在 99.9% 的系統時間

Virtualbox 來賓透過 SSH 回應非常緩慢,VBoxHeadLess 停留在 99.9% 的系統時間

我一直在一台相對較新的筆記型電腦上使用 Vagrant/virtualbox,該筆記型電腦具有不錯的規格(16GB 內存、Intel i7 4710HQ cpu、雙 m-sata SSD)。

到目前為止,對於我運行的每個來賓,我都會遇到非常高的延遲,透過 SSH 進行的按鍵會在幾秒鐘後回顯。 (我確實透過反向 DNS 查找和 GSSAPI 驗證檢查了常見的 SSH 連線問題,它們不適用,只會影響初始連線。)

同時(以及在其他隨機時間)一個核心將旋轉至 100% 利用率,這全部被 VBoxHeadLess 內部消耗select()

$ ps -o time -p  5257; time sudo strace -c -p 5257 ; ps -o time -p  5257
TIME         
00:23:51
Process 5257 attached
^CProcess 5257 detached
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 99.95    3.214696      128588        25           select
  0.03    0.000822          29        28           read
  0.02    0.000521          23        23           futex
  0.01    0.000413          21        20           sched_yield
------ ----------- ----------- --------- --------- ----------------
100.00    3.216452                    96           total

real    0m3.81s
user    0m0.00s
sys     0m0.01s
    TIME
00:23:55

$ ps -fp  5257
UID        PID  PPID  C STIME TTY TIME     CMD
henk      5257 25788 45 16:34 ?   00:18:20 /usr/lib/virtualbox/VBoxHeadless

注意ps -o time輸出:

00:23:51  (before)
00:23:55  (after)

結合time ...3.81s 的結果,這證實了該進程實際上將所有時間都花在內核中,只是等待事件。

同時,主機內核似乎正在旋轉鎖以解決該問題select()

我在一台更普通的 i5 筆記型電腦上使用了 virtualbox/vagrant,具有相同的 ubuntu 14.04,但從未見過這種行為。

問題:

  1. 我怎麼能更深入地找出這裡cpu浪費過多的原因呢?
  2. 有人熟悉同樣響應緩慢的 virtualbox 用戶端嗎?

更新

重新啟動後,我無法毫無問題地運行我的盒子。可能的解釋:我可能已經安裝了核心更新而沒有重新啟動。

我還消除了虛擬化模組衝突的潛在問題。昨天我確實從核心中刪除了 kvm 模組,但沒有任何改進。今天,模組在重新啟動後恢復正常,但對 vbox 效能沒有影響。

相關內容