
我目前在我的 FreeNAS 系統上使用 bhyve 管理程序,但只有 16G RAM,運行虛擬機器對系統來說或多或少是一種負擔。
我只有一現在運行 Debian 的虛擬機器。
這是它的配置:
Getting debianguest iohyve properties...
bargs -A_-H_-P
boot 1
con nmdm1
cpu 2
description Wed Feb 8 18:16:58 CET 2017
install no
loader grub-bhyve
name debianguest
os debian
persist 1
ram 3G
size 50G
tap tap0
template NO
vnc NO
vnc_h 600
vnc_ip 127.0.0.1
vnc_tablet NO
vnc_w 800
vnc_wait NO
重要的一點是ram=3G
它指定了 VM 可用的虛擬 RAM 量。
現在我的問題來了:這個虛擬機器正在使用方式更多主機上的 RAM 比我為其分配的 RAM 多。
輸出來自ps aux -O %mem
:
root 28769 9.1 32.2 7519108 5357236 - S 8:28PM 18:21.80 bhyve: ioh-debia
輸出來自htop
:
PID USER PRI NI VIRT RES S CPU% MEM% TIME+ Command
28769 root 20 0 7342M 5233M S 7.0 32.2 18:30.40 bhyve: ioh-debianguest
輸出來自free -h
:
total used free shared buff/cache available
Mem: 2.9G 1.1G 90M 71M 1.8G 1.6G
當僅配置 3 個時,它目前使用 5.2GB RAM。
它還具有約 90M 的可用空間,1.6GB 可用於應用程式和0K在交換中,讓我假設虛擬機器管理程式(bhyve)或核心以某種方式洩漏了記憶體。
編輯:
雖然我知道分配更多記憶體來提高效能是一件好事(我也希望如此),但強製進程本身被交換,甚至更糟的是,被OOM Killer 殺死,這讓我質疑這種效能目標有多激進。
有沒有辦法找出主機上使用的 RAM 多於分配的 RAM 的原因,以及有沒有辦法減少主機上使用的 RAM 量?