Version 2 (modified by pruth, 7 years ago)

--

Virtual Machine Images

Known ORCA images can be found here: images

ImageProxy: Using ImageProxy with ORCA

ImageProxy

Virtual Machine images can be made available to ORCA by placing them (and their metadata) at well known URLs. An ORCA service called ImageProxy will manage staging and caching all images at the appropriate cloud site(s). ImageProxy identifies each image by its URL and the SHA-1 hash of the image and requires an xml metadata file with the identifying information.

Sample metadata file. Node element names and keywords representing image type are case sensitive:

<images>
	<image>
		<type>FILESYSTEM</type>
		<signature>FS_IMAGE_HASH</signature>
		<url>http://url_filesystem_image</url>
	</image>
	<image>
		<type>KERNEL</type>
		<signature>KERNEL_IMAGE_HASH</signature>
		<url>http://url_kernel_image</url>
	</image>
	<image>
		<type>RAMDISK</type>
		<signature>RAMDISK_IMAGE_HASH</signature>
		<url>http://url_ramdisk_image</url>
	</image>
</images>

The metadata file itself also needs to be hosted. Provided with the URL for the metadata file and its signature (SHA1 hash), ImageProxy associated with a cloud site can download and install the required images and provide ORCA with site-specific image ids (AMI/EMI, AKI/EKI, ARI/ERI) that can be used to create guest VMs on that site.

The documentation for the latest metafile format is maintained on the ImageProxy wiki.

Compressed Images

The image provider can reduce the amount of data transfered across the network by compressing the virtual machine images and modifying the metadata file to indicate that the image is compressed. The file system type should be set to "ZFILESYSTEM".

<images>
	<image>
		<type>ZFILESYSTEM</type>
		<signature>FS_IMAGE_HASH</signature>
		<url>http://url_to_compressed_filesystem_image</url>
	</image>
	<image>
		<type>KERNEL</type>
		<signature>KERNEL_IMAGE_HASH</signature>
		<url>http://url_kernel_image</url>
	</image>
	<image>
		<type>RAMDISK</type>
		<signature>RAMDISK_IMAGE_HASH</signature>
		<url>http://url_ramdisk_image</url>
	</image>
</images>

Currently, ZFILESYSTEM can handle .gz, .bz2, and .xz. images compressed with these tools can have any name.

In addition, ZFILESYSTEM can handle images that are tarred before they are compressed with the tools above extending the allowed formats to include .tgz, .tbz2, and .txz. However, images that are tarred and gzipped must conform to the expected naming convention by naming the image file "filesystem". The tarball can have any name.

Sparse Images

$ dd if=/dev/zero of=myimage.img bs=1 count=1 seek=2G

Attachments