TurnKey Linux Virtual Appliance Library

Supported virtualization platforms and build types

TurnKey works well with all the major virtualization platforms (e.g., VMWare, VirtualBox, Parallels, Xen, 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 most 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.

Build type Headless Packaging Installation Kernel Extras Works best with...
Generic ISO No ISO Live CD image Custom installer (di-live) linux-generic  

Bare metal hardware

USB flash drives

Any virtual machine (e.g., KVM) that can install from CD or CD image.

VM optimized (default) 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-virtual (PAE) VMWare tools

VirtualBox (use existing hard disk)

Low-end VMWare products (Player, Workstation, Server)

VM optimized (OVF) No

Zip file containing a read-only, compressed VMDK disk image and an OVF VM configuration file

Import OVF linux-virtual (PAE) VMWare tools

VirtualBox (import appliance wizard)

High-end VMWare products (ESX, vSphere)

OpenStack Yes

Tarball containing filesystem image, kernel and initrd files

Extract tarball, register AMI with Glance (blog post) linux-virtual (PAE)

headless initialization fence,

userdata integration,

ebsmount, preseeding

OpenStack
OpenVZ Yes

Tarball containing appliance filesystem optimized to run inside an OpenVZ container

ProxMox VE: apply patch to add TurnKey channel (blog post) n/a

headless initialization fence,

preseeding

ProxMox VE (patch available to add TurnKey channel to 1.9)

Other OpenVZ based private cloud and virtualization solutions....

OpenNode Yes

OVA image containing OpenVZ OVF container optimized for OpenNode

Update to opennode-tui rpm package version to 20131017200827 or later: yum update opennode-tui (news announcement) n/a

headless initialization fence,

preseeding

OpenNode

Any virtualization solution that supports OVA / OVF packaged OpenVZ container filesystems

Xen Yes

Tarball containing appliance filesystem optimized to run as a Xen domU guest

Varies between Xen setups n/a

headless initialization fence,

preseeding

Any Xen based private or public cloud...
LXC Yes

Tarball of OpenVZ build patched on the fly for LXC

Generic TurnKey LXC template (news announcement) n/a

 

Any Linux distribution that supports LXC
Docker Yes

Docker images hosted on the docker index

Docker (news announcement) 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, there is often a way to convert existing formats to the desired one. Examples that have been documented are:

Also there is always the option of installing from the ISO.

Headless vs non-headless builds

In a conventional installation (e.g., from a Live CD 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:

  1. In non-headless builds, the appliance is setup by the user on first boot.
  2. In headless builds, the appliance is setup by the user on first login.

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.
  • linux-virtual kernel: Contains an ubuntu kernel optimized for virtualization. This kernel does not contain bare metal hardware drivers and runs in PAE mode so it can address more than 4GB of memory even in 32 bit mode.
  • Includes VMWare tools: VMWare tools contain drivers which improves performance when running an appliance under VMWare. When running under VirtualBox or other virtualization platforms, the included VMWare tools are not used.

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:

  1. Default VM build: this is primary VM build offered for download.
    • Disk image: Ready-to-run, writeable VMDK hard disk image.
    • VMX VM configuration file: VMX is a 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 by hand as VMX is not supported by VirtualBox. See the virtualbox installation tutorial.
      • Low-end VMWare products: VMX is point-and-click on VMWare Player, VMWare Workstation, VMWare Server.
  2. OVF build: this is the default VM build converted to OVF with VMWare's OVFtool.
    • 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 OVF via an import appliance wizard which converts the OVF to a native VirtualBox format. The conversion process takes a few minutes.
      • High-end VMWare products: OVF is supported by high-end VMWare products such as ESX and vSphere.

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 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 anywhere.
  • The main disadvantage: an ISO needs to be installed by hand and includes no out of the box virtualization optimizations.

OpenStack builds

These are TurnKey builds for the OpenStack cloud platform.

Features:

  • EBS auto-mounting support: we've updated our custom EBSmount mechanism for OpenStack, which automatically mounts EBS devices when attached.
  • Support for automating instance setup: via the user-data scripts mechanism.
  • 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 root 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.

See the OpenStack builds announcement for more details.

OpenVZ builds

These are TurnKey builds optimized for OpenVZ-based lightweight virtualization solutions. A TurnKey channel for ProxMox VE is also available.

See the OpenVZ builds announcement for details.

OpenNode builds

These are TurnKey builds optimized to run in OpeNode as lightweight OpenVZ containers. OpenNode supports automatic download and deployment of TurnKey solutions through opennode-tui - its textual user interface.

See the related OpenNode news announcement for details.

Xen builds

These are TurnKey filesystem tarballs optimized to run as domU guests in Xen based private or public cloud setups.

See the Xen builds announcement for details.

LXC builds

The TurnKey LXC template leverages TurnKey OpenVZ builds and patches them on the fly for LXC deployment.

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 Docker builds announcement for details.
 

 

Comments

Hyper-V

Could you start provide documentation, if not support, for Hyper-V users? It would be great if you would start offering ready-to-go VM appliances pre-packaged with Integration Services, but please at least provide some explicit guidance here regarding which format is recommended for use with Hyper-V.

Liraz Siri's picture

Special Hyper-V integration will have to be community driven

The generic live CD ISO should work fine with Hyper-V.

Work on more advanced configurations such as using Integration Services will have to be community driven since we don't currently have a Hyper-V environment on hand for testing.

And about use with KVM virtualization ?

Please say something about how to use these imageswith KVM virtualization !

Liraz Siri's picture

You can install the ISO on KVM

You don't need a special build format for KVM. Just use the ISO.
Jeremy's picture

Or you can import and convert the VMDK build to KVM

I haven't tested it but I have read that it is easy with built in KVM/qemu tools!

[update] Just realised that it's here in the docs...! :)

Any CI commands to run on Ubuntu / CentOS?

Any CL commands to install a Turnkey LAMP / LAPP image on a generic VPS Ubuntu or CentOS image?

- sudo apt-get -y XXXX

- sudo wget http://

- yum -y install XXXX