[et-mgmt-tools] Cobbler and Koan for _my_ needs

Michael DeHaan mdehaan at redhat.com
Wed Sep 26 17:41:25 UTC 2007


Matthias Saou wrote:
> Hi,
>
> I hope this won't seem like a selfish request, I'll just try to explain
> how cobbler and koan could much better fit my needs, and possibly those
> of others!
>
> My setup : I run Xen PV guests. LOTS of them. What I do to ease their
> management is use unpartitioned LVM logical volumes from the host as
> block devices, one for "/" and the other for swap.
koan already supports specifying multiple virtual disks, which can use LVM.
So you're ok there.

(--virt-path)


>  I don't let any
> tools create the guest config files, I create them myself "by hand"
> once, then deploy them through an rpm package to all the Xen hosts I
> have available. This way I have a central location to check for all
> guest configuration and MAC addresses.
>   
Cobbler is designed for central configuration, so it can be your MAC 
database.

> The initial guest install is where I'd like to use cobbler and koan in
> order to save time. I currently extract and modify a pre-existing RHEL5
> install, but that's another story ;-)
>
> Problem : Koan wants to create the Xen guest configuration files for me.
> I'd like it to be able to use an existing file and have koan extract the
> settings it needs from there.
>   
I'm not interested in adding this because then we do not leverage the 
full power of libvirt ...
we can configure /different/ types of virtualization without having to 
hardware in Xen specific features.


> Here is an example Xen guest config file I use :
>
> ---
> # Xen Configuration File
> name   = "cobbler"
> memory = "512"
> maxmem = "512"
> disk   = [ 'phy:/dev/data/cobbler,xvda,w',
>            'phy:/dev/data/swapcobbler,xvdb,w' ]
> vif    = [ 'mac=00:16:3e:5f:76:6e, bridge=xenbr0',
>            'mac=00:16:3e:5f:76:6f, bridge=xenbr1' ]
> uuid   = '5f766eef-8cf3-c287-1635-115e103561d0'
>
> bootloader = '/usr/bin/pygrub'
> vcpus = 2
> on_reboot = 'restart'
> on_crash = 'restart'
> ---
>   

All of the above can be set in koan. Well, all but the multiple bridges. 
Currently you can pick one.
For 0.6.3, you'll be able to specify you'd like more than one, though I 
need to figure out how I want to handle
this from the CLI perspective to make it sufficiently easy to understand.

> I generate the uuid myself (md5sum of the full host name), then use the
> 6 first characters in the eth0 mac address, increment it for the eth1
> mac address.
>
> Ideally, I'd like to be able to tell koan to use this existing
> "cobbler" file and use xenbr1 for everything it needs to do (since
> dhcpd and cobbler are only listening on that "private" network), then
> wait, and get a working "cobbler" system up and running :-)
>   
I'm not sure what you mean with regards to "existing cobbler file". 
Cobbler already
has mechanisms for specifying attributes related to virtualization.

> Is this something that could be achieved? Am I the only one to have
> multiple block devices, multiple network interfaces, and like having
> fixed MAC addresses for my Xen guests?
>   
Cobbler already supports multiple block devices and assigning specific MACs.
The only thing it currently lacks from what you list above, that I can 
see, is the ability
to specify multiple NICs, which I plan to address in the next release.

> Currently, koan might be useful to me, but once I get the guest
> running, I'd still need to move stuff around block devices and change
> bits and pieces of configuration to get things into place as I want
> them.
>   
Yep, thanks for sharing... this now confirms there are at least two 
people who want
control over two NICs, so it will be surely done now :) My main concern 
still is in expressing
this configuration in a simple way without overly complicating the 
--virt-bridge parameter.
It shouldn't be too difficult.

Anyhow, look at the other features in the koan manpage and cobbler 
documentation to see how
to do LVM, multiple disks, and so on.
> Matthias
>
>   




More information about the et-mgmt-tools mailing list