Ubuntu

32GB ubuntu 虛擬化伺服器需要多少交換空間?

  • March 3, 2010

我在這裡查看了有關交換空間的許多其他問題,但我發現沒有一個問題真正解決了我的特殊情況。

我有一個 Ubuntu 9.10 64 位伺服器,32GB RAM 作為 KVM 主機系統執行。我在 RAID1 之上使用 LVM。

“老式”交換建議建議使用 2xRAM 或 2xRAM+1GB,甚至if MEM < 2GB then SWAP = MEM*2 else SWAP = MEM+2GB. 但是我只是看不到分配 66GB 的磁碟空間用於交換,這似乎很瘋狂!我認為 4GB 或 8GB 就足夠了。

該系統將執行多個 KVM 虛擬伺服器。在這種情況下交換如何工作?我是否應該為主機伺服器創建一個交換分區,然後每個虛擬伺服器都有自己的 LVM 根和 LVM 交換分區?或者虛擬伺服器是否共享主機的交換?

嚴格來說,Linux 根本不需要任何交換——尤其是當你有大量 RAM 時。對於 KVM,您需要有足夠的記憶體來支持所有機器。因此,如果您有 20 個 VM,每個 VM 具有 1GB RAM,則您需要在可用的主機上具有 20GB RAM。但是,每個單獨的 VM 都可以配置有自己的交換空間,例如每個虛擬機都有 2GB 的交換空間。這樣,每個虛擬機都可以管理自己的交換。您可以為每個單獨配置swappiness

4GB 的量就足夠了。我不完全確定虛擬伺服器的交換是如何工作的,但我假設它們每個都有自己的交換。

在這種情況下,您應該為主機系統留出大約 2GB 的 RAM,或者只留 1GB,這取決於您看到在分配了大部分記憶體的機器上使用了多少。交換非常慢,在您的 RAID-1 系統上,使用如此高端的機器,您永遠不想交換。

附帶說明一下,您可能需要考慮在 RAID-10 中執行 4 個磁碟,最好是 SAS 驅動器,以便為節點上的所有虛擬伺服器提供足夠的 I/O,儘管根據您正在執行的內容,這可能不是必需的.

引用自:https://serverfault.com/questions/118639