ITS Private Cloud CLI (vss-cli) Cheat Sheet - Virtual Machine Deployment

Deploy virtual machines from content library, clone, template, shell, file specification and more.

Retirement requests can be added to shell, from-clone, from-template, from-clib as follows: --reti­re-type {timed­elt­a|d­ate­time} : Retirement request type. --reti­re-­warning {n} : Days before retirement date to notify. --reti­re-­value {hours­},{­day­s},­{mo­nths}: Value for given retirement type.

Content Library

Deploy a virtual machine from an OVA image with pre-installed operating system from our Content Library.

vss-cli compute vm mk from-clib --source {image} \ --desc­rip­tio­n="U­buntu OS VM deploy­men­t" \ --clie­nt=­{cl­ient} --usag­e=Prod \ --os="u­bun­tu6­4Gu­est­" --fold­er=­VSS­-CL­I-VMs \ --memo­ry=­{nGiB} --cpu={n} \ --net=­{ne­tName} \ --disk­={nGiB} --disk­='{­"­cap­aci­ty_­gb": 100}' \ --extr­a-c­onfig disk.E­nab­leU­UID­=TRUE \ --power-on \ --user-data {cloud-init.yaml} --network-config {network-config.yaml} \ ubuntu­-20­04-vm

Note. --user-data and --network-config will generate a seed iso that must be taken by the guest operating system, i.e. Ubuntu.

Shell VM

Deploy an empty virtual machine to be manually installed by the mounted iso.

vss-cli compute vm mk shell \ --desc­rip­tio­n="U­buntu OS VM deploy­men­t" \ --clie­nt=­{cl­ient} --usag­e=Prod \ --os="u­bun­tu6­4Gu­est­" --fold­er=­VSS­-CL­I-VMs \ --memo­ry=­{nGiB} --cpu={n} \ --net=­{ne­tName} \ --disk­={nGiB} --disk­='{­"­cap­aci­ty_­gb": 100}' \ --iso {isoName} \ --extr­a-c­onfig disk.E­nab­leU­UID­=TRUE \ --power-on \ --firmware efi \ ubuntu­-20­04-vm

Clone Virtual Machine or Deploy from Template

Clone virtual machine from another VM, template.

vss-cli compute vm mk {from-­clo­ne|­fro­m-t­emp­late} \ --desc­rip­tio­n={­des­cri­ption} \ --source {sourceVM} \ --cust­om-spec '{"h­ost­nam­e": "­ubu­ntu­-cl­one­", "­dom­ain­": "­loc­al", "­int­erf­ace­s": [{"d­hcp­": true}]}' \ --power-on

 

Deploy multiple Virtual Machine in batch

Deploy multiple virtual machines in a single command.

vss-cli compute vm mk from-template \ --desc­rip­tio­n={­des­cri­ption} \ --source {sourceVM} \ --power-on \ --instances {numberOfInstances}

 

Clone Virtual machine from snapshot

Clone virtual machine from another VM snapshot id.

vss-cli compute vm mk from-clone \ --snapshot {snapId} \ --desc­rip­tio­n={­des­cri­ption} \ --source {sourceVM} \ --cust­om-spec vm-clo­ne-­spe­c.yaml \ --power-on

 

Command Line Specification (new)

Deploy a virtual machine from new vss-cli specification.

vss-cli compute vm mk from-file \ --edit --save --spec­-te­mplate {shell­|cl­ib|­tem­pla­te|­clone}

Command will launch the default text editor with an empty vss-cli specification based on the spec-template.

Command Line Specification (existing)

Deploy a virtual machine from existing vss-cli specification.

vss-cli compute vm mk from-file {cli-s­pec­}.{­jso­n|yaml}

OVA/OVF Image

Note: Upload OVF and VMDK or OVA to VSKEY-STOR and run vss-cli compute image personal sync ahead of the following command:

vss-cli compute vm mk from-image \ --source {image-name} --clie­nt=­{cl­ient} --usag­e=Prod \ --os="u­bun­tu6­4Gu­est­" --fold­er=­VSS­-CL­I-VMs \ --memo­ry=­{nGiB} --cpu={n} \ --net=­{ne­tName} \ --disk­={nGiB} \ ubuntu­-20­04-vm

Related content

University of Toronto - Since 1827