Windows 檔案伺服器效能調整

Windows 檔案伺服器效能調整

我尋求您的意見和提示/建議來優化我正在建立的新 Windows 檔案伺服器的效能。我繼承了一台 Dell NF500 儲存伺服器(基本上是帶有 Windows 2k3 儲存伺服器作業系統的 Dell 2950)。它具有 PE​​RC 6i,具有 256mb BBU 快取和 6 個 750GB SATA 驅動器以及 4GB 系統記憶體。我想我會選擇 RAID6,因為我擔心如果 RAID6 磁碟區損壞,在長時間重建過程中會遺失第二個磁碟機。 RAID6磁碟區將使用5個磁碟機和1個磁碟機作為熱備用,是的,我們非常偏執,但也遵循我們的標準,即所有伺服器都有熱備用。

話雖如此,我想徵求您對優化效能的其他提示和建議的意見。它將透過 SMB/CIFS/NFS 作為 Windows、Mac 和 Linux 用戶端的檔案伺服器(隨機讀取/寫入,檔案大小通常很小,但也有一些很大)。

  • RAID 控制器端有什麼特殊設定嗎?目前,條帶元素設定為 256kb(最高可達 512k,可能為 1mb),得益於 BBU,自適應預讀策略和快取寫回。我應該讓條紋元素尺寸更大嗎?

  • 有分區/檔案系統層級的調整嗎?我依稀記得讀過一些關於對齊磁碟分區的開頭、驅動器數量、使用正確的塊大小構建文件系統等的內容。 。

  • 有作業系統等級的調整嗎?由於它是單一 RAID 卷,因此我將作業系統和資料儲存放在一個分割區上還是應該進行分割區是否重要?我還打算使用 VSS,那應該是另一個單獨的分割區嗎?它甚至可以在同一個分區上嗎?

  • 其他最佳實踐?

提前致謝。我是一名路由器/交換器/韌體人員,所以這對我來說有點新鮮。 C。

答案1

磁碟子系統: 以下是 Microsoft 的一篇文章:SQL Server 2008 中的分割區對齊:http://msdn.microsoft.com/en-us/library/dd758814.aspx

文章中解釋的理論是我給您連結的原因,而不是因為我認為您將執行 SQL Server。檔案伺服器的工作負載不像 SQL Server 那樣對分割區對齊如此敏感,但每一點都會有所幫助。

NTFS:

您可以使用以下命令停用 NTFS 中的上次存取時間戳記:

fsutil behavior set disablelastaccess 1

您可以透過以下方式停用短檔名建立(如果您沒有需要它的應用程式):

fsutil behavior set disable8dot3 1

考慮您要放入盒子中的檔案類型的最佳 NTFS 簇大小。一般來說,您希望擁有盡可能大的集群大小,並在子集群大小的檔案浪費的空間和浪費的空間之間進行平衡。您還需要嘗試將叢集大小與 RAID 條帶大小相符(並且如上所述,讓條帶與叢集對齊)。

有一種理論認為,大多數讀取都是連續的,因此條帶大小(通常是 RAID 控制器的最小讀取)應該是簇大小的倍數。這取決於伺服器的特定工作負載,您需要對其進行測量才能確定。我會讓它們保持不變。

如果您將擁有大量小文件,您可能需要先為 NTFS 主文件表 (MFT) 保留較大的空間,以防止將來出現 MFT 碎片。除了討論上面的 fsutil 命令之外,本文檔還描述了「MFT 區域」設定:http://technet.microsoft.com/en-us/library/cc785435(WS.10).aspx 基本上,您希望根據磁碟區上預期的檔案數量為 MFT 保留您認為需要的盡可能多的磁碟空間,以嘗試防止 MFT 碎片。

此處提供了 Microsoft 關於 NTFS 效能最佳化的一般指南:http://technet.microsoft.com/en-us/library/cc767961.aspx 這是一個老的文檔,但它仍然提供了一些不錯的背景。不一定要嘗試它所說的任何“技術東西”,但要從中獲取概念。

佈局:

您將與人們就作業系統和資料分離問題進行宗教爭論。對於這個特定的應用程序,我可能會將所有內容堆放在一個分區中。會有人過來告訴你我錯了。你可以自己決定。當作業系統分割區填滿時,我看不出有什麼邏輯理由可以「繼續工作」。由於它們不是單獨的 RAID 卷,因此將作業系統和資料分成分割區不會帶來效能優勢。 (如果它們是不同的主軸,那就是不同的故事了...)

卷影副本:

卷影副本快照可以儲存在同一磁碟區或另一個磁碟區上。我對與卷影副本相關的性能問題沒有太多背景知識,因此在說一些愚蠢的話之前我將先到此為止。

答案2

WSS 已經做了很多預設建議的事情:參見Windows 儲存伺服器部落格

檔案伺服器效能最佳化 Windows Server 2003 中有一些設定可以加速網路流量和 NAS 操作,例如刪除檔案系統別名、關閉 8.3 名稱建立以及設定 TCP ACK 頻率以更好地利用網路幀大小和有關詳細信息,請參閱效能調整白皮書。

請注意,磁碟對齊應該在工廠完成。

答案3

與此設定中的其他 RAID 選項相比,RAID 6 會大大降低讀取 IO 的效能,並且在寫入 IO 方面會非常苛刻。除非您絕對需要擁有所有空間,否則我建議您考慮 RAID 10。 Evan 建議的分區對齊、將條帶大小與檔案系統區塊大小相匹配以及更改上次訪問時間等都是極好的建議,總共可將吞吐量提高 30% 或更多。 RAID 10 的讀寫速度至少提高 100%,且其重建時間只是 RAID 5 或 6 的一小部分。

RAID 10 - 4 個驅動器,附 2 個熱備用。有效容量1500GB。持續隨機讀取將是基本驅動器 IOPS 的約 4 倍。持續隨機寫入將(高達)基本驅動單元寫入 IOPS 的 2 倍。重建時間 - 對於像您這樣的系統,空閒時需要 4-6 小時,在平均負載下可能是該時間的兩倍。

RAID 5 - 5 個驅動器,附 1 個熱備用。有效容量3000GB。持續隨機讀取將是基本驅動器 IOPS 的約 4 倍。持續隨機寫入將使單一基本磁碟機的寫入 IOPS 提高約 1 倍(假設每個寫入 IO 需要 2 次讀取和 2 次寫入)。重建時間 - 閒置時一天以上,典型負載時幾天。

RAID 6 - 5 個驅動器,附 1 個熱備用。有效容量2250GB。持續隨機讀取將是基本驅動器的約 3 倍。持續隨機寫入約為單一基本磁碟機寫入 IOPS 的 66%(每個寫入 IO 需要 3 次讀取和 3 次寫入)。重建時間 - 系統相對空閒的天數,在典型負載下則延後一週。

當然,您的情況可能會有所不同,如果您沒有太多持續的隨機IO,則其中大部分將被緩存隱藏,但RAID 6 的持續性能影響相當嚴重,尤其是在陣列中使用相對較少的驅動器實現時。

答案4

Evan 和 Helvick 都很到位,所以我只增加一個額外的資源。這Windows Server 2003 效能調優指南文件涵蓋了許多注意事項和幕後調整,儘管正如 Jim 所提到的,儲存伺服器經過預先調整以優化文件共享工作負載。

相關內容