Skip to main content

Synology Virtual Machine Manager

Synology's Virtual Machine Manager (VMM) runs the image as an ordinary virtual machine on your NAS. You import the image's disk, attach a seed ISO with your SSH key, and start it.

Before you start​

  • DSM 7.2 or later with the Virtual Machine Manager package installed from Package Center.
  • An x86 model that runs VMM: the Plus series and the business models with an Intel or AMD processor. Models with an ARM processor cannot run VMM, and the image is amd64 only. Synology's compatibility list on its website names the models.
  • A Btrfs volume for the machine. VMM keeps its machines on Btrfs only.
  • Room on the NAS: 2 vCPU and 4 GB of memory free for the machine, and 40 GB or more of disk, as Hardware describes.
  • One of two files:
    • the VHDX (antelao-ohm-<version>-amd64.vhdx.zip), which you unzip first. This is the simpler route.
    • or the VMDK from inside the OVA (antelao-ohm-<version>-amd64.ova).

Download​

Download the file from the table on the overview page, then check it before you import it. Run this in the folder you downloaded it to:

curl -fsSLO https://packages.antelao.io/raw/cosign.pub
sha256sum cosign.pub
curl -fsSLO https://images.antelao.io/ohm/stable/0.23.0/SHA256SUMS
curl -fsSLO https://images.antelao.io/ohm/stable/0.23.0/SHA256SUMS.sig
cosign verify-blob --key cosign.pub --signature SHA256SUMS.sig \
--insecure-ignore-tlog=true SHA256SUMS
sha256sum --check --ignore-missing SHA256SUMS

Verify the download says what must come out right, and how to check on Windows or a Mac.

Then take the disk out of its package:

  • The VHDX. Unzip antelao-ohm-<version>-amd64.vhdx.zip. On Windows, right-click it and choose Extract All; on a Mac, double-click it; on Linux, run unzip antelao-ohm-<version>-amd64.vhdx.zip. You get antelao-ohm-<version>-amd64.vhdx.

  • The VMDK. An OVA is a tar archive. The same command unpacks it on Windows 10 and 11 (PowerShell or Command Prompt), macOS and Linux:

    tar -xf antelao-ohm-<version>-amd64.ova

    Keep the .vmdk file it writes. The .ovf and .mf files beside it are not needed here.

Import​

First upload the disk to VMM, then create the machine from it.

  1. In DSM, open Virtual Machine Manager > Image > Disk Image and click Add.
  2. Choose the .vhdx or .vmdk file from your computer, give the image a name, and choose the storage to keep it on. Wait until the upload and the conversion are finished.
  3. Go to Virtual Machine Manager > Virtual Machine and click Create > Import.
  4. Choose Import from disk images, then the image you just added.
  5. Choose Linux as the operating system and the Btrfs storage for the machine.
  6. Give the machine a name, 2 CPUs or more and 4 GB of memory or more.
  7. On the storage page the imported disk is the machine's first virtual disk. Leave its controller as VMM proposes; the image's kernel has drivers for VirtIO SCSI, SATA and IDE alike. Grow the disk here if you want more than 40 GB.
  8. On the network page, keep the Default VM Network, or another virtual switch attached to your LAN, so the machine gets an address on your network.
  9. Continue to Other Settings, which the next section fills in.

Importing the OVA itself. VMM also takes the OVA whole, through Create > Import > Import from OVA files. Synology's own notes say that when an imported machine's disk controller or network adapter is one VMM does not support, VMM replaces it with its default after the import. The OVA is described for VMware (a VMware SCSI controller and a VMXNET3 adapter), so expect both to be replaced; the image boots on VMM's defaults. Its properties for SSH keys are VMware's alone and VMM does not show them, so you still need the seed ISO below.

Give it your SSH key​

VMM has no field for an SSH key, so you hand the key over on a seed ISO.

  1. Build seed.iso with the seed ISO builder on the overview page.
  2. In Virtual Machine Manager > Image > ISO File, click Add and upload seed.iso.
  3. Back in the import wizard, on Other Settings:
    • Choose seed.iso as an ISO file. Either the ISO file for bootup or the Additional ISO file works: the seed is a data disc, not a boot disc, and the first boot finds it in any CD drive.
    • Boot from: the virtual disk.
    • Firmware: UEFI or Legacy BIOS. The disk boots both.
  4. Finish the wizard: choose who may use the machine, check the summary and click Done.

No seed? The machine's own screen shows the console address and a one-time sign-in code after the first boot.

Start it and wait for the first boot​

  1. Select the machine in Virtual Machine and click Power on.
  2. Click Connect to watch its screen in the browser.

The screen shows the usual Linux boot messages, then a login prompt. Among the messages, cloud-init prints a table of the network devices, its lines starting with ci-info, with the address the machine received. Your router's list of DHCP leases shows the same address.

The login prompt appearing does not mean the work is done. The first boot installs the server in the background, which takes about 10 minutes, longer on a slow connection or slow disks. Sign in over SSH meanwhile and the login message says how far it is.

Reach the console​

Sign in over SSH as debian with your key, using the machine's address or its DNS name:

ssh debian@192.168.1.50

Once the first boot is done, the login message shows the console's address. Read the administrator's first password:

sudo cat /root/antelao-ohm-handoff.json

With a password on the seed instead of a key, sign in as debian on the machine's screen through Connect. SSH keeps refusing passwords.

Then open the console through an SSH tunnel from your own computer, which opens no port on the machine:

ssh -N -L 5322:127.0.0.1:5322 debian@192.168.1.50

Browse to https://localhost:5322/ and accept the self-signed certificate once. From here, carry on with the installation page:

  1. Check the server
  2. Reach the console
  3. Sign in and finish the setup
  4. Create your first instance

Platform notes and troubleshooting​

  • The Create > Import choice is missing or greyed out. Check that VMM is installed on a Btrfs volume and that your model is on Synology's list for VMM.
  • The disk image upload fails. Synology lists VMDK, VHD, VHDX, VDI and IMG as disk images. Use the VHDX if the VMDK is refused, and check there is room on the volume for the full 40 GB.
  • The machine does not boot. Switch Firmware between UEFI and Legacy BIOS under Edit > Others while the machine is off, and check that it boots from the virtual disk, not the ISO.
  • No address appears. The machine's network must be a virtual switch attached to a physical port of the NAS. Check Virtual Machine Manager > Network.
  • Nothing reaches the server from outside your network. The NAS's router has to forward ports 80 and 443 to the machine's address before Let's Encrypt can issue certificates for your instances. Never forward the console's port 5322.
  • The first boot failed. The login message says FAILED with the reason. See What the first boot does for how to run it again.
  • The seed ISO afterwards. Leave it attached: a machine whose seed disappears looks new to cloud-init at its next start, as Keep the seed attached explains. It holds a hash of your password, if you gave one, so keep the ISO file where only administrators can reach it.