Create Your Own Linux Appliances

khess 0 Tallied Votes 1K Views Share

That's right, create your own Linux virtual appliances with VMware Studio. Appliances are small, single purpose servers that provide a service to users. Some examples are Content Management Systems (CMS), Customer Relationship Management (CRM) systems, web servers, mail servers, DNS servers, database servers, and so on.

VMware Studio is actually a virtual machine (VM) image that runs in VMware Server, VMware Player, and possibly their other products. To use the Studio, download and boot the VM. Instructions on how to access the web-based interface are displayed to you on the VM's console.

The appliance-building process is simple but requires that you have some advanced knowledge of Linux. VMware's Studio is a tool that is really more suited to ISVs (Independent Software Vendors) who want to supply an appliance that hosts their application or service. When you build your appliance, you can add in an update repository so that your appliance users can easily download and install updates from your repository with minimal effort--a great feature for ISVs.

There are a few glitches with the VMware Studio system but they are relatively minor and should be fixed in the next release since VMware is aware of them. If you need to build an appliance or always wanted to build your own distribution, this is the tool for you.
Novell also offers a tool called SUSE Studio (still in alpha) that fills the same needs as VMware's Studio. I find that SUSE Studio is friendlier to work with and requires less of the user than VMware's product. SUSE Studio is entirely web-based so you can create virtual appliances at a customer site, if needed. I think SUSE Studio is ready for general use but Novell is notoriously conservative with its releases of new software--one explanation for their products having a reputation of rock solid stability.

You can also download ready-to-run virtual appliances from VMware, Thoughtpolice, JumpBox, and several other appliance repositories. I'd rather build my own using VMware Studio so that I can have complete control over all the included packages. You don't have to use a "Studio" application to create your own virtual appliances, you can install your own favorite distribution into a VM, customize it, and distribute it but these Studio apps make it much easier to do so.

You can get the full story on VMware Studio, SUSE Studio, and virtual appliances by picking up a copy of the January 2008 Linux Pro Magazine (Linux Magazine in Europe) and reading my Virtualization column at Linux Magazine.

How do you use virtual appliances? Talk back and let me know.

jbennet 1,618 Most Valuable Poster Team Colleague Featured Poster

check out something called RBuilder too

khess 95 Practically a Master Poster

Yes, rbuilder is cool, though I've never successfully created anything with it.

ejulien 0 Newbie Poster

I also use virtual appliances. I often build and deploy appliances in virtual and cloud environment but I use UForge Appliance Factory, www.usharesoft.com. I found the platform very simple and easy to use. Let's try it, Khess. You will successfully build and maintain your appliance!!

iamtron01 0 Newbie Poster

My self and a co-worker a little while back developed an Off Site Backup Appliance. We used an off the shelf Linux Distribution. It's quite a challenge stripping off the extras you get in a distro and also getting it compact enough to fit on a small flash rom. We managed to get the OS and our Software onto a 1GB Flash Rom. Also rather than the normal C and C++ language route we chose Ruby on Rails which is a modern object oriented language with easy to understand syntax and structure. I've thought about making it into a kit/book as an example of modern avant-garde approach to linux appliances. Send me a comment if anyone out there could benefit from such an item. michael at tjc.biz

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.