AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 39081
In Process
cs168
cs168
Asked: 2009-07-11 10:38:55 +0800 CST2009-07-11 10:38:55 +0800 CST 2009-07-11 10:38:55 +0800 CST

Windows 文件服务器性能调优

  • 772

我在优化我正在构建的新 Windows 文件服务器的性能方面寻求您的意见和提示/建议。我继承了戴尔 NF500 存储服务器(基本上是带有 Windows 2k3 存储服务器操作系统的戴尔 2950)。它有一个 PERC 6i,带有 256mb BBU 缓存和 6 个 750gb SATA 驱动器和 4gb 系统内存。我想我会使用 RAID6,因为如果 RAID6 卷变坏,我担心在长时间的重建过程中会丢失第二个驱动器。RAID6 卷也将使用 5 个驱动器和 1 个驱动器作为热备件,是的,我们非常偏执,但也遵循我们的标准,即所有服务器都有热备件。

话虽如此,我征求您对优化性能的其他提示和建议的意见。它将通过 SMB/CIFS/NFS 充当 Windows、Mac 和 Linux 客户端的文件服务器(随机 R/W 和文件大小通常很小,但也有一些较大的)。

  • RAID 控制器端有什么特殊设置吗?目前条带元素设置为 256kb(可以达到 512k 甚至可能 1mb)、自适应预读策略和缓存回写,这要归功于 BBU。我应该使条带元素大小更大吗?

  • 任何分区/文件系统级别的调整?我隐约记得读过一些关于对齐磁盘分区开始、驱动器#、构建具有正确块大小的文件系统等的内容。任何信息,包括链接,您都可以发送给我,以便我查看,将不胜感激。

  • 任何操作系统级别的调整?由于它是一个单一的 RAID 卷,我将操作系统和数据存储放在一个分区上还是应该分区有关系吗?我打算也使用 VSS,那应该是另一个单独的分区吗?它甚至可以在同一个分区上吗?

  • 其他最佳实践?

提前致谢。我是一个路由器/交换机/fw 人,所以这对我来说有点新。C。

performance windows-server-2003 optimization filesystems raid
  • 4 4 个回答
  • 9628 Views

4 个回答

  • Voted
  1. Evan Anderson
    2009-07-11T10:44:32+08:002009-07-11T10:44:32+08:00

    磁盘子系统: 这是 Microsoft 的一篇文章 re: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 卷,因此将操作系统和数据分成分区并没有性能优势。(如果它们是不同的纺锤,那就另当别论了……)

    影子副本:

    卷影副本快照可以存储在同一卷中,也可以存储在另一个卷中。我没有太多关于与卷影副本相关的性能问题的背景知识,所以在我说一些愚蠢的事情之前,我将停在那里。

    • 4
  2. Helvick
    2009-07-11T11:43:29+08:002009-07-11T11:43:29+08:00

    与此设置中的其他 RAID 选项相比,RAID 6 将大大降低读取 IO,并且在写入 IO 方面将非常苛刻。除非您绝对必须拥有所有空间,否则我建议您考虑使用 RAID 10。与系统上的 RAID 6 相比,您将损失 750GB,但性能差异将使您尝试的所有其他性能调整变得微不足道。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 的持续性能影响非常严重,尤其是在阵列中使用相对较少的驱动器实施时。

    • 1
  3. Jim B
    2009-07-11T13:16:00+08:002009-07-11T13:16:00+08:00

    WSS 已经做了很多默认建议的事情:请参阅Windows Storage Server 博客

    “文件服务器性能优化 Windows Server 2003 中有一些设置可以加快网络流量和 NAS 操作,例如删除文件系统别名、关闭 8.3 名称创建以及设置 TCP ACK 频率以更好地利用网络帧大小和速度。有关更多信息,请参阅性能调整白皮书。OEM 还可以通过设置 NIC 卡的中断亲和性并确保在设置 RAID 阵列时考虑正确的磁盘对齐来提高其性能。有关两者的更多信息,请参见下文这些话题。”

    请注意,磁盘对齐应该在工厂完成。

    • 1
  4. Sean Earp
    2009-07-11T13:21:56+08:002009-07-11T13:21:56+08:00

    Evan 和 Helvick 很到位,所以我将添加一个额外的资源。Windows Server 2003的性能调优指南文档涵盖了许多注意事项和内部调整,尽管正如 Jim 提到的,Storage Server 已预先调整以优化文件共享工作负载。

    • 0

相关问题

  • IIS 优化

  • 有什么理由使用 Windows Server 2003 而不是 Server 2008?

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

  • 在 Windows Server 2003 下使用 wscipt 从 .asp 文件运行 .exe

  • RAID 控制器通常是否存在 SATA 驱动器品牌兼容性问题?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve