Prestazioni del disco molto scarse sul nodo KVM – mdadm raid10

Per un lungo periodo di tempo, mi sono verificati problemi di performance sui server CentOS utilizzati per la virtualizzazione KVM .

Sto eseguendo software RAID-10 con 4 dischi ( Seagate ST2000DM001, 2TB, 7200rpm SATA-600 ) Questi KVM VM sono in esecuzione il loro LV.

  • I grandi valori di keepalive_requests stanno rallentando notevolmente Nginx
  • CentOS distriggers il controllo dei filesystem: l'ultimo tempo di assembly del superblock è in futuro
  • Troppe connessioni stabilite rimaste aperte
  • CentOS riavvia apperentemente senza motivo
  • Grande numero di tentativi di accesso ssh
  • Come creare un contenitore Docker di una specifica versione CentOS major.minor usando YUM?
  • Una volta installati alcuni VM, le performance continuano a cadere con each VM aggiunto.

    Al momento, ci vogliono circa 3 ore per installare Debian 7 minimal . Su una scatola vuota senza VM, questo richiederà solo pochi minuti max.

    La cosa strana è che anche con 37 VM, non c'è praticamente nessun disco I / O. Ma each I / O che deve essere fatto in quel momento, port il dispositivo "dm" per quel volume specifico LV al 100%.

    Per qualche motivo sembra che i dispositivi "dm-xx" non siano in grado di utilizzare tutti i dischi.

    Di seguito è un esempio di ciò che intendo. Il sd[a/b/c/d] solito è compreso tra il 40 e il 60% caricato durante questo problema, ma uno o più dispositivi dm hanno un carico elevato senza alcuna serie di I / O.

    Si noti che %util per specifici dm-0 che sono in uso da VM.

     Device: rrqm/s wrqm/sr/sw/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sdb 10.00 0.00 5.00 36.00 256.00 424.00 33.17 0.86 20.73 11.02 45.20 sdd 0.00 1.00 0.00 48.00 0.00 389.00 16.21 0.85 17.71 10.90 52.30 sda 0.00 0.00 2.00 39.00 32.00 161.00 9.41 0.77 18.63 11.44 46.90 sdc 0.00 1.00 0.00 50.00 0.00 764.00 30.56 1.59 47.08 13.90 69.50 md1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md3 0.00 0.00 18.00 68.00 288.00 813.00 25.60 0.00 0.00 0.00 0.00 dm-0 0.00 0.00 0.00 6.00 0.00 40.00 13.33 0.31 51.50 51.17 30.70 dm-1 0.00 0.00 0.00 7.00 0.00 72.00 20.57 0.74 49.43 99.14 69.40 dm-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-3 0.00 0.00 16.00 0.00 256.00 0.00 32.00 0.96 59.69 8.38 13.40 dm-4 0.00 0.00 0.00 8.00 0.00 68.00 17.00 0.28 34.62 31.25 25.00 dm-5 0.00 0.00 0.00 4.00 0.00 156.00 78.00 0.05 12.00 12.00 4.80 dm-6 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-7 0.00 0.00 0.00 4.00 0.00 20.00 10.00 0.08 19.00 6.75 2.70 dm-8 0.00 0.00 0.00 3.00 0.00 4.00 2.67 0.54 258.33 154.00 46.20 dm-9 0.00 0.00 0.00 5.00 0.00 148.00 59.20 0.10 19.40 19.40 9.70 dm-10 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-11 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-12 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-13 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-14 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-15 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-16 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-17 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-18 0.00 0.00 2.00 0.00 32.00 0.00 32.00 0.03 12.50 6.50 1.30 dm-19 0.00 0.00 0.00 2.00 0.00 12.00 12.00 0.03 13.00 6.50 1.30 dm-20 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-21 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-22 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-23 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-24 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-25 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-26 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-27 0.00 0.00 0.00 1.00 0.00 0.00 0.00 0.11 294.00 110.00 11.00 dm-28 0.00 0.00 0.00 3.00 0.00 16.00 10.67 0.10 50.33 25.00 7.50 dm-29 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-30 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-31 0.00 0.00 0.00 4.00 0.00 12.00 6.00 0.56 140.25 140.25 56.10 dm-32 0.00 0.00 0.00 6.00 0.00 32.00 10.67 0.76 125.83 125.83 75.50 dm-33 0.00 0.00 0.00 4.00 0.00 12.00 6.00 0.21 53.00 53.00 21.20 dm-34 0.00 0.00 0.00 3.00 0.00 4.00 2.67 0.40 172.33 133.33 40.00 dm-35 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-36 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-37 0.00 0.00 0.00 9.00 0.00 217.00 48.22 1.09 135.33 111.00 99.90 ================================= Device: rrqm/s wrqm/sr/sw/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sdb 0.00 0.00 0.00 7.00 0.00 72.00 20.57 3.84 430.14 126.00 88.20 sdd 10.00 0.00 4.00 13.00 240.00 304.00 64.00 2.07 126.59 33.00 56.10 sda 0.00 1.00 1.00 11.00 16.00 320.00 56.00 0.25 20.42 8.83 10.60 sdc 0.00 0.00 2.00 7.00 32.00 96.00 28.44 0.13 14.89 13.78 12.40 md1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md3 0.00 0.00 18.00 17.00 288.00 416.00 40.23 0.00 0.00 0.00 0.00 dm-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-3 0.00 0.00 13.00 0.00 208.00 0.00 32.00 3.66 281.85 21.69 28.20 dm-4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-5 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-6 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-7 0.00 0.00 0.00 5.00 0.00 92.00 36.80 1.84 179.40 189.80 94.90 dm-8 0.00 0.00 0.00 1.00 0.00 4.00 8.00 1.00 655.00 1000.00 100.00 dm-9 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-10 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-11 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-12 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-13 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-14 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-15 0.00 0.00 0.00 1.00 0.00 0.00 0.00 1.44 1512.00 1000.00 100.00 dm-16 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-17 0.00 0.00 0.00 3.00 0.00 16.00 10.67 0.56 6.00 187.67 56.30 dm-18 0.00 0.00 5.00 0.00 80.00 0.00 32.00 0.37 73.40 71.40 35.70 dm-19 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-20 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-21 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-22 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-23 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-24 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-25 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-26 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-27 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.44 0.00 0.00 43.80 dm-28 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-29 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-30 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-31 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-32 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 1.00 1.00 0.10 dm-33 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-34 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-35 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-36 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-37 0.00 0.00 0.00 7.00 0.00 300.00 85.71 2.00 101.00 142.86 100.00 ================================= Device: rrqm/s wrqm/sr/sw/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sdb 1.00 1.00 1.00 47.00 48.00 676.00 30.17 1.47 30.62 11.65 55.90 sdd 1.00 0.00 9.00 88.00 176.00 395.00 11.77 0.83 8.59 5.12 49.70 sda 0.00 0.00 0.00 50.00 0.00 541.50 21.66 0.83 16.54 11.22 56.10 sdc 1.00 0.00 6.00 87.00 112.00 533.50 13.88 0.87 9.42 4.37 40.60 md1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md3 0.00 0.00 21.00 116.00 336.00 991.00 19.37 0.00 0.00 0.00 0.00 dm-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-3 0.00 0.00 4.00 0.00 64.00 0.00 32.00 0.00 0.00 0.00 0.00 dm-4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-5 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-6 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-7 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-8 0.00 0.00 0.00 82.00 0.00 848.00 20.68 1.46 17.93 6.29 51.60 dm-9 0.00 0.00 0.00 3.00 0.00 16.00 10.67 0.03 11.33 11.33 3.40 dm-10 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-11 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-12 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-13 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-14 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-15 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-16 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-17 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-18 0.00 0.00 17.00 0.00 272.00 0.00 32.00 0.49 28.59 10.35 17.60 dm-19 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-20 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-21 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-22 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-23 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-24 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-25 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-26 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-27 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-28 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-29 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-30 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-31 0.00 0.00 0.00 5.00 0.00 16.00 6.40 0.13 26.00 26.00 13.00 dm-32 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-33 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-34 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-35 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-36 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-37 0.00 0.00 0.00 27.00 0.00 111.00 8.22 1.15 42.41 37.00 99.90 

    Un altro esempio :

    L'importzione di un file SQL di 2 MB richiede 15+ minuti quando si esegue questa operazione su un VM random. L'I / O per quel LV va troppo al 100% finché non è finito. Sarà solo un paio scrive / sec, e solo pochi KB / s I / O.

    Anche con questi carichi, le velocità di scrittura con dd sono di circa 80 MB / s a ​​160 MB / s. Ma le letture sono orribili e la maggior parte del tempo non supera i 10 MB / s.

    Ecco come sembrano le impostazioni RAID. Questa casella è in esecuzione sul layout "o2", ma non mostra alcuna differenza con il layout predefinito "n2".

     # cat /proc/mdstat Personalities : [raid10] [raid1] md3 : active raid10 sdb5[4] sdc5[2] sdd5[3] sda5[0] 3872954368 blocks super 1.2 512K chunks 2 offset-copies [4/4] [UUUU] md0 : active raid1 sdb1[4] sdc1[2] sdd1[3] sda1[0] 255988 blocks super 1.0 [4/4] [UUUU] md2 : active raid10 sdb2[1] sdc2[2] sda2[0] sdd2[3] 31454208 blocks super 1.1 512K chunks 2 near-copies [4/4] [UUUU] bitmap: 1/1 pages [4KB], 65536KB chunk md1 : active raid10 sdb3[4] sda3[0] sdc3[2] sdd3[3] 2096128 blocks super 1.1 512K chunks 2 near-copies [4/4] [UUUU] 

    Ecco come i singoli dischi (sda per esempio) e LV sono partizionati da each VM. Dovrebbe essere ok per i dischi 4K.

     Disk /dev/sda: 2000.4 GB, 2000398934016 bytes 255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0x000648b7 Device Boot Start End Blocks Id System /dev/sda1 * 2048 514047 256000 fd Linux raid autodetect Partition 1 does not end on cylinder boundary. /dev/sda2 514048 31971327 15728640 fd Linux raid autodetect /dev/sda3 31971328 34068479 1048576 fd Linux raid autodetect /dev/sda4 34068480 3907029167 1936480344 5 Extended /dev/sda5 34070528 3907028991 1936479232 fd Linux raid autodetect Disk /dev/mapper/raid10storage-kvm396_img: 75.2 GB, 75161927680 bytes 255 heads, 63 sectors/track, 9137 cylinders, total 146800640 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 524288 bytes / 2097152 bytes Disk identifier: 0x000a613c Device Boot Start End Blocks Id System /dev/mapper/raid10storage-kvm396_imgp1 * 2048 145752063 72875008 83 Linux /dev/mapper/raid10storage-kvm396_imgp2 145752064 146800639 524288 82 Linux swap / Solaris 

    Sto utilizzando VirtIO su tutti i VM e la cache è impostata su "none" . Ha provato diverse impostazioni della cache, ma ha provocato performance ancora più peggiori.

    Ho un paio di altri server in esecuzione per le impostazioni smapper (less VM), ma con lo stesso tipo di dischi in RAID-1 (2 dischi) senza alcun problema.

    Questo sembra veramente legato alle configurazioni RAID-10 .

    Ho attualmente 4 di queste scatole RAID10 in uso e tutte con diverse configurazioni CPU e scheda madre. Ma tutti questi hanno lo stesso orribile problema di performance.

    Qualcuno ha un'idea o una teoria che potrebbe spiegare perché queste impostazioni eseguono così lenti orribili?

    E 'davvero realizzabile in questo modo, ed è abbastanza frustrante che non ho ancora trovato la causa dopo un anno … 🙁


    EDIT – caratteristiche del server e utilizzo della CPU:

    Tutte queste caselle hanno diverse CPU, ma qui alcune delle configurazioni:

    • Xeon E3-1240v2, 32GB DDR3 ECC, SuperMicro X9SCM-F
    • Intel Core i7 2600, 32 GB DDR3, Intel DQ67OW
    • Intel Core i7 3820, 32 GB DDR3, Intel DX79TO

    E qui un'output top , con un LV @ 100% util e pochi altri rimbalzando tra il 30% e il 60%.

    La media di carico è abbastanza bassa in questo momento, ma è abbastanza normale vederli tra le 10.00 e le 30.00 a seconda di quanto LV ha il carico I / O del 100%.

    Le CPU non sono realmente caricate, e c'è sempre alless il 30% inattivo.

     top - 02:26:21 up 8 days, 11:34, 2 users, load average: 3.48, 3.99, 3.83 Tasks: 244 total, 2 running, 242 sleeping, 0 stopped, 0 zombie Cpu(s): 15.3%us, 9.7%sy, 0.0%ni, 62.8%id, 11.4%wa, 0.0%hi, 0.8%si, 0.0%st Mem: 33001640k total, 23715816k used, 9285824k free, 10740k buffers Swap: 2096124k total, 0k used, 2096124k free, 1159788k cached 

    Il carico %wa è in alcuni momentjs anche del 50%, ma di solito avviene solo con 5 o più LV toccando il 100% util continuamente.

    Anche con 5 o più LV in esecuzione @ 100%, non esiste un singolo disco SATA che realmente ha il 90% + carico. Tutti hanno l'utilizzo nell'area del 40-60%.

    ——————————-

    EDIT 2, 18-feb-2014;

    Oggi ho deciso di build un altro nodo VPS per eseguire ulteriori test. Questo sistema utilizza lo stesso setup (pannello di controllo KVM + SolusVM) come tutti gli altri. Questa configuration di test utilizza il seguente hardware:

     Intel Core i7 2600 32GB memory 4x WD Black 1.5TB (WD1502FAEX), 7200rpm, 64MB cache, SATA600 2x Samsung 830 Pro 128GB SSD's So basically a completely different storage layer. 

    OS: CentOS 6.5 + tutti gli aggiornamenti recenti. Kernel del kernel Stock, ma ha provato anche l'ultimo kernel mainline (3.13) che non ha cambiato le performance.

    Creato un arrays RAID-10 (layout n2, blocchi da 512K, config con bitmap) su unità WD Black. Creato un arrays RAID-0 sulle unità SSD che verranno utilizzate da flashcache. Questa impostazione è configurata in modo che tutti i LVM I / O passino attraverso il flashcache (come cache di scrittura). Entrambe le unità SATA e SSD stanno avendo la vecchia scuola 512 settori, quindi nessun formato esteso. Ho scelto questi dischi, solo per vedere se c'era una differenza tra questi e formati di formato esteso che uso la maggior parte del tempo. Ma li ho partizionati come unità 4K.

    Ho iniziato con alcuni test sul nodo host. Ho creato un volume vuoto LV. Mentre faccio alcuni benchmark di lettura con DD, ho avuto questi risultati in lettura sull'host:

    • Uncached ~ 390MB / s letto
    • SSD Cached ~ 950MB / s read (seconda esecuzione, quando i dati vengono memorizzati in flashcache)

    Beh, questi risultati sembrano abbastanza buoni!

    Ora gli stessi test, ma su un VM con memory da 4 GB, VirtIO e 'cache = none'. Ho avviato un DVD live di Ubuntu e ho fatto gli stessi test … con risultati orribili:

    • Uncached ~ 90MB / s letto
    • SSD Cached ~ 90MB / s letto (seconda esecuzione, quando i dati sono memorizzati in flashcache)

    Durante la prova, il dispositivo "dm-x" (LV del test VM) è stato caricato fino al 95% +, mentre i dischi singoli dischi SATA non hanno superato il 35%. Stesso per i SSD. Nessun singolo dispositivo ha superato il 50% di utilità in qualsiasi momento.

    Ecco un'output del carico più alto che abbia mai parlato per get questa configuration. Questo è stato durante il test uncached (che spiega le scritture sugli SSD):

     Device: rrqm/s wrqm/sr/sw/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sda 0.00 0.00 361.00 2547.00 1444.00 10188.00 8.00 0.62 0.21 0.03 8.90 sdc 992.00 1.00 246.00 7.00 4932.00 14.50 39.10 0.87 3.43 2.16 54.60 sdb 0.00 0.00 303.00 1754.00 1212.00 7016.00 8.00 0.41 0.20 0.03 5.80 sdd 825.00 1.00 173.00 7.00 3992.00 14.50 44.52 0.60 3.34 2.56 46.00 sde 866.00 25.00 229.00 11.00 4404.00 130.00 37.78 0.85 3.50 2.23 53.40 sdf 771.00 25.00 163.00 11.00 3736.00 130.00 44.44 0.65 3.72 2.98 51.80 md2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md3 0.00 0.00 663.00 4301.00 2652.00 17204.00 8.00 0.00 0.00 0.00 0.00 md0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 md4 0.00 0.00 4266.00 36.00 17064.00 140.50 8.00 0.00 0.00 0.00 0.00 dm-0 0.00 0.00 4929.00 36.00 19716.00 140.50 8.00 14.56 2.92 0.20 99.60 dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-2 0.00 0.00 4929.00 36.00 19716.00 140.50 8.00 14.56 2.92 0.20 99.60 

    (dm-0 è flashcache, dm-2 l'ospite)

    Per assicurarsi che lo strato flashcache non distrugga tutte le performance, ho ripetuto le stesse prove con flashcache (dm-0) disabilitato e ho avuto quasi la stessa orribile performance 90-100MB / s all'interno dell'ospite.

    Quindi, per qualche motivo, tutte le performance sono andate all'interno degli ospiti. Ho ottenuto questi risultati su un guest di Windows e Linux. Tutti utilizzando VirtIO e cache impostati su nessuno. Quando si utilizza IDE le performance scendono ulteriormente.

    In realtà un singolo disco o una configuration RAID1 con la stessa configuration flashcache esegue molto meglio di tutte le impostazioni di MDADM RAID-10 / KVM che ho usato finora. MDADM RAID-10 esegue ottimamente l'host, ma all'interno dell'ospite è orribile.

    Adesso sto costruendo un nuovo raid-10 arrays, ma con il layout offset. Ma non mi aspettavo migliori performance, poiché l'unità RAID non è completamente caricata – sono solo i singoli volumi "dm-x" LV che stanno vedendo 100% util.

    Non riesco ancora a credere perchè queste configurazioni RAID-10 + LVM + KVM sono orribili: (Molto frustrante.

  • Velocità delle distro Linux differenti - perché la differenza?
  • burattino crea certificato con fqdn
  • Limitare la width di banda per utente?
  • xinetd non si avvia
  • Differenza tra l'utilizzo di crontab e / etc / cron.hourly, giornalmente, settimanalmente
  • Errore di installazione di Gnome Desktop Environment
  • One Solution collect form web for “Prestazioni del disco molto scarse sul nodo KVM – mdadm raid10”

    Lei ci ha dato abbastanza dettaglio su come si utilizza LVM nel tuo setup. Se il tuo problema è in lettura, potrebbe essere due origini.

    Prima di tutto, controllare se non state utilizzando le istantanee LVM, come possono (a lungo termine) drasticamente rallentano IO mentre crescono.

    In secondo luogo, il tuo top afferma che il tuo ipervisore utilizza solo 1G di RAM per le cache IO, che non è molto, anche se hai ancora 10G di RAM completamente libera. Ciò suggerisce che hai modificato i parametri del kernel in base alle cache e forse ha peggiorato le performance mentre cerca di migliorare le cose. Come esempio, ecco l'utilizzo della memory (MB) di uno dei miei hypervisors che eseguono 24 VM con KVM:

      total used free shared buffers cached Mem: 129153 109117 20036 0 588 26664 -/+ buffers/cache: 81865 47288 Swap: 4095 0 4095 

    Come potete vedere, le cache IO utilizzano la metà della RAM gratuita.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.