If you struggled to cope with disk I/O on virtual host machines which runs on Centos or RHEL, there is a great system performance tuning tool named TUNED, comes with different profiles.

for installing tuned;

yum install tuned -y

starting the service permanently;

service tuned start
chkconfig tuned on

service ktune start
chkconfig ktune on

status of running profile;

tuned-adm active

list of profiles;

tuned-adm list

setting the profile for disk I/O optimization;

tuned-adm profile virtual-host

if you want to disable defined profile (i don’t thing you will consider this :);

tuned-adm off

You are going to see significant optimization on atop tool. Here are tuned profile summary;

tunable default enterprise storage virtual host virtual guest latency performance throughput performance
kernel.sched min granularity ns 4ms 10ms 10ms 10ms 10ms
kernel.sched wakeup granularity ns 4ms 15ms 15ms 15ms 15ms
vm.dirty ratio 20%ram 40% 10% 40% 40%
vm.dirty background ratio 10% ram 5%
vm.swappiness 60 10 30
I/O Scheduler (Elevator) CFQ deadline deadline deadline deadline deadline
Filesystem Barriers On Off Off Off
CPU Governor ondemand performance performance performance
Disk Read-ahead 4x