iSCSI targets are slow inside of the VM. e.g. direct write speed on Virtuozzo node connected to Virtuozzo storage is 200 MB/s, while inside VM write speed to Virtuozzo storage via iSCSI can be several time slower (20MB/s)
It is expected behavior that iSCSI clients would have slower communication with Virtuozzo storage than native pstorage-mount clients, as
pstorage-iscsi service works on top of
There are 3 points to check for performance degradation:
Virtuozzo storage performance,
Load average and memory usage on the client Virtuozzo node,
- A performance issues on initiator (VM) level.
While it does not make much sense to use iSCSI disks in virtual machines on Virtuozzo nodes(VM's harddisk images should be placed in natively mounted cluster folder), it was found that the following performance issues can be addressed in virtual machines to improve iSCSI performance:
More advanced NIC driver emulation mode should be selected, e.g, in Virtuozzo
virtionetwork driver provide better performance rather then
to change NIC type of VM to virtio:
# prlctl set VMNAME --device-set net0 --adapter-type virtio
NOTE: Virtual Machine restart is required after changing the adapter type.
Virtual Machine's CPU spends a lot of time by service hardware and software interrupts. This can be checked with
toputility(%hi and %si counters) while I\O load testing.
irqbalanceservice can be used for performance improvement in VM:
# yum install irqbalance # service irqbalance start
The considerations above should be taken into account when troubleshooting pstorage-iSCSI performance issues with 3rd-party virtualization solutions or hardware servers.