Locating Disk I/O Bottlenecks for Containers
In some situations, the disk I/O subsystem may bottleneck a Virtuozzo server and reduce the performance of Containers or the server itself. Such I/O bottlenecks are often caused by disk-intensive processes running in Containers, for example, by transferring huge amounts of data to or from a Container. 
To pinpoint Containers generating the highest disk I/O load, follow these steps: 
- On the problem server, run the 
pstat utility to display I/O statistics for all running Containers. You may want to use the following I/O options with the utility: id, cpu_iowait, cpu_iowait_acc, io, iops, swapin. For example:# pstat -o id,cpu_iowait,cpu_iowait_acc,io,iops,swapin 
... 
CTID  CPU IOWAIT  ACC IOWAIT   IO           IOPS      SWAPIN 
   1  0.00%       0.00%        0.0/---KB/s  0.0/--/s  0.0/s 
 101  0.00%       0.00%        0.0/---KB/s  0.0/--/s  0.0/s 
 111  25.0%       28.0%        23/---MB/s   419/--/s  0.0/s  
 - In the command output, find the Container with the highest values. Most probably, this is the Container that generates the highest I/O load on the server. In the example above, this is Container 111.
 - Once you have found the problem Container, run the 
vziotop -o -E <CT_ID> command to show all threads running in this Container and generating I/O load. To sort the output by I/O load, use the left and right arrow keys to select the IO column. For example:# vziotop -o -E 111 
Total DISK READ :       4.77 M/s | Total DISK WRITE :      270.00 K/s 
Actual DISK READ:       4.77 M/s | Actual DISK WRITE:      354.63 K/s 
CTID  TID     PRIO  USER  DISK READ   DISK WRITE  SWAPIN  IO>    COMMAND 
111   1026959 be/4  root  932.72 K/s  250.00 K/s  0.00%   42.84% {output skipped]; 
111   1026960 be/4  root  202.20 K/s  20.00  K/s  0.00%   11.53% {output skipped]; 
The command output shows that thread 1026959 produces the highest I/O load and might be responsible for the server performance degradation. 
 
 For more information on the vziotop utility and its options, see the Virtuozzo 6 Command Line Reference Guide. 
 |