Analyser les I/O (iostat)
Les performances d'un VPS HolyCloud dépendent souvent des I/O disque (stockage local ou NVMe). L'outil iostat (paquet sysstat) affiche le débit, l'utilisation et la latence par périphérique.
Prérequis
- VPS Linux avec accès sudo
- Charge représentative (backup, import SQL, compilation) pour voir des pics
- Identification du type de stockage (panel HolyCloud /
lsblk)
Installation
sudo apt install -y sysstat
sudo systemctl enable --now sysstat
iostat -V
Sur RHEL :
sudo dnf install -y sysstat
Lecture en temps réel
Toutes les 2 secondes, 5 échantillons :
iostat -xz 2 5
Colonnes importantes (mode étendu -x) :
| --------- | ------------- |
|---|---|
%util |
Temps où le disque était occupé (100 % = saturation) |
r/s, w/s |
Lectures / écritures par seconde |
rkB/s, wkB/s |
Débit lecture / écriture |
await |
Latence moyenne des I/O (ms) — critique |
avgqu-sz |
Profondeur de file d'attente |
Si
%utilest proche de 100 % etawaitmonte (ex. > 20 ms sur NVMe), le disque est le goulot.
Par partition
iostat -xz 2 5 /dev/vda
df -hT
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT,FSTYPE
Sur VPS, le disque apparaît souvent comme vda, sda ou nvme0n1.
Historique avec sar
sysstat enregistre des archives :
sar -d -f /var/log/sysstat/sa$(date +%d) | tail -30
Activité nocturne de backup visible le lendemain.
Scénarios typiques
Import MySQL lent
iostat -xz 1
# dans un autre terminal
mysql < gros_dump.sql
Si w/s et wkB/s sont élevés avec await élevé, privilégiez import hors heures ou innodb_buffer_pool_size adapté.
Backup rsync
watch -n2 'iostat -xz 1 1 | grep -E "Device|vda|nvme"'
Swap actif
vmstat 1
free -h
Si si/so (swap in/out) > 0 en continu, la RAM manque — iostat montrera aussi des lectures disque.
Comparer avec fio (optionnel)
Test ponctuel (attention, charge intensive) :
sudo apt install -y fio
fio --name=randread --ioengine=libaio --rw=randread --bs=4k \
--numjobs=4 --size=256M --runtime=30 --filename=/tmp/fiotest
rm -f /tmp/fiotest
Comparez les résultats entre deux offres VPS Performance.
Bonnes pratiques
- Mesurez pendant un incident, pas uniquement au repos.
- Notez le fuseau horaire et la tâche cron en parallèle (
grep CRON /var/log/sysstat). - Ne confondez pas CPU élevé et I/O : utilisez
top,mpstaten complément.
apt install -y sysstat
mpstat -P ALL 1 3
Seuils indicatifs (NVMe VPS)
| Métrique | Zone confortable | Alerte |
|---|---|---|
| ---------- | ------------------ | -------- |
await |
< 2 ms | > 10 ms soutenu |
%util |
< 70 % moyen | 100 % prolongé |
avgqu-sz |
< 2 | > 10 |
Les seuils varient selon workload ; serveur de bases OLTP tolère moins de latence qu'un site statique.
Dépannage
| ------------- | ------- |
|---|---|
| %util bas mais app lente | Réseau, CPU, locks applicatifs |
| w/s énorme, peu de CPU | Logs, tmp, antivirus scan |
| Lectures constantes | Cache froid, index SQL manquants |
Besoin d'aide ?
Fournissez au support HolyCloud : sortie iostat -xz 2 10 pendant lenteur, df -h, plan VPS et heure exacte du incident.