Windows
將負載均衡器用作虛擬機或裸機
我們正在使用一個有大約 300 個並髮使用者的應用程序。現在一切都被虛擬化了:1 個 VM 作為負載平衡器,2 個 VM 作為 Web 伺服器,(在這個 ESXi 主機上還有另外 25 個其他 VM)和 1 個伺服器(裸機)作為 SQL Server。我們在性能方面遇到了一些問題,因此決定購買物理硬體來提升它。
我不確定,我們如何才能獲得更好的性能?:
- 我們購買了 1 個機架伺服器硬體並僅使用上述所有 3 個虛擬機執行 ESXi,
- 我們為 Web 伺服器購買 1-1 機架伺服器硬體,並僅使用應用程序安裝 Windows 伺服器。(並像以前一樣保留負載平衡器 - VM)
- 我們為負載平衡器和 2 個 Web 伺服器購買了 3 個機架伺服器。
使用者通過 Web 界面/桌面應用程序連接到伺服器。
謝謝你的幫助,德魯多
在決定前進的道路之前,您應該找到一些資訊:
受影響虛擬機的 CPU 使用率
- 從客戶機作業系統的角度來看,CPU 使用率是否經常超過 80%,和/或顯示出平穩期而不是使用高峰期?您的虛擬機很可能 CPU 不足。添加更多 vCPU(但考慮可能的許可問題)。
- 您的伺服器中的某些 vCPU 的負載是否明顯低於其他 vCPU?您的應用程序中可能存在擴展問題,簡單地將更多 vCPU 投入單個 VM(或投入物理機)將無濟於事。
- 時間是否
CPU ready
表明主機已被過度使用?您有時會看到一條經驗法則是,您希望平均準備時間少於 5%,但我的經驗是,即使這對於您實際工作的系統來說也太多了。請注意,如果您使用 vCenter,指示的準備時間自上次圖形更新以來的總毫秒數。在“實時”視圖中,圖表每 20 秒(=20000 毫秒)更新一次,因此可以使用公式計算 VM 的每個 CPU 的平均百分比(indicated_ready_time * 100 / 20000) / number_of_vcpu
。記憶體使用情況
(應始終在來賓作業系統中進行檢查)
- 通常在 80% 以上?添加記憶體。
- 記憶體洩漏的跡象?修復應用程序或準備更頻繁地重新啟動/重新啟動。
- 大量交換的跡象?檢查配置問題。添加記憶體。
- 您是否有“莫名其妙”使用少於 4 GB 記憶體的關鍵應用程序/程序?它們可能需要重建或重新配置以使用 64 位定址。
還要檢查磁碟和網路性能是否存在延遲問題。
根據您的應用程序的擴展方式,添加更多 Web 伺服器而不是在現有伺服器上增加計算能力或記憶體可能是一個想法。
一旦您了解了瓶頸在哪里以及如何最好地利用您的硬體,您就可以開始製定購買什麼的商業案例。
虛擬機的主要情況是它們更易於管理、更易於備份並且在系統故障時更易於遷移。它們可以更好地利用您的硬體,前提是它們實際上不需要您可以投入的所有資源,並且如果您使用半虛擬化網路介面,同一主機上的機器之間的通信速度與 CPU 可以管理的速度一樣快,而不是受限於物理網路介面速度。
當然,直接在物理機器上執行的系統不會因為資源共享而產生成本,但這只有在您可以使用可用電源的情況下才有好處。