DRBD write slow. How to find the bottleneck?

3flight

New Member
Jan 31, 2011
14
0
1
I've tested this thoroughly and I can tell that writing to DRBD on my physical host is slow.
I've made a test environment: started a VM on my host, gave it a passthorugh hdd and set up proxmox from iso installer, then updated kernel to 2.6.35. On my host I have debian installed on usb-flash and proxmox 2.6.35 over it, so the setups are not totally identical, but similar.

I set up drbd on /dev/sda1 (/dev/vda1 in VM), initialize it and make it primary. There is no network connection but I've tried with it and there was no change.
On host I get 33MB/s write to drbd0 device (using dd from /dev/zero to /dev/drbd0 with fdatacync to be sure not to include buffer speed). In VM I get 70MB/s write to drbd0. both drives are physically in one server and are identical. Without drbd I have 70MB/s on host. (i.e. dd to /dev/sda1). This seems to be a problem of Debian+proxmox setup. How do I cure my write speed? I don't want to experiment with host (for example installing proxmox to hdd from ISO instead of Debian to USB + proxmox) because I have one production VM on it currently.
 
Yes, for VM to work fast I use cache=none, but it doesn't matter, because slow write speed is on host! Slow w speed is on my KVM proxmox server itself, when I write to drbd device. When I write to underlying hdd the speed is fine. So it has to do smth with debian-and-then-proxmox instead of proxmox-iso installation. But I can't install iso distrib on my 4G usb stick - it says there's not enough space, that's stupid and the only reason I do debian+proxmox-kernel, and still have plenty of space on the stick.
 
Maybe someone can give advice no how to troubleshoot disk i/o? I know only iostat, with which I can see that drbd0 util% is 100% during 33MB/s write, and some other stuff is there, but I don't know what to do with it.