Zdar a sílu vespolek, řeším takovej divnej zapeklitej problém a už nevím co... Tak budu rád za jakýkoliv hint.
Mám PVM servery (ubuntu čistě konzole). Fyzickej host je 6C Xeon s 48G RAM. Pro data používám iSCSI. Target je 8C Xeon s 256G RAM a diskovým polem, co zapisuje přez 600MB/sec. Čte přez 1GB/sec. Propojené to je přez 10G switche/síťovky (všude dualní). Target je cluster, kde druhej stroj je takovej RAID6 louda (většinově se čte, ale i zapis to musí nějakej umět). Je to posazený na drbd a nad tím LVM pro jednotlivé LUN. Nic zvláštního, obyčejnej základ.
Spojuje se open iSCSI a tgtd. Všechno funguje fajn.
Na hostu si připojuju přímo blokové zařízení, přez multipath si to rozumě pojmenovávám. V XENu pak odkazuju rovnou na bdevici: disk = [ '/dev/mapper/iscsi_blabla,raw,sda,rw' ]
Pokud si primountuju tu bdev v dom-0 (ext4) a otestuju rychlost: dd bs=1K count=1M if=/dev/zero of=./nic status=progress tak mi to dává na začátku přez 500MB/sec a koreluje okolo 150MB/sec (což odpovídá tomu RAID6 loudovi). Čtení pak trvale zůstává nad 350MB/sec. To tak odpovídá tomu HW co tu mám.
Jenže, pokud pustím VM z téhle block device (v rámci jednoho loginu initiatoru) je všechno jinak

Čtení je dobrý, ale zápis začne na 150MB/sec a velice rychle koreluje okolo 6MB/sec. VM má přiděleno 4G RAM a 2 vcpu. Nic tam nezatežuje ani IO ani CPU.
Jinak na siťovkách jsou 9K frames a MTU nastavený, síťová vrstva ma přez sysctl nastaveno dost paměti.
Nemůžu přijít na to, kde je problém ani mne nenapadá, jak dohledat příčinu.
Nějaký hint ?
Kuju moc !
R.