在 Linux 上进行 IO 测量和发现瓶颈的好工具有哪些?

发布于 2024-07-21 13:26:25 字数 182 浏览 9 评论 0原文

我正在尝试对基于 SAN 基础设施的 Linux 机器上的 Oracle 进行一些调整。 我正在专门寻找允许我们分析每个进程 IO 的工具(或者每个进程树会更好)。 我的问题是?

  • 建议使用哪些工具来完成此类任务?
  • 我还应该在基于 SAN 的基础设施上测量哪些其他有用的指标?

I'm trying to do some tuning for Oracle on Linux boxes living on SAN based infrastructure. I'm looking specifically for tools that would allow us to profile IO per process (or per process tree would be even better). My questions are?

  • What are the tools that would be recommended for this kind of task?
  • What other useful metrics should I seek to measure on a SAN based infrastructure?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

忘东忘西忘不掉你 2024-07-28 13:26:25

我使用“iotop”取得了很好的效果。 它获取每个进程的特定信息以及 IO 使用情况。

它的工作原理就像“top”

http://guichaz.free.fr/iotop/

我不是不过,请确定从安装了 SAN 的 Linux 机器上使用是否合理,或者您想要一个可以在 SAN 中运行的工具。

I have used "iotop" with great results. It gets specific info per process with IO usage.

It works like "top"

http://guichaz.free.fr/iotop/

I am not sure though if it would be reasonable to use from a Linux box that has the SAN mounted or if you wanted a tool that could run within the SAN.

笑咖 2024-07-28 13:26:25

一旦您开始专业化,我发现最简单的事情就是编写一些自定义脚本,从 /proc 下的文件中提取信息。

如果您正在进行分析,而您还没有一个工具可以为您提供所需的准确报告,那么您可能最终会编写一些脚本,并且您在 Linux 下使用的大多数工具都只是不管怎样,去 /proc 获取他们的信息,然后为你重新格式化。

如果您更了解数据库方面的内容,定期从 /proc 中提取信息、添加时间戳并以可导入 RDBMS 的方式记录它可能会非常有用。 如果您将所有服务器和进程性能信息放入单个 RDBMS 中,这会特别好,因为这样您就可以比较任意的事物,例如同一应用程序在不同服务器上的性能。

请记住,如果您进一步这样做,您可能会开始添加来自不同来源的信息,例如主机的 IPMI 监控,因此,一旦您使用了超过 /proc 的内容,就不要执行必须撤消的操作。

Once you start to get this specialized, I've found that the easiest thing to do is to write some custom scripts that pull information from files under /proc.

If you're analysis for which you don't already have a tool that gives you the exact report you need, you're probably going to end up doing some scripting anyway, and most of the tools you'd use under Linux are just going to /proc to get their information anyway and then reformatting it for you.

If you're more into the databasey side of things, pulling info from /proc on a regular basis, adding timestamps, and recording it in a way that it can be imported into an RDBMS can be very useful. This can be particularly good if you put all of your server and process performance information into a single RDBMS, because then you can compare, arbitrary things such as the performance of the same application on different servers.

Keep in mind that if you go further with this, you my start adding information from different sources, such as IPMI monitoring of hosts, so don't do things that you'll have to undo once you're using more than /proc.

黯然#的苍凉 2024-07-28 13:26:25

您可以使用 sysstat 实用程序,它是性能监视工具的集合
Linux。

来自网站 (perso.orange.fr/sebastien.godard/)

    * Can monitor a huge number of different metrics:

     1. Input / Output and transfer rate statistics (global, per device, per partition, per network filesystem and per Linux task / PID)
     2. CPU statistics (global, per CPU and per Linux task / PID), including support for virtualization architectures
     3. Memory and swap space utilization statistics
     4. Virtual memory, paging and fault statistics
     5. Per-task (per-PID) memory and page fault statistics
     6. Global CPU and page fault statistics for tasks and all their children
     7. Process creation activity
     8. Interrupt statistics (global, per CPU and per interrupt, including potential APIC interrupt sources)
     9. Extensive network statistics: network interface activity (number of packets and kB received and transmitted per second, etc.) including failures from network devices; network traffic statistics for IP, TCP, ICMP and UDP protocols based on SNMPv2 standards; support for IPv6-related protocols.
    10. NFS server and client activity
    11. Socket statistics
    12. Run queue and system load statistics
    13. Kernel internal tables utilization statistics
    14. System and per Linux task switching activity
    15. Swapping statistics
    16. TTY device activity
    17. Power management statistics

You can use sysstat utilities which are a collection of performance monitoring tools for
Linux.

From the website (perso.orange.fr/sebastien.godard/)

    * Can monitor a huge number of different metrics:

     1. Input / Output and transfer rate statistics (global, per device, per partition, per network filesystem and per Linux task / PID)
     2. CPU statistics (global, per CPU and per Linux task / PID), including support for virtualization architectures
     3. Memory and swap space utilization statistics
     4. Virtual memory, paging and fault statistics
     5. Per-task (per-PID) memory and page fault statistics
     6. Global CPU and page fault statistics for tasks and all their children
     7. Process creation activity
     8. Interrupt statistics (global, per CPU and per interrupt, including potential APIC interrupt sources)
     9. Extensive network statistics: network interface activity (number of packets and kB received and transmitted per second, etc.) including failures from network devices; network traffic statistics for IP, TCP, ICMP and UDP protocols based on SNMPv2 standards; support for IPv6-related protocols.
    10. NFS server and client activity
    11. Socket statistics
    12. Run queue and system load statistics
    13. Kernel internal tables utilization statistics
    14. System and per Linux task switching activity
    15. Swapping statistics
    16. TTY device activity
    17. Power management statistics
枯寂 2024-07-28 13:26:25

我通常使用 atop 来监视系统上的负载。 某些功能要求您修补内核,但它提供了有关 I/O 的精确信息以及其他信息。

I usually use atop to monitor the load on my systems. Some features require that you patch the kernel, but it gives precise information about I/O as well as other info.

红墙和绿瓦 2024-07-28 13:26:25

我还应该在基于 SAN 的基础设施上衡量哪些其他有用的指标?

CPU负载。 这是oracle数据库的主要指标。

What other useful metrics should I seek to measure on a SAN based infrastructure?

CPU load. It's Main metrics for oracle database.

臻嫒无言 2024-07-28 13:26:25

根据您想要达到的低级别,System Tap 可能对您非常有用。 它类似于 Solaris 上的 DTrace。

Depending on how low-level you want to get, System Tap could be very useful for you. It is similar to DTrace on Solaris.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文