程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 為SQL Server虛擬化選擇合適的硬件

為SQL Server虛擬化選擇合適的硬件

編輯:關於SqlServer

SQL Server和虛擬化天生就是一對,而且它們變得越來越協調。它們之間的配 合不僅是工作負載管理和整合,還能得到高可用性。新技術可以在多台主機上為 SQL Server提供多處理器能力,保持虛擬機實例彼此步調一致,這樣就可以實現 在某一個實例停機時的零等待故障切換。

但是,要做到這一切,你需要一 些硬件,為運行SQL Server的虛擬主機購買硬件與為SQL Server本身選擇硬件是 有些不同的。你還必須規劃一下你的SQL Server實例。處理大數據庫的繁忙實例 可能自己整個就要占一個虛擬機,而較小的實例可能需要多個實例一起部署在單 個虛擬機中。

請記住,虛擬機已經變成了你的基本管理單元:你可以把虛 擬機挪動到不同的主機上,或者做故障切換等等,但是虛擬機內的每個實例也都 隨著虛擬環境一起走。我們要集中精力建立需要盡可能少處理器就能完成任務的 虛擬機環境,那將使每個虛擬機以更小的粒度處理它們的工作負載,這也會使那 些虛擬機與同一主機上的其它虛擬機更容易協作。

在配備主機時,有三件 事情要考慮:磁盤吞吐量,內存和處理器。在最開始,你的資金最好投資在處理 器上。不管是刀片服務器和緊湊的1U服務器誰做SQL Server的主機:你都會塞進 更多處理器插槽和內核給4U的底架,這一底架運行一般比類似的1U和2U機架需要 較少的制冷和電源需求。

為處理器速度找到“最有效點”,你可以用你花 的錢得到最佳性能,不要只是挑選速度最快的。多加的那一點兆赫並不能給你帶 來巨大的性能改善。當然,要關注服務器級別的處理器。如果你是那種相信拿基 於迅馳技術的主板現貨就能構建服務器的人,那麼在為SQL Server挑選托管主機 時,還是請拋棄那種觀點吧。

內存是下一項開支。內存當然是越多越好了 。現今的許多管理程序通常都支持過量使用內存,也就是說你可以配置你的虛擬 機使用更多內存,總共加起來可能要比主機本身的實際內存還要多。許多環境在 配置允許50%過量使用的情況下,仍然表現良好,但是SQL Server也是真正的內存 吞噬者。分析SQL Server實例可以看看它們通常會消耗多少內存,然後相應規劃 你的過量使用值,如果虛擬機一直要運行SQL Server實例的話,請不要把虛擬機 放在同一台主機上,這樣往往容易超出最大內存分配。

有一點請記住, SQL Server會盡力使用操作系統能提供的所有內存,這一點比其它服務器應用程 序更強烈,因此如果Windows認為它有12GB內存,SQL Server通常會最大程度地利 用它。這種機制會使得過量使用內存的設置遇到問題,所以處理起來要謹慎些。 實際上,大部分有經驗的數據庫管理員在虛擬化SQL Server時一點也不喜歡過量 使用內存。

這就是說,在你購買服務器時,內存量是可以克扣的一項。因 為內存不夠的話你可以後來再加,即便你在服務器上已經安裝了足夠的內存模塊 ,你還得留出空余插槽便於將來擴展。當然,也不要便宜了你買的內存,要充分 利用。要使用糾錯內存,而且要使它與服務器主板的速度相匹配。換句話說,不 管你選擇哪家服務器供應商推薦給你的服務器,最好從同一家供應商購買內存。 畢竟,如果你的內存出了問題,這家供應商最可能給你提供支持。

磁盤是 最後一項,在大多數SQL Server的環境中,人們一般都會建立存儲區域網(SAN), 而不是嚴重依賴服務器的內部存儲。(你可能會建立內部硬盤的鏡像組來運行SQL Server和Windows本身,但不會用來存儲數據。)至於優先順序,請為容錯,速度 和容量構建你的SAN;如果你認為你需要一個10TB的SAN,那麼容量就是你要考慮的 最後一個因素。

首先,要確保你能支付得起足夠的存儲冗余,這樣就能在 少量磁盤故障時不丟失數據,同時你必須建立足夠快的I/O訪問來支持SQL Server 運行。SQL Server最常見的瓶頸就在於存儲速度,所以我們幾乎不可能建立“太 快”的SAN。在虛擬環境中尤其如此,因為在數據寫到虛擬磁盤鏡像時帶來了I/O 開銷。

雖然SQL Server具備在虛擬機上運行的完美能力,但是要為SQL Server虛擬主機購買硬件並配置虛擬機需要一定的專門方法。簡單地把你現有的 SQL Server實例遷移到配置不當的虛擬機中或者低配置的主機上,會極大地降低 性能。我們無需冒這個風險:只要你把這些注意事項牢記在心,你就會獲得SQL Server運行所需的高效的虛擬基礎設施。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved