Shared server guidance · Question & answer

How do I check whether disk I/O is slowing a Linux server?

Storage performance depends on latency, queueing, request patterns and the device stack. iostat shows interval statistics for visible block devices. Interpret virtual disks, RAID devices and underlying physical devices as different layers, and correlate the measurements with application response time.

AdvancedLinux VPS and dedicated servers with GNU utilities
Go to the answer

Before you start

  • sysstat is installed and the application’s data path is known.

Instructions

1. Identify the relevant filesystem and device

Find the storage used by the affected application before interpreting a busy device that may belong to something else.

Remote Linux shell
findmnt -T /var -o TARGET,SOURCE,FSTYPE

Replace /var with the actual data path. A database or container volume may live on a separate filesystem.

2. Collect bounded extended statistics

The sysstat package supplies iostat. Compare several intervals rather than using the first report alone, which normally summarises activity since boot.

Remote Linux shell
iostat -xz 1 5

Review await, request rates, queue depth and utilisation according to the installed version. A 100% utilisation interpretation differs for parallel devices such as NVMe or RAID.

Check the result

  • The affected device’s latency or queueing increases during the symptom and the application’s I/O pattern explains the pressure.

Troubleshooting

The guest looks idle but storage is slow
The bottleneck may be in the host, shared storage or provider limits. Compare guest measurements with provider metrics.
A benchmark is suggested as the first step
Avoid write-heavy production benchmarks before reviewing workload impact, free space and the target device.

Official references

Use the documentation for your installed version when a flag, service name or platform feature differs.