Monday, October 22, 2018

Steal Percentage on the Virtual Machine

Recently have been working with a customer who was running high workload on virtual machine. After a complete review , DBAs have identified the database is running non optimized codes/sql/programs. During high peak load we observed very high Steal %

Image result for Steal Percentage Top

In a virtual environment, CPU cycles are shared across virtual machines on the server. If your virtual machine displays a high %st in top (steal time), this means CPU cycles are being taken away from your virtual machine to serve other purposes. You may be using more than your share of CPU resources or the physical server may be over-sold. Move the virtual machine to another physical server. If steal time remains high, try giving the virtual machine more CPU resources.

In this case this database was not having any noisy neighbor and it was the same machine fighting against itself. The reason was over-provisioning. The underlying hardware had 48 CPU but virtual machine was over provisioned for 64 CPU.

To resolve the issue , virtual machine was migrated from 48 CPU bare metal to 82 CPU bare metal.

The Steal is gone.

it is highly recommended to have a metric collection on the monitoring tool to have Steal monitored on high workload virtual machines. This will help take action and move environment to have better performance.

Popular Posts