Linux, Open Source & Ubuntu: LABS GALLERY: Novell SUSE Studio Makes Linux Appliance Creation a Snap

 
 
By Jason Brooks  |  Posted 2009-07-29
 
 
 

LABS GALLERY: Novell SUSE Studio Makes Linux Appliance Creation a Snap

 

LABS GALLERY: Novell SUSE Studio Makes Linux Appliance Creation a Snap

Getting Started

SUSE Studio supports OpenID for authentication.

Getting Started

Choose Your Appliance Foundation

As base distribution options, SUSE Studio offers up the free and community-supported openSUSE 11.1, alongside two versions of the Novell-supported SUSE Linux Enterprise. I could choose from a variety of system templates for each distribution option.

Choose Your Appliance Foundation

Name & Architecture

On the same page of the interface, I selected either the 32-bit x86 or 64-bit x86-64 processor architecture for my appliance.

Name & Architecture

Ready to Roll

With my base choices in place, it was time to start adding software to my test appliance.

Ready to Roll

Software Selections

The SUSE Studio interface presented me with the repositories and packages that came with my base template selection. From here, I could begin adding or removing software packages and software package sources from my appliance project.

Software Selections

Software Browsing

I clicked the icon for "to be installed" software and began to peruse the queued applications.

Software Browsing

Adding Repositories

Some of the applications I wished to add weren't available in the repositories I started with, but SUSE Studio made it easy for me to add new software sources, many of which hail from the OpenSUSE Build Service project.

Adding Repositories

New Repositories in Place

Back at the main software tab, I could see that the repositories I added were now part of my appliance project.

New Repositories in Place

Upload RPMs

In addition to connecting existing repositories to my project, I could quickly populate a new repository of my own by uploading or linking to RPMs or sets of RPMs.

Upload RPMs

OpenSUSE Build Service

I don't know why, but the one repository that SUSE Studio refused to add to my appliance project was the Mozilla Beta channel on the OpenSUSE Build Service. I worked around this kink by uploading the package I needed through the RPM upload tool.

OpenSUSE Build Service

Build New Packages

For applications without a ready RPM package, I could use the Build Service to create a package. SUSE Studio could benefit from tighter integration with the Build Service.

Build New Packages

Dependency Sorting

Novell's SUSE Linux distributions feature very good dependency resolution logic and tools. Both surface in SUSE Studio, which makes clear the relationships between software components.

Dependency Sorting

Banning Packages

I gave these dependency-resolving tools a run-through when I sought to "ban" the icewm package from my appliance.

Banning Packages

Addressing Conflicts

When I banned icewm from my project, an error message appeared in the interface's left-hand sidebar. Clicking the "more" link called forth a handful of operations that would resolve the conflict.

Addressing Conflicts

Software Selection Warning

When I tried to resolve my icewm conflict by removing the sax2 package, SUSE Studio warned me that the removal would prevent my appliance from correctly configuring its X server.

Software Selection Warning

Solve Errors with Repositories

In addition to addressing package dependency issues by adding or subtracting packages, SUSE Studio offered, in certain cases, to resolve conflicts by adding new repositories.

Solve Errors with Repositories

Software Recommendations

Many of the packages in the SUSE repositories come with lists of recommended and suggested complementary software packages. I could add these optional components either on a per-package or wholesale basis.

Software Recommendations

Configuration Options

Once I was satisfied with my software selections, I moved on to set basic configuration settings, such as those for time zone, networking and users.

Configuration Options

Tweaking Appearance

I could also make some adjustments to the appearance of my appliance.

Tweaking Appearance

End User License Agreement

SUSE Studio offered to tack multiple EULAs onto my appliance.

End User License Agreement

Configure MySQL

SUSE Studio includes a handy option for pre-populating MySQL databases and for configuring users and permissions.

Configure MySQL

Auto-Start Options

I could single out applications to launch upon appliance log-in, but found that this feature didn't work with my minimal X IceWM desktop.

Auto-Start Options

Storage and Memory Options

For appliance images destined for Xen or VMware hosts, SUSE Studio offered an option for setting RAM and storage sizes.

Storage and Memory Options

Build and Boot Scripts

SUSE Studio provides a facility for adding post-build and boot-time scripts to its appliances.

Build and Boot Scripts

Overlay Files

For files or sets of files that don't come in software package format, I could direct SUSE Studio to populate my appliances with archives or single files.

Overlay Files

Appliance Format Options

SUSE Studio will produce appliance images in raw disk image, Live CD/DVD iso, VMware and Xen formats. I'd like to see Novell add Amazon's EC2 ami format to the mix.

Appliance Format Options

Format-Based Recommendations

When I set my image type to VMware, SUSE Studio suggested that I add the VMware tools to my appliance.

Format-Based Recommendations

Build Time

With my software selections and settings in place, it was time to kick off a build of my appliance.

Build Time

Test Drive

One of my favorite features of SUSE Studio is the Test Drive option. After building my appliance, I had 60 minutes to test out my image before downloading the file.

Test Drive

Modified Files

During my Test Drive, I could pull up a list of the files that I'd modified during the test run, and choose to add these files to the appliance via the overlay option.

Modified Files

LABS GALLERY: Novell SUSE Studio Makes Linux Appliance Creation a Snap - Page 32

 

LABS GALLERY: Novell SUSE Studio Makes Linux Appliance Creation a Snap - Page 32

Rocket Fuel