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 / 问题 / 473049
Accepted
Robert MacLean
Robert MacLean
Asked: 2013-01-29 05:38:34 +0800 CST2013-01-29 05:38:34 +0800 CST 2013-01-29 05:38:34 +0800 CST

什么会导致 SAN 上的 IO 等待?

  • 772

当我在服务器上看到它时,我理解 IO 等待,这意味着在我等待 IO 赶上[source]时 CPU 被阻塞。

我试图了解为什么 SAN 统计信息会显示高 IO 等待 - 这是否表明 SAN CPU 被 SAN 磁盘阻塞或者是其他原因?

storage-area-network
  • 4 4 个回答
  • 3074 Views

4 个回答

  • Voted
  1. Best Answer
    Dennis Kaarsemaker
    2013-01-29T05:45:56+08:002013-01-29T05:45:56+08:00

    由于物理的基本定律,SAN 的 IO 延迟比本地磁盘高得多。因此,如果您的应用程序正在执行大量小写入,并且fsync()在每次写入之后,您会看到很多 iowait。

    例如,这里有两个包含许多小事务的同一数据集的 mysql 副本,您会看到 SAN 上的从属服务器花费更多时间进行 IO。

    桑: 在此处输入图像描述

    当地的:

    在此处输入图像描述

    • 8
  2. Basil
    2013-01-29T06:28:44+08:002013-01-29T06:28:44+08:00

    SAN 等待时间可能意味着您的存储是瓶颈。它也可能是服务器设置或服务器与存储之间的连接,但更常见的是,当我看到 SAN 磁盘的等待时间时,它只是一个繁忙的 SAN。

    首先,检查支持该卷的磁盘的性能。您正在寻找 IO/s 或 MB/s 读取或写入的峰值,以及潜在的缓存利用率峰值。尝试只查看您正在调查的卷中涉及的硬件。此外,及时回顾和向前看是否有更高的尖峰没有引起问题。如果是这样,那么存储硬件不太可能是问题所在。存储硬件瓶颈的纠正措施可能包括将此卷迁移到另一个池或 RAID,或者增加轴或缓存的数量。

    其次,检查服务器上的队列深度设置。如果您的队列深度非常高,您的服务器将在高利用率期间看到更高的延迟。队列深度是存储告诉服务器限制其 IO 以允许存储赶上的一种方式。32 是一个很好的平均数,我见过的大多数服务器操作系统和大多数存储设备都支持它。我也看到过更高和更低的工作,但如果它设置为 1024 或其他,这可以解释高等待时间。在队列深度非常高的情况下,服务器将它想做的所有事情都排入队列,然后存储以与队列深度低很多的情况下一样快的速度执行。由于服务器从某物进入队列和离开队列开始测量等待时间,因此等待时间会增加。

    最后,检查服务器的错误日志。确保没有传输级别问题(如磁盘超时或路径故障)。如果有,您需要查看开关。

    • 5
  3. EEAA
    2013-01-29T05:42:40+08:002013-01-29T05:42:40+08:00

    它的测量结果与在服务器上没有什么不同:传入的 IO 请求多于可用硬件资源可以处理的数量。

    • 1
  4. longneck
    2013-01-29T06:27:38+08:002013-01-29T06:27:38+08:00

    SAN 管理软件报告的高 IO 等待意味着 SAN 硬件无法满足 SAN 客户端的需求。这要么是因为您的硬件没有足够的负载能力,要么可能是某些地方出现故障或性能不佳。

    导致性能不佳的缓慢故障驱动器实际上很常见,尤其是在 RAID5 设置中。提取您所有驱动器的 SMART 日志,我敢打赌您会发现一个驱动器具有非常多的更正错误。(纠正这些错误需要时间。如果在一定时间内纠正了单个错误,则 RAID 控制器不会记录错误。但是堆积了很多这些错误,加起来会花费很多时间。这就是你如何获得糟糕的表现。)

    • 1

相关问题

  • Cisco FC SAN 交换机决策

  • 任何人都有在托管/数据中心理想的共享/vps 服务器设置的示例拓扑?

  • 如何监控 SAN 服务器(通过 iSCSI)?

  • Clariion CX 是否存在命令行配置工具

  • 有人对 LeftHand 的 VSA SAN 有经验吗?[关闭]

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

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

    • 9 个回答
  • Marko Smith

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

    • 3 个回答
  • Marko Smith

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

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +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