“Linux Storage Stack Diagram”,这张图对于Linux的存储架构有比较直观的描述。
Linux存储栈包括三部分:
- 虚拟文件系统
- 块设备层
- 物理设备层
图片链接为:https://www.thomas-krenn.com/en/wiki/Linux_Storage_Stack_Diagram
磁盘性能问题可使用以下工具进行排障:
# -d表示显示I/O性能指标,-x表示显示扩展统计(即所有I/O指标)
$ iostat -x -d 1
# 显示每个进程的 I/O 情况,以找到可疑进程的PID
pidstat -d 1
# 分析指定PID的进程的系统调用,此例的PID为18940
strace -p
18940
# 查看指定进程打开 文件列表,分析导致磁盘性能问题的代码
lsof -p 18940