/v1/projects/{project_id}/qemu/vms¶
Contents
POST /v1/projects/{project_id}/qemu/vms¶
Create a new Qemu VM instance
Parameters¶
- project_id: UUID for the project
Response status codes¶
- 400: Invalid request
- 201: Instance created
- 409: Conflict
Input¶
Name | Mandatory | Type | Description |
---|---|---|---|
acpi_shutdown | ['boolean', 'null'] | ACPI shutdown support | |
adapter_type | ['string', 'null'] | QEMU adapter type | |
adapters | ['integer', 'null'] | number of adapters | |
boot_priority | enum | Possible values: c, d, n, cn, cd | |
cdrom_image | string | QEMU cdrom image path | |
cdrom_image_md5sum | ['string', 'null'] | QEMU cdrom image checksum | |
console | ['integer', 'null'] | console TCP port | |
console_type | enum | Possible values: telnet, vnc | |
cpu_throttling | ['integer', 'null'] | Percentage of CPU allowed for QEMU | |
cpus | ['integer', 'null'] | number of vCPUs | |
hda_disk_image | string | QEMU hda disk image path | |
hda_disk_image_md5sum | ['string', 'null'] | QEMU hda disk image checksum | |
hda_disk_interface | string | QEMU hda interface | |
hdb_disk_image | string | QEMU hdb disk image path | |
hdb_disk_image_md5sum | ['string', 'null'] | QEMU hdb disk image checksum | |
hdb_disk_interface | string | QEMU hdb interface | |
hdc_disk_image | string | QEMU hdc disk image path | |
hdc_disk_image_md5sum | ['string', 'null'] | QEMU hdc disk image checksum | |
hdc_disk_interface | string | QEMU hdc interface | |
hdd_disk_image | string | QEMU hdd disk image path | |
hdd_disk_image_md5sum | ['string', 'null'] | QEMU hdd disk image checksum | |
hdd_disk_interface | string | QEMU hdd interface | |
initrd | string | QEMU initrd path | |
initrd_md5sum | ['string', 'null'] | QEMU initrd path | |
kernel_command_line | ['string', 'null'] | QEMU kernel command line | |
kernel_image | string | QEMU kernel image path | |
kernel_image_md5sum | ['string', 'null'] | QEMU kernel image checksum | |
legacy_networking | ['boolean', 'null'] | Use QEMU legagy networking commands (-net syntax) | |
linked_clone | boolean | either the VM is a linked clone or not | |
mac_address | ['string', 'null'] | QEMU MAC address | |
name | ✔ | string | QEMU VM instance name |
options | ['string', 'null'] | Additional QEMU options | |
platform | enum | Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb, null | |
process_priority | enum | Possible values: realtime, very high, high, normal, low, very low, null | |
qemu_path | ['string', 'null'] | Path to QEMU | |
ram | ['integer', 'null'] | amount of RAM in MB | |
usage | string | How to use the qemu VM | |
vm_id | QEMU VM identifier |
Output¶
Name | Mandatory | Type | Description |
---|---|---|---|
acpi_shutdown | ✔ | boolean | ACPI shutdown support |
adapter_type | ✔ | string | QEMU adapter type |
adapters | ✔ | integer | number of adapters |
boot_priority | ✔ | enum | Possible values: c, d |
cdrom_image | ✔ | string | QEMU cdrom image path |
cdrom_image_md5sum | ✔ | ['string', 'null'] | QEMU cdrom image checksum |
console | ✔ | integer | console TCP port |
console_type | ✔ | enum | Possible values: telnet, vnc |
cpu_throttling | ✔ | integer | Percentage of CPU allowed for QEMU |
cpus | ✔ | ['integer', 'null'] | number of vCPUs |
hda_disk_image | ✔ | string | QEMU hda disk image path |
hda_disk_image_md5sum | ✔ | ['string', 'null'] | QEMU hda disk image checksum |
hda_disk_interface | ✔ | string | QEMU hda interface |
hdb_disk_image | ✔ | string | QEMU hdb disk image path |
hdb_disk_image_md5sum | ✔ | ['string', 'null'] | QEMU hdb disk image checksum |
hdb_disk_interface | ✔ | string | QEMU hdb interface |
hdc_disk_image | ✔ | string | QEMU hdc disk image path |
hdc_disk_image_md5sum | ✔ | ['string', 'null'] | QEMU hdc disk image checksum |
hdc_disk_interface | ✔ | string | QEMU hdc interface |
hdd_disk_image | ✔ | string | QEMU hdd disk image path |
hdd_disk_image_md5sum | ✔ | ['string', 'null'] | QEMU hdd disk image checksum |
hdd_disk_interface | ✔ | string | QEMU hdd interface |
initrd | ✔ | string | QEMU initrd path |
initrd_md5sum | ✔ | ['string', 'null'] | QEMU initrd path |
kernel_command_line | ✔ | string | QEMU kernel command line |
kernel_image | ✔ | string | QEMU kernel image path |
kernel_image_md5sum | ✔ | ['string', 'null'] | QEMU kernel image checksum |
legacy_networking | ✔ | boolean | Use QEMU legagy networking commands (-net syntax) |
mac_address | ✔ | string | QEMU MAC address |
name | ✔ | string | QEMU VM instance name |
options | ✔ | string | Additional QEMU options |
platform | ✔ | enum | Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb |
process_priority | ✔ | enum | Possible values: realtime, very high, high, normal, low, very low |
project_id | ✔ | string | Project uuid |
qemu_path | ✔ | string | path to QEMU |
ram | ✔ | integer | amount of RAM in MB |
usage | ✔ | string | How to use the qemu VM |
vm_directory | ✔ | string | |
vm_id | ✔ | string | QEMU VM uuid |
Sample session¶
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms' -d '{"hda_disk_image": "linux.img", "name": "PC TEST 1", "qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph3pfurip/qemu-system-x86_64", "ram": 1024}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms HTTP/1.1
{
"hda_disk_image": "linux.img",
"name": "PC TEST 1",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph3pfurip/qemu-system-x86_64",
"ram": 1024
}
HTTP/1.1 201
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 1363
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms
{
"acpi_shutdown": false,
"adapter_type": "e1000",
"adapters": 1,
"boot_priority": "c",
"cdrom_image": "",
"cdrom_image_md5sum": null,
"console": 2001,
"console_type": "telnet",
"cpu_throttling": 0,
"cpus": 1,
"hda_disk_image": "linux.img",
"hda_disk_image_md5sum": null,
"hda_disk_interface": "ide",
"hdb_disk_image": "",
"hdb_disk_image_md5sum": null,
"hdb_disk_interface": "ide",
"hdc_disk_image": "",
"hdc_disk_image_md5sum": null,
"hdc_disk_interface": "ide",
"hdd_disk_image": "",
"hdd_disk_image_md5sum": null,
"hdd_disk_interface": "ide",
"initrd": "",
"initrd_md5sum": null,
"kernel_command_line": "",
"kernel_image": "",
"kernel_image_md5sum": null,
"legacy_networking": false,
"mac_address": "00:00:ab:50:58:00",
"name": "PC TEST 1",
"options": "",
"platform": "x86_64",
"process_priority": "low",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph3pfurip/qemu-system-x86_64",
"ram": 1024,
"usage": "",
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpqqnauky9/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/b949f2e2-d338-4b51-aea9-270196ed5058",
"vm_id": "b949f2e2-d338-4b51-aea9-270196ed5058"
}