How To: Remotely deploy a VM on the SDX Pro

The SDX Pro is game changer for us, being able to remotely deploy a VM to the edge without any additional hardware to configure/install greatly simplifies our remote deployments, as well as maintenance.

If you combine this with kickstart, preseed, or cloud-init instructions, you can have zero-touch VM creation. This lets you run one command, and literally walk away for 10 minutes and come back to a pre-configured running VM.

You can adjust the following as you see fit:

--ram, --disk size, --vcpus

(The SDX Pro comes with 8GB of RAM and 8 cores, so size accordingly.)

Here’s an example for a Ubuntu 18.04 Server VM w/ a preseed for zero-touch deployment:

virt-install --connect=qemu+tcp://YourRoutersIP/system --name YourVMNameHere --ram 2048 --disk size=15 --network bridge:br0 --cpu host --vcpus 2 --virt-type kvm --os-type linux --os-variant ubuntu16.04 --graphics none --location 'http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/' --extra-args="url=http://yourpreseed.cfg console=ttyS0 hostname=YourVMsHostnameHere locale=en_US keyboard-configuration/layoutcode=us" --noautoconsole --wait 15 --autostart

If you don’t have a preseed configuration or want to customize the installation and step through the installer:

virt-install --connect=qemu+tcp://YourRoutersIP/system --name YourVMNameHere --ram 2048 --disk size=15 --network bridge:br0 --cpu host --vcpus 2 --virt-type kvm --os-type linux --os-variant ubuntu16.04 --graphics none --location 'http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/' --extra-args="console=ttyS0" --autostart

VM’s can be managed using virt-manager or virsh:

virsh # connect qemu+tcp://{Router's IP Address}/system
Please enter your authentication name: admin
Please enter your password: 

virsh # list
 Id    Name                           State
----------------------------------------------------
 5     SDX-Ubuntu1804                running

One thing to keep in mind before putting this in a production environment:
Firmware 8.1.0 has a bug which exposes the KVM TCP port to WAN, and ignores firewall rules. This should be fixed in the next firmware release.

7 Likes