Hi,
To verify the storage data integrity after some storage operations
like snapshot, merging by VDSM. Here are the test cases I am pondering.
I would like to know your feedback about these thoughts.
1) An customized ISO image with the agent required prepared for
bringing up a VM in VDSM
2) The test case will inform VDSM to create a VM from the customized ISO
image
3) The test case will install an IO application to the VM
3) The test case communicate with the VDSM to inform the IO application
in the VM to write some data intentionally.
4) The test case sends the commands to VDSM do some storage operation
like disk snapshot, volume merging, &etc.
Say snapshot operation here for an example.
5) VDSM then tell the test case the result of the operation like the
name of the snapshot.
6) Test case can read the snapshot made to verify the snapshot with the
data written in 3).
Note: currently, there is no tool to read the snapshot image
directly. We can restart the VM with the snapshot as
the active disk and tell the IO application in the VM to read the
data writen before for test case. And test case can compare
the data read with the data it informs the application in 3).
7) If the two data matches, the storage operation succeed or it fails.
In order to write such a test case, these VDSM features will be required.
1) VDSM can create a VM from a specific ISO image (Almost works)
2) Test case can install an IO application to the VM by VDSM (by
ovirt-agent?)
3) Test case must have some protocols with the IO application in VM for
passing the command to the VM and returning the result from the VM
to the test case(by ovirt-agent?).
4) The IO application can be seen as an test agent. We may extend the
existing agent like ovirt-agent as the IO application.
--
Shu Ming <shuming(a)linux.vnet.ibm.com>
IBM China Systems and Technology Laboratory