|Subject:||Re: [Qemu-devel] The image size of instance VM keeps growing|
|Date:||Wed, 23 May 2012 12:58:31 +0200|
Here are what we tested and found for this issue.
1. We checked the integrity of the qcow2 image by running “qemu-img check” and it looked good.
2. We monitored the I/O activities of VM using
“Process monitor”, “Process explorer” and could not find a process running an aggressive I/O activity in the background.
In the guest OS, the following configurations are turn off to cut down I/O activities.
1. Disable the NIC.
2. Disable Windows automatic update.
3. Disable the page file of the virtual memory.
After the VM ran for overnight, the image size for the running VM grew up to 3G bytes.
This issue is very easy to be duplicated. Here are the steps.
1. Create a qcow2 image of 64-bit Windows 7 VM from the CD.
2. Launch the VM
3. Turn off the VM configurations stated above.
4. Let the VM run.
5. Watch the growth of the VM image size. The longer the VM runs, the bigger the size of the VM is.
During the run-time, you can run “process monitor” to watch guest OS’s I/O activities. You can see File I/O, registry I/O from the system during the run-time in this test case. But the growth rate of the image size seems to be greater than default system I/O.
From: Stefan Hajnoczi [mailto:address@hidden]
Sent: Monday, May 21, 2012 9:24 PM
Cc: address@hidden; Jonah.Wu-吳君勉-研究發展部
Subject: Re: [Qemu-devel] The image size of instance VM keeps growing
On Mon, May 21, 2012 at 10:08 AM, Charles.Tsai-蔡清海-研究發展部
> We can run a tool to see if there is any active I/O or not. Does the image size shrink back if an I/O activity stops?
> What we found here is that the image size kept growing. If this problem persists, it could eat up the entire disk space.
It's possible for an image to grow larger than its backing file due to the layout and metadata of qcow2 (or any image file format). But this overhead should be fixed to maximum 1 MB, maybe (assuming you are not using qcow2 snapshots where the file can grow arbitrarily).
If the image file is growing endlessly then there is a problem :).
The starting point is figuring out which I/O request causes this to happen so it can be reproduced and debugged. Can you isolate the problem to a few steps that can be reproduced?
|[Prev in Thread]||Current Thread||[Next in Thread]|