samwyse
Enthusiast
Enthusiast

How \*NOT* to configure an appliance

I just posted this over at the MySQL forums, but I thought that it would be useful to anyone building an appliance...

I downloaded the MySQL Virtual Appliance for what I hoped would be a quick-n-dirty solution to a developement problem. I am very disappointed in what I received. The primary issue is that I can't find any sort of README or other documentation about how to use the appliance. \[...] That said, here are the seconary problems that I've encountered.

There are three virtual disks that are each 2GB in size, apparently used for a 6GB root filesystem that's only 25% used. I'm not sure why there isn't just one 6GB disk but the real problem is that they are all fully allocated; VMware supports virtual disks that only use as much space as you need, so out-opf-the-box they should only occupy 1.4GB on my desktop.

The network configuration depends on a file named /etc/sysconfig/network/ifcfg-eth-id-XX:XX:XX:XX:XX:XX, where the last bit is the virtual adaptor's MAC address. Unfortunately, the first time that I activated the machine with the player, it suggested that I change the UUID associated with the VM; doing so apparently also changes the MAC address of the adaptor, so IP networking wouldn't come up. I've never had this problem with other VMs, so it was a real surprise and took a while to figure out.

Lack of an obvious root password -- fortunately, I did find threads here \[the MySQL forums] that told me that the default for both root and lxuser should be 'MyMySQL', although not until after I had hacked my way into the system using other means. \[Better would be no password, the userid, or 'password'].[/i]

'Nuff said!

0 Kudos
6 Replies
bac
Expert
Expert

Thanks for that feedback, and thanks also for communicating the feedback with the MySQL folks as well. As we've mentioned in some previous posts, we're putting together a process for ensuring that the 3rd party VMs that we link to meet some uniform standards for documentation and user-friendliness.

As you've pointed out, these are good things to watch out for when configuring an appliance VM.

BTW since you mentioned the MAC address changing: yes, the MAC is derived from the UUID of the VM, so if you change the VM's UUID the MAC address will also change. There are two ways to get around this. One is that there is a configuration option that suppresses the "do you want to create a new UUID?" question and always keeps the existing UUID. This is fine if no two people who use that appliance VM are on the same Ethernet; otherwise, you will get MAC address conflicts. The other option (which avoids the MAC address conflict issue) is to configure the networking in the guest OS in such a way that it doesn't rely on the NIC's MAC having a certain value. That way, users can copy and move the VM and everything will still work properly when the UUID and MAC change.

0 Kudos
samwyse
Enthusiast
Enthusiast

Hey, I've got a vested interest in seeing VMware do well (check out my profile to see why).

Since my previous post, I've since had much better luck using rPath's appliance. The bad news is that I couldn't find an actual VM at their site; the good news is that I was able to create an empty VM using a copy of VMware Workstation on my laptop, transfer the 4KB .ZIP file to my client's development system, and (after just a bit of .VMX editing) boot rPath's .ISO image using VMware Player. I got the whole thing up and running in less time than I spent hacking on MySQL's version.

0 Kudos
jatnieks
Contributor
Contributor

I downloaded the MySQL Virtual Appliance for what

I hoped would be a quick-n-dirty solution to a

developement problem. I am very disappointed in what

I received.

Me too.

The network configuration depends on a file named

/etc/sysconfig/network/ifcfg-eth-id-XX:XX:XX:XX:XX:XX,

where the last bit is the virtual adaptor's MAC

address. Unfortunately, the first time that I

activated the machine with the player, it suggested

that I change the UUID associated with the VM; doing

so apparently also changes the MAC address of the

adaptor, so IP networking wouldn't come up. I've

never had this problem with other VMs, so it was a

real surprise and took a while to figure out.

Can you provide details on how to resolve this? Is there a solution without having to reactivate the VM and not change the UUID?

Thanks,

dan.

0 Kudos
samwyse
Enthusiast
Enthusiast

The network configuration depends on a file named

/etc/sysconfig/network/ifcfg-eth-id-XX:XX:XX:XX:XX:XX,

where the last bit is the virtual adaptor's MAC

address.

Can you provide details on how to resolve this? Is

there a solution without having to reactivate the VM

and not change the UUID?

Well, I simply renamed the file to match the new MAC address, but I've since had some other ideas. One is to try adding these lines to the .VMX file (using the correct MAC address, of course):

ethernet0.generatedAddress = "00:0c:29:2f:82:a7"

ethernet0.generatedAddressOffset = "0"

I'm not sure what the second line does, but I always see them together; voodoo programming would suggest leaving it in.

A second idea is to rename the ifcfg-eth-id-XX:XX:XX:XX:XX:XX file to ifcfg-eth0, in the hopes that the config program would accept that name. I haven't tested this yet, though.

0 Kudos
samwyse
Enthusiast
Enthusiast

BTW, since I'm posting, I thought that I'd mention that I have since found the VMs at rPath's web site. I don't know how I missed them before; they are quite obvious to anyone who actually reads the web page.

BTW, rPath has some interesting stuff on their site. They have an online build process that will take a recipe for an appliance and produce .ISO images, VMware images or both.

0 Kudos
jatnieks
Contributor
Contributor

Ok, but how do I find out what the new MAC address is?

I just tried renaming (copying, actually) the original file to ifcfg-eth0 and guess what? It worked! Excellent, thanks!

0 Kudos