Saturday, March 15, 2008

Simple way to make Virtual appliances

Ubuntu community released ubuntu JeOS (Just Enough OS) to make virtual appliance. Here is the is the announcement. I am pasting part of announcement here.

"

Ubuntu Server Edition JeOS

Just enough OS for your virtual appliance

Ubuntu Server Edition JeOS (pronounced "Juice") is an efficient variant of our server operating system, configured specifically for virtual appliances. Currently available as a CD-Rom ISO for download, JeOS is a specialized installation of Ubuntu Server Edition with a tuned kernel that only contains the base elements needed to run within a virtualized environment.

Users deploying virtual appliances built on top of JeOS will benefit from:

  • better perfomances on the same hardware compared to a full non-optimized OS,
  • smaller footprint of the virtual appliance on their valuable disk space,
  • fewer updates and therefore less maintenance than a full server installation.

ISVs looking to develop virtual appliances will have a compelling platform in Ubuntu JeOS, an OS optimised for virtualization that greatly reduces the complexity and maintenance overhead normally associated with general purpose operating systems. Ubuntu JeOS Edition has been tuned to take advantage of key performance technologies of the latest virtualization products from VMware. This combination of reduced size and optimized performance ensures that Ubuntu JeOS Edition delivers a highly efficient use of server resources in large virtual deployments.

Without unnecessary drivers, and only the minimal required packages, ISVs can configure their supporting OS exactlyas they want. Ubuntu provides only the security and enhancement updates needed for operating in a virtualised environment with no extraneous overhead.

"

Technical specification of JeOS are given as

"

Tech Specs:

  • 151M iso image
  • Kernel 2.6.22
  • Optimized for VMWare ESX, VMWare Server
  • Intel or AMD x86 architecture
  • Minimum memory 128Mo
  • No graphical environment preloaded as it is aimed at Server virtual appliance
  • Working knowledge of linux administration, dpkg and aptitude recommended to start building your own appliance

Download

Start testing it right now, download the image today from http://cdimage.ubuntu.com/jeos/

"

Step by Step instructions to make virtual appliance from JeOS with your application are given here. Pretty well written article indeed. I have not tried it myself and it looks very easy. Some extracts from this article.

"

Installation of JeOS

Installation of JeOS is done the same way you would install any other OS in VMware, but you'll need to consider a few things:

  • To reduce the size of JeOS, SCSI drivers have not been included in the kernel shipped with JeOS. Make sure that you instruct VMware to use an IDE drive instead.

  • If you plan on shipping a virtual appliance, do not assume that the end-user will know how to extend disk size to fit their needs. So, either plan for a large virtual disk to allow for your appliance to grow, or provide the user with adequate documentation on allocating more space.

  • Given that it's much easier to change the amount of RAM allocated to your VM, set the RAM to whatever you think is a safe minimum for your appliace. The user can change this if/when necessary.

  • Even though LVM setup is proposed by the installer, it doesn't work at this time-- so if you need LVM, it will need to be set up post-install.

"

Install your application. Sample is given in the article.

Once your application is installed, clean this up as per the article.

Then final step in preparing virtual appliance as per article is :
"

Now it's time to shut down the system and do the final cleanup. Once it's shut down, go to your virtual machine settings in the VMware management console and select the virtual disk. Defragment it, which should reclaim all of the space you've freed, which will make the appliance smaller. Your virtual appliance is ready to ship! "

Nice work indeed from Ubuntu community.

No comments: