Setting up new Cobbler server from existing one
by petermity
If I have an existing Cobbler server all set up, is there an easy
way to copy all of the distros, profiles, and other Cobbler
aspects from it to a freshly created unit?
Could I just copy /etc/cobbler, /var/www/cobbler, and
/var/lib/cobbler to the new machine and then do cobbler sync?
12 years, 8 months
Allow multiple snippets directories
by petermity
Please allow multiple directories to be listed for "snippetsdir".
I like keeping my snippet files separate from the default Cobbler
ones.
Initially I added a symlink from the default snippets directory
to my snippets. But then I have to specify the directory path
for each snippet, and the hierarchy search method for per_profile
etc. doesn't work under that directory.
Then I changed the settings to point to my snippets directory
instead of the default, and copied Cobbler's default snippets to
my directory. Now I don't need to specify a path to snippets,
and the hierarchy works. But then everything is mixed up, and if
Cobbler's snippets change in a later release, it's easy to forget
to update them.
That's why it would be nice to be able to use a PATH or LIB style
method to allow multiple directories to be specified for
snippets. Then they don't need to be mixed up, yet the hierarchy
search could work in all directories.
12 years, 8 months
How to clear "cobbler status"?
by petermity
The "cobbler status" command is handy to see when builds are
running/finished. However, the display can be cluttered by units
that finished building (or hung/failed) days/weeks ago, even if
the Cobbler server is rebooted. Is there a way to start fresh?
Related: is there a wget command or some other method to tell
Cobbler that a failure occurred in the %post section? Something
analogous to the $kickstart_done, maybe a $kickstart_failed?
12 years, 8 months
clean use of cobbler/kickstart and cfengine
by David Lee
(I'm new to cobbler, and using v 2.0.11)
This is really a request for ideas.
I'm trying to set up a network deployment and maintenance framework for
a rapidly growing number of Linux boxes.
Cobbler, even though I'm new to it, seems to be an absolute treat. Thanks!
Cobbler principally does the installation of a clean OS (more or less
"out of the box" from the manufacturer) onto the disk. I am strongly
resisting any urge to do any fine-grained tuning at this point, because
that should actually be classed as the first steps of the next item...
'cfengine' (v3.1.4) is ideal for long-term maintenance of such
installations.
But it would be good if that installation procedure could be adjusted
just a little bit to include the installation of the 'cfengine3' rpm
from somewhere (as it is not part of the RHEL distribution) and a
minimal bit of associated scripting (or similar) to tickle 'cfengine'
into action as the freshly installed machine first boots.
What might be a good, clean way to glue that cfengine install/initialise
onto the back end of the cobbler-based installation?
--
: David Lee
: ECMWF (Data Handling System)
: Shinfield Park
: Reading RG2 9AX
: Berkshire
:
: tel: +44-118-9499 362
: email: david.lee(a)ecmwf.int
12 years, 9 months
'cobbler get-loaders' through http proxy?
by David Lee
(I'm new to cobbler, and using v 2.0.11)
'cobbler check' is advising:
1 : some network boot-loaders are missing from /var/lib/cobbler/loaders,
you may run 'cobbler get-loaders' to download them, or, if you only want
to handle x86/x86_64 netbooting, you may ensure that you have installed
a *recent* version of the syslinux package installed and can ignore this
message entirely.
It so happens that we are, at present, entirely 'x86_64', using RHEL 5.6
and above, and all seems well. So in my case I probably don't need to
go any further at present. (Correct?)
But when, for the fun of it, I tried 'cobbler get-loaders' it appeared
to hang. I strongly suspect that this is because we need http proxying
to reach off-site, and it isn't clear whether 'cobbler get-loaders'
uses, or can use, http proxying (either by command argument or
environment variable). Have I missed something in the documentation?
--
: David Lee
: ECMWF (Data Handling System)
: Shinfield Park
: Reading RG2 9AX
: Berkshire
:
: tel: +44-118-9499 362
: email: david.lee(a)ecmwf.int
12 years, 9 months
FC15 networkinterface names problem
by Joachim Badzong
Hi,
iam just trying to deploy FC15 machines with cobbler.
One problem that i now got is that they suddenly changed the naming of
the network interfaces in FC15.
There is no ethX anymore. But i need that for a lot of scripts.
Now i have read that there should be an kernel option at install time to
prevent that new nameing.
"biosdevname=0"
Now my question is where/how can i that insert/use in my kickstarts
scripts of cobbler ?
Thanks for any idea.
J.
12 years, 9 months
"Split-brain" DHCP with Cobbler?
by lists@truthisfreedom.org.uk
Hi all,
I've got a need to deploy servers across multiple VLANs from the same
cobbler server - is this possible?
Ideally, I'd like to manage/build all servers from the same cobbler
instance, however it would appear that cobbler only allows for the
management on a single subnet (we're faced with one subnet on
192.168.x.x and another on 172.16.x.x :( )
Is this possible, or should I just drop DHCP management from cobbler
(the servers are set to static IP after build), serve up a basic image
using PXE and go from there?
Kind regards,
Matt
12 years, 9 months
XMLRPC Api with Ruby?
by lists@truthisfreedom.org.uk
Hi again,
We're trying to get Capistrano to talk to cobbler for automated
deployment based on puppet classes (Cobbler is the "source of truth"
on our network).
I'm basically trying to replicate:
import xmlrpclib
remote = xmlrpclib.Server("http://cobbler/cobbler_api")
mgmt_class = raw_input("Please choose a puppet class: ")
for system_name in remote.find_system({'mgmt_classes':mgmt_class}):
fqdn =
remote.get_system_for_koan(system_name)['interfaces']['eth0']['hostname']
first_part = fqdn.split('.')[:1]
if first_part[0].split('-')[:1][0] != "ci":
print fqdn
however I can't seem to get the call to the API correct in Ruby (the
above python works fine).
I can get as far as the following before it fails:
require 'rubygems'
require 'xmlrpc/client'
server = XMLRPC::Client.new2("http://192.168.0.13/cobbler_api")
servers = server.call2('find_system',"{'mgmt_classes':'default'}")
puts servers
and then it errors with the following error in cobbler.log:
Tue Jun 28 15:39:17 2011 - INFO | REMOTE find_items(system);
criteria(mgmt_classes); sort(None); user(?)
Tue Jun 28 15:39:17 2011 - INFO | find_items; ['system']
Tue Jun 28 15:39:17 2011 - INFO | Exception occured: exceptions.TypeError
Tue Jun 28 15:39:17 2011 - INFO | Exception value: find() argument
after ** must be a dictionary
Tue Jun 28 15:39:17 2011 - INFO | Exception Info:
File "/usr/lib/python2.4/site-packages/cobbler/remote.py", line
1759, in _dispatch
return method_handle(*params)
File "/usr/lib/python2.4/site-packages/cobbler/remote.py", line
586, in find_system
return self.find_items("system",criteria,expand=expand)
File "/usr/lib/python2.4/site-packages/cobbler/remote.py", line
573, in find_items
items = self.api.find_items(what,criteria=criteria)
File "/usr/lib/python2.4/site-packages/cobbler/api.py", line 426,
in find_items
res=items.find(return_list=True, no_errors=False, **criteria)
Using the Cobbler Gem doesn't appear to work either (I can't find the
correct method to use to search based on "mgmt_classes").
Can anyone help?
Thanks,
Matt
12 years, 9 months
koan replace self fails
by Tim Dunphy
hello list!
I am attempting to run a 'koan --replace-self' on a virtual client so that I can convert it from 64 bit to 32 bit.
I have added a system for the target in the cobbler server:
cobbler system add --name=virtcent02.example.com --mac="xx:xx:xx:xx:xx:xx" --profile="xen32" --ip="192.168.1.24"
On the client side I can get koan to list the system that I want:
[root@VIRTCENT02:~] #koan --server cobbler --list=systems | grep virtcent02
virtcent02.example.com
And list the profile I want to use:
[root@VIRTCENT02:~] #koan --server cobbler --list=profiles | grep xen32
xen32
But when I issue the 'replace self' command this is what I see:
[root@VIRTCENT02:~] #koan --server cobbler --replace-self
- looking for Cobbler at http://cobbler/cobbler_api
the rhpl or ethtool module is required to use this feature (is your OS>=EL3?)
And both the client and the server are centos 5.5
May I have a suggestion on how to get past this point?
thanks!
tim
12 years, 9 months
repo yum options
by Owen Beckley
I'm running cobbler 2.0.11 from EPEL on CentOS 5.
I've got a set of repos that I would like to exclude one RPM from. I
added an exclude option to the "Yum Options" field in cobbler.
Here's one example:
# cobbler repo report --name SL5-x86_64-Base
Name : SL5-x86_64-Base
Arch : x86_64
Breed : yum
Comment :
Createrepo Flags : <<inherit>>
Environment Variables : {}
Keep Updated : True
Mirror :
http://linux1.fnal.gov/linux/scientific/5x/x86_64/SL
Mirror locally : True
Owners : ['admin']
Priority : 1
RPM List : []
Yum Options : {'exclude': 'jdk'}
I would expect that the cobbler-config.repo file that is generated for a
system would contain "exclude=jdk," but it doesn't. Here are the lines
from cobbler-config.repo for that repo:
[SL5-x86_64-Base]
name=SL5-x86_64-Base
baseurl=http://10.0.110.55/cobbler/repo_mirror/SL5-x86_64-Base
enabled=1
priority=1
gpgcheck=0
Also, the "exclude" option isn't in the repo file used by reposync from
the origin:
# cat
/var/www/cobbler/repo_mirror/SL5-x86_64-Base/.origin/SL5-x86_64-Base.rep
o
[SL5-x86_64-Base]
name=SL5-x86_64-Base
baseurl=http://linux1.fnal.gov/linux/scientific/5x/x86_64/SL
enabled=1
priority=1
gpgcheck=0
I've got other repos where I added "enabled=0" to "Yum Options," and
that seems to work. Why doesn't "exclude=jdk" work the same way? Did I
miss a step that was required after I changed "Yum Options" to make the
change take effect?
--
Owen Beckley - owenb(a)foxriver.com - T: 630 482 5148 - M: 630 788
6998
12 years, 9 months