On Fri, Jul 17, 2009 at 12:06:31PM +0100, Matthew Booth wrote:
On 17/07/09 11:21, Daniel P. Berrange wrote:
>IMHO doing this is a big mistake. This is what we did for virt-install
>and hugely regret it. Things just don't fall into a nice hierarchy. We
>are now looking at doing a flat list of distros + tagging/categorization
>relationships to be defined.
>
>
http://www.redhat.com/archives/et-mgmt-tools/2009-June/msg00018.html
Thanks, Dan.
What problems did you hit? I'm inclined to think I might get away with
it for virt-v2v because we also have so much other additional info about
the system. So far, 'redhat' pretty much means it uses rpm rather than
anything else.
A hierarchy was insufficiently flexible. eg, you can't represent fact
that CentOS and RHEL are essentially identical. Can't represent that
RHEL-5.3 has VirtIO, but RHEL-5.2 does not. Can't represent the idea
of one distro being a newer version of another. THe core problem is
that different pieces of information you care about imply different
types of hierarchy or relationship, to the extent that you cannot have
a single hierarchy that works. The only conclusion I could come to is
that hiearchies are fundamentally the wrong approach, and that a flat
list of distros + metadata tagging/categorization was what we needed.
You can of course later construct arbitrary hierarchies at a UI level
from the metadata.
Are you actually doing OS detection, or is this just for filling in
distro-specific defaults? What sort of data do you have on individual
distros?
We detect the OS type from the install media using a variety of
heuristics. eg, looking for $URL/.treeinfo to identify Fedora
distros. Once we've determined the distro, we lookup various
bits of device info in the OS dictionary such as whether to
use virtio, enable ACPI/APIC, whether it can do Xen paravirt
CDROM device, the type of mouse to configure, preferred clock
sync mode, etc, etc
Daniel
--
|: Red Hat, Engineering, London -o-
http://people.redhat.com/berrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org -o-
http://ovirt.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|