ExoGENI VM Images

ExoGENI is a BYOI testbed - unlike Emulab/InstaGENI the images are not hosted by the testbed. Instead, VM images can be created by anyone, uploaded to any webserver and then used to create slices. ExoGENI control software is provided with a URL of the metafile, containing the parts of the image, based on which it retrieves the image and boots VM instances with it. ExoGENI does provide a few starter images that can be used by experimenters.

ExoGENI VM images typically consist of three separate parts:

  • The kernel
  • The ramdisk
  • The filesystem

Kernels and ramdisks can be mixed and matched with different filesystems, if desired, as long as necessary modules to mount the filesystem are in the ramdisk.

A simple XML-based meta-file format is used to describe images. Image parts are referenced by the URLs of the metafile and the image itself is used by providing ExoGENI tools (Flukes, omni or Flack) with the URL of the metafile and its SHA1 signature. See for RSpec conventions on specifying images to ExoGENI.

Note that since image elements are referenced by URLs, the different parts of the image and the metafile itself can all be hosted by different webservers.

<images>
	<image>
		<type>ZFILESYSTEM</type>
		<signature>FS IMAGE SHA1 HASH</signature>
		<url>http://url_to_compressed_filesystem_image</url>
	</image>
	<image>
		<type>KERNEL</type>
		<signature>KERNEL IMAGE SHA1 HASH</signature>
		<url>http://url_kernel_image</url>
	</image>
	<image>
		<type>RAMDISK</type>
		<signature>RAMDISK IMAGE SHA1 HASH</signature>
		<url>http://url_ramdisk_image</url>
	</image>
</images>

To see a working example, simply click on any URLs in the listing provided by the Image Registry Service

Finding existing images

Well-known and tested images are listed on this page through an Image Registry Service. In addition to providing a human-readable web page, there is also an XMLRPC service that is available for tool builders (see same page). For example Flukes automatically reads all images listed by this service at startup.

Note that due to licensing requirements we cannot list or provide non Open-Source OS images (MS Windows, Solaris etc).

Building and using your own images

You can build your own image yourself on any Linux computer and add NEuca guest tools to it.

After you have placed the image metafile on some Internet-facing webserver and calculated its SHA1 signature (using e.g. 'sha1sum' program under Linux), you can

  • Add the image to the list of images known to your Flukes
  • Input the image metafile URL and SHA1 signature into Flukes image dialog
  • Input the image metafile URL and SHA1 signature into RSpec (for omni and Flack)

You can then launch a slice using this image.

Note that since ExoGENI software needs to fetch parts of your image from the webserver prior to launching your slice, the first time you launch a slice with a particular image in a particular site, you may incur a significant delay.

There is a helpful script attached to this page that helps create an image descriptor XML file.

Making your images useful to other experimenters

If you have an image you would like to share with the community, please send an email to geni-orca-users list and ask for the image to be added to the list of well-known images. This way it will become automatically available to all experimenters.

Please provide detailed information about what is on the image and who created it.

Navigation
Print/export