Supported virtualization platforms and build types
TurnKey works well with all the major virtualization platforms (e.g., VMWare, VirtualBox, Parallels, Xen, QEMU/KVM, etc.). It provides appliances in a range of build types optimized and pre-tested for various popular virtualization platforms.
If you don't already have virtualization software installed, VirtualBox is available in a free open source edition for major OSs. VMWare Player and Server products are proprietary but free to download. KVM is 100% free software built into the Linux kernel which supports many front-end management tools. Proxmox Virtual Environment is a free, open source enterprise grade hypervisor which provides both KVM and LXC.
| Build type | Headless | Packaging | Installation | Kernel | Extras | Works best with... |
|---|---|---|---|---|---|---|
| Generic hybrid ISO | No | ISO CD/USB image (install or run live) | Custom installer (di-live) |
linux-generic |
Bare metal hardware Any virtual machine (e.g., KVM, Hyper-V, XenServer) that can install from CD or ISO image. |
|
| VM optimized (OVA) | No |
Stream-able OVA archive file containing a read-only, compressed ("type 3") VMDK disk image and an OVF VM configuration file |
Import OVA; VirtualBox and VMware support "double-click" import | linux-generic | open-vm-tools |
VirtualBox VMWare products (Player, Workstation, Server, ESX, vSphere) |
| VM optimized (VMDK) | No |
ZIP file containing a writeable VMDK disk image and a VMX VM configuration file |
None (pre-installed, ready-to-run hard disk image) | linux-generic | open-vm-tools |
VirtualBox (use existing hard disk) Low-end VMWare products (Player, Workstation, Server) QEMU/KVM also it has been reported that VMDK works with Xen HVM although not confirmed |
| OpenNebula (LXC) | Yes |
LXC image |
Please see the "Turnkey Linux Images Marketplace" OpenNebula Doc page. | n/a |
headless initialization fence, preseeding |
OpenNebula |
| OpenStack | Yes |
QCOW2 filesystem image |
Upload the image to OpenStack (Openstack docs) | linux-generic |
headless initialization fence, preseeding |
OpenStack QEMU/KVM (?) |
| Proxmox | Yes |
Tarball containing appliance filesystem optimized to run on Proxmox VE (LXC) |
Download & import template via the "TurnKey channel" within the webUI or manually download tarball and upload to PVE Supports v5.x/v6.x (LXC) |
n/a |
headless initialization fence, preseeding |
Proxmox VE Other container (i.e. OpenVZ/LXC) based cloud and virtualization solutions.... |
| Xen | Yes |
Tarball containing appliance filesystem image, optimized to run as a Xen domU guest (should support both PV and HVM, although only tested in HVM). |
Varies between Xen setups | n/a |
headless initialization fence, preseeding |
Any Xen based private or public cloud... |
| LXC | Yes |
Tarball of container (LXC) build (see Proxmox build) |
TurnKey LXC template (news announcement) | n/a |
headless initialization fence, preseeding |
Any Linux distribution that supports LXC (undocumented) |
| Docker | Yes |
Docker images hosted on the docker index |
Docker (docs) | n/a |
headless initialization fence, preseeding, preconfigured run and expose |
Any Linux distribution that supports Docker |
Other virtualization platforms
Whilst other VM platforms aren't specifically supported, many support VMDK and/or there is often a way to use an existing format (e.g. install from ISO). Often tools are provided with your virtualization software of choice to convert images to the one required. Examples that have been documented are:
- KVM - perhaps also .qcow2 OpenStack image?
- OpenNebula (KVM backed) - See also OpenNebula (LXC).
- XenServer (install from ISO) or Xen image should also work with recent XenServer releases.
- Hyper-V (install from ISO) (may still require "Gen1" VM).
Headless vs non-headless builds
In a conventional installation (e.g., from ISO) the user has interactive access to the virtual console during deployment and first boot.
By contrast, headless builds are not expected to provide the user with interactive access to the virtual console.
The main difference this creates is when and how the system interacts with the user to set passwords, basic application configurations:
- In non-headless builds, the appliance is setup by the user on first boot.
- In headless builds, the appliance is setup by the user on first login.
Assuming that the user has access to the raw filesystem, headless installs can be pre-seeded. Alternatively, they can be interactively initialized on first login. Interactive initialization requires SSH access to the TurnKey root account. Many systems (e.g. Proxmox) support pre-setting the root password and/or addition of SSH keys prior to firstboot. Other systems may require the user to read the randomly generated root password from the syslog.
For further details see the inithooks documentation.
VM optimized images
These are images optimized for deployment on Virtual Machines, using popular virtualization software (e.g., VirtualBox, VMWare, Parallels).
Features
- Pre-installed: Appliance is pre-installed to a VMDK hard disk image.
- Includes open-vm-tools: VMWare tools contain drivers which improves performance when running an appliance under VMWare. When running under VirtualBox or other virtualization platforms, the included open-vm-tools are not used. Under VirtualBox, you may wish to install the Guest Addons.
Pros and cons
- The main advantage: easier setup as no installation step is required. Better performance on VMWare out of the box.
- The main disadvantage: can't be deployed to non-virtualized bare metal hardware.
Flavors
VM optimized images are available in two closely related formats:
- OVA build: as of v14.0 this is the new recommended VM build. It is a single file (.ova) archive built from our VMDK; processed with VMWare's OVFtool. It contains:
- Disk image: read-only, compressed VMDK hard disk image.
- OVF VM configuration file: OVF is a standards-based Virtual Machine configuration format.
- Compatibility:
- VirtualBox: supports OVA import via "double-click" or via an import appliance wizard which converts the OVA to a native VirtualBox format. The conversion process takes a few minutes.
- VMWare products: OVA is supported by all current VMware products such as Player, Workstation, Server, ESX and vSphere. It too will import with "double-click" or via the import wizard.
- VMDK VM build: previously this was the primary VM build offered for download. We continue to offer it as it can be imported into KVM without conversion (and possibly others such as Xen HVM). It can also be used with VirtualBox and VMware if preferred. It is a zip archive which includes:
- Disk image: Ready-to-run, writeable VMDK hard disk image.
- VMX VM configuration file: VMX is a legacy VMware-only Virtual Machine configuration format.
- Compatibility:
- VirtualBox: supports adding the VMDK as a virtual hard disk. The VM hardware (e.g., RAM) has to be configured manually as VMX is not supported by VirtualBox. See the virtualbox installation tutorial.
- Low-end legacy VMWare products: VMX is point-and-click on VMWare Player, VMWare Workstation, VMWare Server.
Generic ISO
This is a single master image format that can be installed anywhere.
Features
- Custom installer (di-live): can install appliance to any available storage device.
- Live CD/USB demo mode: allow users to try appliance without installing.
- Generic kernel: includes bare metal hardware support, and most types virtual machines (e.g., VMWare, VirtualBox, Xen HVM, Parallels).
Pros and cons
- The main advantage: a single universal image format that works (almost) anywhere.
- The main disadvantage: an ISO needs to be installed by hand and includes no out of the box virtualization optimizations.
OpenNebula
The OpenNebula devs have documented how to add "Turnkey Linux Images Marketplace". Once added, OpenNebula users can import TurnKey (LXC) images into their OpenNebula infrastructure. (The documentation source can be found here).
Alternatively, OpenNebula provides full VM support via KVM. So TurnKey can be installed from ISO (or VMDK or OpenStack .qcow2 builds should also be possible - although untested and undocumented).
For general information regarding LXC builds, please see the general LXC notes.
OpenStack builds
These are TurnKey builds for the OpenStack cloud platform.
Features:
- Automatic APT configuration on boot: saves bandwidth costs by using the closest package archive for maximum performance.
- SSH key support: instances that are launched with a key-pair will be configured accordingly.
- SSH host key fingerprints displayed in system log: verification of server to prevent man-in-the-middle (MITM) attacks.
- Randomly generated root password: is set on first boot, and displayed in the system log **.
- Randomly generated mysql/postgres passwords: the MySQL adminer and/or PostgreSQL postgres passwords are set to to the same random password as root **.
- Instance metadata python library and CLI: used internally, but useful for advanced users. (learn more).
** Because OpenStack builds are used in headless deployments (without a console), they include an inithook which preseeds default values, and random passwords. They may also be pre-seeded (assuming pre-firstboot access to the disk image).
See the OpenStack builds announcement for more details. Outdated docs - please see this comment.
Proxmox builds
TurnKey Proxmox builds are optimized for OS container-based lightweight virtualization (primarily LXC) via Proxmox v4.x+. They are available directly from the "TurnKey channel" within the Proxmox VE webUI (under Storage >> Templates). They should also work on earlier versions of v3.x (OpenVZ - or vanilla OVZ) but have not been extensively tested.
Please note, if you prefer to launch a "full VM" (i.e. KVM) on Proxmox, then please download the relevant ISO. Either download to your local computer and upload the ISO via Proxmox webUI, or log in via commandline and download the ISO to /var/lib/vz/template/iso/.
See also LXC or the (very dated) OpenVZ builds announcement (historic info).
Xen builds
These are TurnKey filesystem tarballs optimized to run as domU guests in Xen based private or public cloud setups. They should be compatible with both PV and HVM instances. Alternatively, it has been reported that for HVM, the VMDK image (from the VMDK VM build) can be imported.
See the Xen builds announcement for details (although please note that we now provide a (tarball of the) full filesystem image, as opposed to the previous filesystem tarball).
LXC builds
The TurnKey LXC template is the same as the Proxmox build. The TurnKey LXC appliance leverages TurnKey these builds and patches them on the fly for deployment. They should also work with vanilla LXC, LXD or OpenVZ but it's currently undocumented.
See the TurnKey LXC announcement for details.
Docker builds
These are TurnKey builds optimized to run as docker containers, supporting automatic download via the docker public index.
See the TurnKey Docker docs for details.