To answer your other question.

Don't specify --profile or --system.    If you mean --system, just specify --system.   Cobbler is treeish, the system already knows it's profile on the server.

This should probably be a "options conflict" error or something.

On Thursday, February 16, 2012 at 3:37 PM, Michael DeHaan wrote:


OK, I understand that that there was no hostname assigned. However, how
do you assign one when you're installing with koan and --profile? I
supplied a --virt-name, which I expected to be the name it used to auto-
register the machine. There could be a way to specify a hostname when
doing a 'koan --profile' install, but I'm not seeing it.

The system failed to detect the hostname from running *inside* the guest, it has nothing to do with what parameters you set on the hypervisor.    It got "localhost.localdomain" back, more or less, and decided that wasn't going to be unique enough.

You could possibly use Cobbler with manage_dhcp and manage_dns to ensure you gave out a particular hostname, though ordinarily I'd expect you to at least get a dhcpXXX hostname if you have DHCP.  In this way, you would procreate the system before it exists rather than using koan with --profile, you'd declare the system, assign a MAC and IP, and use koan with --system instead to bring that system to life.   Much better, IMHO.

Keep in mind cobbler-register has *NOTHING* to do with koan at all, it's just something you run on any system, so don't expect the name of the virtual machine to be visible inside the guest.  The guest doesn't really know it's virtualized.

cobbler-register is more for folks who have a large network of machines they already provisioned using something else, and need to get them into cobbler so they can reprovision, etc.    In those cases, you could also pass --fqdn to register to name the systems.  If you were doing that in the kickstart and deploying by system name (not --profile, but --system) the system name variable itself is made available to the kickstart, so you have some options.
 
If you don't like those options, the cobbler register script is very simple, so you could change it to work differently.

https://github.com/cobbler/cobbler/blob/master/koan/register.py


lead to this attempted solution:

I defined a system using the profile I wanted, and then try to run
koan with --system=SYSTEM_NAME.

which lead to this problem:

System installs fine, but the kickstart meta data does not take
affect; in this case, the chef job that was run when I installed
via --profile was not run when I installed via a --system= that
used the same previously mentioned profile.

You might be using different kickstart templates if you assigned
--kickstart to the system. Hard to tell without seeing more.

I would find it unlikely that the metadata merger is broken as that's
a pretty core piece of functionality.

In the profile I have:

Kickstart: /var/lib/cobbler/kickstarts/el6.ks

Kickstart Metadata: chef_args=-j
user_packages=@Development Tools,koan

In the system, Kickstart and Kickstart Metadata are blank (I had tried
putting <<inherit>> in there when I defined the system, but when I
saved, it blanked it out.

My install command line was:

koan --virt --virt-name="test-jk-el6-64" --profile=builder-el6-x86_64 --
server=ourcobblerserver --virt-path=VolGroupName

It followed all the specs of the profile except for the Kickstart
Metadata.

which lead to this attempt:

koan --virt --profile=builder-el6-x86_64
--system=builder-el6-64-01\ --server=cobbler.example.com
(http://cobbler.example.com) --virt-path=vg_group

which lead to this interesting bug:

- reading URL:
Traceback (most recent call last):
<snip>
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 404: NOT FOUND

Why was it trying to pull the profile from the system section of
the API?

Can't you "override" the profile when you specify a system?

Kickstart metadata is hash merged such that ks meta values in the
profile blend with the system, with the system replacing any keys
defined in the system. Though if you had a key set in the profile
and not in the system, it would obviously remain.

OK, I understand that. However, please look at the error again. When I
specify both the profile and the builder, it tries to pull the *PROFILE*
from /system/

/cblr/svc/op/ks/system/builder-el6-x86_64

instead of from

/cblr/svc/op/ks/profile/builder-el6-x86_64

The latter one works.

j

--
Joshua J. Kugler - Fairbanks, Alaska
Azariah Enterprises - Programming and Website Design
PGP Key: http://pgp.mit.edu/ ID 0x73B13B6A
_______________________________________________
cobbler mailing list