1.7 KiB
1.7 KiB
Cloning virtual machine
Workflow clone_vm
defines the process of creating a new
VM based on existing VM which was created using bootable volume (and may
have other additional volumes). It's also a good example of using
sub-workflows in one workflow.
To run the example:
Create sub-workflows
clone_volume.yaml
andboot_vm_from_volume.yaml
:mistral workflow-create clone_volume.yaml mistral workflow-create boot_vm_from_volume.yaml
Create workflow
clone_vm.yaml
:mistral workflow-create clone_vm.yaml
Create
input.json
file containing workflow input parameters as follows:{ "vm_name": "new_vm", "flavor_ref": "1", "source_root_vol_id": "1969299a-4c45-4900-bfe0-5ac65c1f2211", "root_vol_name": "new_root_vol", "root_vol_size": 1, "additional_volumes": [ { "vol_name": "new_user_vol_1", "vol_size": 1, "source_vol_id": "94391f69-a2f7-4406-b602-86e0b421d519" }, { "vol_name": "new_user_vol_2", "vol_size": 1, "source_vol_id": "262b37ab-86f1-4be5-ada2-645898400584" } ] }
Start workflow:
mistral execution-create clone_vm input.json
Get execution status by using execution id from the previous command output:
mistral execution-get <execution_id>
Make sure that a virtual machine with a bootable volume and two additional volumes has been created successfully. It can be done by opening Horizon UI or using Nova client (python-novaclient).