summaryrefslogtreecommitdiffstats
path: root/website/new/docs
diff options
context:
space:
mode:
authorMichael DeHaan <mdehaan@mdehaan.rdu.redhat.com>2007-06-08 15:39:59 -0400
committerMichael DeHaan <mdehaan@mdehaan.rdu.redhat.com>2007-06-08 15:39:59 -0400
commitf93692f7ddd7a18fc0c48c2e42e56e801e7df2e4 (patch)
tree56b1dfcb4904477f574f39a9b40f468792c4b92a /website/new/docs
parent066b6fd14f91959ff7272d1303ccab273d61ff6a (diff)
downloadthird_party-cobbler-f93692f7ddd7a18fc0c48c2e42e56e801e7df2e4.tar.gz
third_party-cobbler-f93692f7ddd7a18fc0c48c2e42e56e801e7df2e4.tar.xz
third_party-cobbler-f93692f7ddd7a18fc0c48c2e42e56e801e7df2e4.zip
New cobbler website.
Diffstat (limited to 'website/new/docs')
-rw-r--r--website/new/docs/cobbler-dhcp.html105
-rw-r--r--website/new/docs/cobbler-guide.html6
-rw-r--r--website/new/docs/cobbler-import.html98
-rw-r--r--website/new/docs/cobbler-repos.html94
-rw-r--r--website/new/docs/cobbler.html13
-rw-r--r--website/new/docs/cobbler_summit.odpbin0 -> 615454 bytes
-rw-r--r--website/new/docs/koan.html12
7 files changed, 297 insertions, 31 deletions
diff --git a/website/new/docs/cobbler-dhcp.html b/website/new/docs/cobbler-dhcp.html
new file mode 100644
index 0000000..696538d
--- /dev/null
+++ b/website/new/docs/cobbler-dhcp.html
@@ -0,0 +1,105 @@
+<a name="toc">
+<h2>Cobbler's DHCP Features</h2>
+</a>
+
+<a name="about">
+<h2>About</h2>
+</a>
+<p>
+Cobbler can optionally help configure a DHCP setup, to make sure that specific systems (specified by MAC address) get assigned to specific IP addresses.
+</p>
+
+<a name="whatssupported">
+<h2>What's Supported</h2>
+</a>
+<p>
+Currently cobbler can help generate a ISC DHCP configuration (package name: dhcpd). Cobbler 0.5.0 (release pending) can also use dnsmasq. DNSmasq can help you assign hostnames to specific systems as well as just the IP's.
+</p>
+
+<a name="#when">
+<h2>When To Enable DHCP Management</h2>
+</a>
+<p>
+If you are running on a larger network, most likely DHCP already exists. Cobbler managing DHCP, though, may be very appropriate for labs or other situations where admins can already control their DHCP. For all of this to work, cobbler must be running on the DHCP server.
+</p>
+
+<a name="#do_not_want">
+<h2>What If I Don't Want This?</h2>
+</a>
+<p>
+It's fine to not have Cobbler manage your DHCP infrastructure. In fact, it's the default behavior. If you want PXE to work in this case, just make sure that the next-server entry in your dhcp.conf, as well as the filename information is correct to serve up pxelinux.0 to the machines that want it.
+<p>
+<p>
+The idea in having cobbler manage DHCP is that it's closely related to PXE installation, and if we're maintaing a database about what systems we have and what they run, it makes sense to keep track of (and control) hostnames and IP's as well. Controlling DHCP from Cobbler makes this possible -- and it's one less thing the administrator has to configure.
+</p>
+
+<a name="enabling">
+<h2>Enabling DHCP Management</h2>
+</a>
+<p>
+Change /var/lib/cobbler/settings so that manage_dhcp has the value of 1.
+</p>
+<p>
+Edit /var/lib/cobbler/dhcp.template to taste -- mainly just making sure that the DHCP information is correct. You can add whatever else you want to that file, including anything you may have had from an existing setup.
+</p>
+<p>
+For Cobbler 0.5.0 and later, you can also optionally select dnsmasq instead of ISC dhcpd by changing the 'manage_dhcp_mode' to 'dnsmasq'. This is covered in more detail in the cobbler manpage. This allows, among other things, controlling the hostnames of provisioned machines as well as just the IP's.
+</p>
+
+<a name="howitworks">
+<h2>How It Works</h2>
+</a>
+<p>
+Suppose the following command is given:
+</p>
+<blockquote>
+<code>
+cobbler system add --name=AA:BB:CC:DD:EE:FF --pxe-address=192.168.1.1
+(newer versions:) cobbler system add --name=AA:BB:CC:DD:EE:FF --ip=192.168.1.1
+</code>
+</blockquote>
+<p>
+That will take the template file in /etc/cobbler/dhcp.template, fill in the appropriate fields, and generate a configuration that ensures that when AA:BB:CC:DD:EE:FF asks for an IP, it gets 192.168.1.1. The part to specify the address is not required, DHCP knows how to assign something within the configured range as well.
+</p>
+
+<a name="itaniums">
+<h2>Itaniums</h2>
+</a>
+<p>
+These are complicated. In order to PXE an Itanium correctly, one has to provide a "filename" value that references elilo, not pxelinux. Thankfully cobbler knows how to do this. When creating the distro object, make sure that --arch=ia64 is specified, and the right thing will be done here. Also note that to PXE Itaniums, the --pxe-address parameter is mandatory. This is due to a deficiency in LILO where it will ask for an encoded IP address, but will not ask for a PXE configuration file based on the MAC address. This is covered some in the cobbler manpage but bears repeating here.
+</p>
+<p>
+Also, sometimes Itaniums tend to hang during net installs... we're not sure why this is :)
+</p>
+
+<a name="dynamic">
+<h2>Dynamic DNS</h2>
+</a>
+<p>
+If you are using Cobbler >= 0.5.0, change 'manage_dhcp_mode' to dnsmasq, you can
+specify the parameter --hostname for any "cobbler system add" command where you also
+provide a MAC address. Restart dnsmasq before provisioning to apply changes.
+</p>
+<p>
+You may also use the Cobbler trigger mechanism documented on the <A HREF="http://et.redhat.com/page/Cobbler_Triggers">Cobbler Wiki</A> to write your own scripts that interface with your own DNS install, if not using dnsmasq.
+</p>
+
+<a name="static">
+<h2>Static IPs</h2>
+</a>
+<p>
+Don't like DHCP at all?
+</p>
+<p>
+Other than for configuring PXE, you can still use static IPs in your kickstarts and on
+your network with Cobbler. To do this, take
+advantage of the --ksmeta option mentioned in the manpage to customize your kickstart
+templates -- then create a cobbler system record for each object, defining --ksmeta
+variables for the intended IP addresses and so forth. You can then substitute in variables to create system specific kickstarts, while only maintaining one kickstart template
+in common between multiple systems.
+</p>
+<p>
+This will work with koan and "--system" out of the box. However, to PXE, you'll
+need at least a bare minimum DHCP config.
+</p>
+
diff --git a/website/new/docs/cobbler-guide.html b/website/new/docs/cobbler-guide.html
deleted file mode 100644
index 1d4671f..0000000
--- a/website/new/docs/cobbler-guide.html
+++ /dev/null
@@ -1,6 +0,0 @@
-<a name="toc">
-<h2>Cobbler User Guide</h2>
-</a>
-
-Contents TBA
-
diff --git a/website/new/docs/cobbler-import.html b/website/new/docs/cobbler-import.html
new file mode 100644
index 0000000..f7d3219
--- /dev/null
+++ b/website/new/docs/cobbler-import.html
@@ -0,0 +1,98 @@
+<a name="toc">
+<h2>Cobbler Import</h2>
+</a>
+
+<a name="import">
+<h2>About</h2>
+<p>
+Suppose you want to set up a network boot server for a given distro, really really quickly. For this example, we'll use Fedora Core 6 as an example. What's the best way to do this? It's a command called "cobbler import", that can mirror content based on a DVD image or even an external rsync mirror or SSH location.
+</p>
+
+<a name="provserver">
+<h2>Setting Up A Provisioning Server From Scratch</h2>
+</a>
+<p>
+<blockquote>
+<ul>
+<li>yum install cobbler</li>
+<li>cobbler check</li>
+<li>/var/lib/cobbler/settings for 'server' and 'next-server' addresses</li>
+<li>Download the FC6 DVD image and mount it, either with a real CD or a loopback</li>
+<li>cobbler import --mirror=/media/dvd --name=FC-6</li>
+<li>cobbler sync</li>
+</ul>
+</blockquote>
+<p>
+You're done. Really.
+</p>
+<p>
+Alternatively, you could have also used:
+</p>
+<blockquote>
+cobbler import --mirror=rsync://servergoeshere/path/to/distro --name=FC-6
+</blockquote>
+<p>
+This would mirror from a public rsync server without needing the DVD image.
+</p>
+<p>
+The kickstarts used above will provision machines with a default password of "cobbler" and a really basic set of packages. For something more complicated, you may wish to edit the default kickstarts in /etc/cobbler and then re-run "cobbler sync" to apply those changes.
+</p>
+
+<a name="#reinstalls">
+<h2>Using That Server For Reinstallation</h2>
+</a>
+<p>
+Should you have a system you want to install that FC-6 on (instead of whatever it is running now), right now, you can do this:
+</p>
+<blockquote>
+<ul>
+<li>yum install koan</li>
+<li>koan --server=bootserver.example.com --list-profiles</li>
+<li>koan --replace-self --server=bootserver.example.com --profile=FC-6</li>
+<li>/sbin/reboot</li>
+</ul>
+</blockquote>
+<p>
+The system will install the new operating system after rebooting, hands off, no interaction required.
+</p>
+
+<a name="#virt">
+<h2>Using That Server For Virtualization</h2>
+<p>
+Want to install a xen guest instead? No problem.
+</p>
+<p>
+<blockquote>
+ <ul>
+ <li>yum install koan</li>
+ <li>koan --virt --server=bootserver.example.com --profile=FC-6-xen</li>
+ </ul>
+</blockquote>
+<p>
+Done.
+</p>
+
+<a name="#pxe">
+<h2>Using That Server For PXE</h2>
+<p>
+Note that so far we've only mentioned reinstalling and doing virtualized installs. PXE is easy too. If you want PXE, you have two options. If you want to run dhcp locally, just set manage_dhcp to 1 in /var/lib/cobbler/settings on the boot server, edit /etc/dhcp.template to change some defaults, and re run "cobbler sync". You're good. Cobbler will keep track of your dhcp files for you, and you'll never have to hand edit them. <a href="./docs/cobbler-dhcp.php">Read more about DHCP management here</A>.
+</p>
+<p>
+If the dhcp server is somewhere else, you can get your dhcp server admin to point at your box as a "next-server". Easy enough.
+</p>
+<p>
+Once you get PXE set up, all of the profiles will, by name, show up in PXE menus when the machines network boot. Type "menu" at the prompt and choose one from the list. Or just don't do anything and the machine will default through to local booting.
+<blockquote>
+Tip: if you're using RHEL4, install the latest syslinux to enable the PXE menu support.
+</blockquote>
+</p>
+<p>
+Should you want to pin a particular system to a particular profile, just run:
+</p>
+<blockquote>
+cobbler system add --name=$mac-address --profile=$profile-name
+</blockquote>
+<p>
+Then the above machine will boot directly to the profile of choice without bringing up the menu. Don't forget to read the manpage docs as there are more options for customization and control available.
+</p>
+
diff --git a/website/new/docs/cobbler-repos.html b/website/new/docs/cobbler-repos.html
new file mode 100644
index 0000000..bfd7464
--- /dev/null
+++ b/website/new/docs/cobbler-repos.html
@@ -0,0 +1,94 @@
+<a name="toc">
+<h2>Cobbler Repository Management</h2>
+</a>
+
+<a name="about">
+<h2>About</h2>
+<p>
+This is a walkthrough of how to set up cobbler to be a full fledged mirror of everything install and update related that you might ever be interested in.
+</p>
+<p>
+Why would you be interested in this?
+</p>
+<p>
+Suppose you manage a large number of machines and are (A) not allowed to get to the outside world, (B) bandwidth constrained, or (C) wanting to get access to 3rd party packages including custom yum repositories.
+</p>
+<p>
+All of these are good reasons to want a mirror server for all things kickstart and yum related. Cobbler can do that for you.
+</p>
+
+<a name="howto">
+<h2>How To</h2>
+</a>
+<p>
+he following instructions require Cobbler 0.4.6 or later and walk through an example of setting up a mirror of Fedora Core 6's install tree, extras, and updates. This will require a good bit of hard disk space, so be prepared :). These same commands work for all varieties of RHEL, Fedora, or Centos.
+</p>
+<p>
+First, follow the setup for a DVD import here using the Fedora Core 6 install media. http://et.redhat.com/page/Cobbler_Import. If you did your import with Cobbler 0.4.5 or earlier, please do it again -- import now collects more data about the install trees that will be useful to cobbler.
+</p>
+<p>
+Once the import is complete, we'll add the mirrors...
+</p>
+<blockquote>
+cobbler repo add --mirror=http://mirrors.kernel.org/fedora/core/updates/6/i386/ --name=fc6i386updates --local-filename=fedora-updates
+</blockquote>
+<blockquote>
+cobbler repo add --mirror=http://mirrors.kernel.org/fedora/extras/6/i386/ --name=fc6i386extras --local-filename=fedora-extras
+</blockquote>
+<p>
+These are just a few common examples. Say you have a RHEL5 or Centos4 machine? Perhaps you would want to add something from freshrpms, or someplace else? It works the same way.
+</p>
+<p>
+Now that we've added the mirrors, let's pull down the content. This will take a little while, but subsequent updates won't take nearly as long.
+</p>
+<blockquote>
+cobbler reposync
+</blockquote>
+<p>
+Now, that the repositories are mirrored locally, let's create a cobbler profile that will be able to automatically install from the above repositories and also configure clients to use the new mirror.
+</p>
+<blockquote>
+cobbler profile add --name=fc6i386special --repos="fc6i386updates fc6i386extras" --distro=FC6-i386 --kickstart=/etc/cobbler/kickstart_fc6.ks
+</blockquote>
+<p>
+Now, any machines installed from this mirror won't have to hit the outside world for any content they may need during install or with yum. They'll ask for content from the cobbler server instead. Cool.
+</p>
+
+<a name="#rhn">
+<h2>RHN</h2>
+</a>
+<p>
+This is rather experimental, but if you have a provisioning need for fast local installs without hitting an outside server repeatedly (say you have a slow pipe), you can try:
+</p>
+<blockquote>
+cobbler repo-add --name=insertnamehere --mirror=rhn://rhn-channel-name
+</blockquote>
+<p>
+That's just the channel-name, no server. This only works on RHEL5+ and you'll need entitlements for the channel in question.
+</p>
+
+<a name="#updates">
+<h2>Updates</h2>
+</a>
+<p>
+As you're mirroring repositories that change (and probably even include some security updates from time to time), putting "cobbler reposync" on crontab would be a good idea. Cobbler reposync will update the content in all of your repositories.
+</p>
+<p>
+You can disable updating of certain repos that you've already pulled down and don't wish to contact again by flipping a bit in /var/lib/cobbler/repos if you really want to.
+</p>
+
+<a name="#review">
+<h2>To Review</h2>
+</a>
+<p>
+The above steps have set up your cobbler server as a full fledged mirror, not just for install trees, but also for future package installs and updates with yum.
+</p>
+<p>
+Installation content during anaconda and afterwards will be pulled from your cobbler mirror, not the outside world. You should see faster installs and won't have to worry about whether your client machines have outside internet connectivity.
+</p>
+<p>
+Cobbler handles all of the yum, reposync, and createrepo magic for you, so you don't have to know how they work. Plus, the kickstarts are automatically aware of the configuration and built themselves out based on what repos are defined. Bottom line: you don't need to know how any of this stuff works. Cool.
+</p>
+<p>
+If you have questions or want to clear up something in this document, ask on et-mgmt-tools@redhat.com or stop by #cobbler on irc.freenode.net.
+</p>
diff --git a/website/new/docs/cobbler.html b/website/new/docs/cobbler.html
index a16bbc6..dd87345 100644
--- a/website/new/docs/cobbler.html
+++ b/website/new/docs/cobbler.html
@@ -1,13 +1,3 @@
-<?xml version="1.0" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title>NAME</title>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<link rev="made" href="mailto:root@localhost" />
-</head>
-
-<body style="background-color: white">
<p><a name="__index__"></a></p>
<!-- INDEX BEGIN -->
@@ -573,6 +563,3 @@ files in /etc/cobbler that can be edited.</p>
<h1><a name="author">AUTHOR</a></h1>
<p>Michael DeHaan &lt;<a href="mailto:mdehaan@redhat.com">mdehaan@redhat.com</a>&gt;</p>
-</body>
-
-</html>
diff --git a/website/new/docs/cobbler_summit.odp b/website/new/docs/cobbler_summit.odp
new file mode 100644
index 0000000..f8aa707
--- /dev/null
+++ b/website/new/docs/cobbler_summit.odp
Binary files differ
diff --git a/website/new/docs/koan.html b/website/new/docs/koan.html
index cbd0c8c..807bf8d 100644
--- a/website/new/docs/koan.html
+++ b/website/new/docs/koan.html
@@ -1,13 +1,3 @@
-<?xml version="1.0" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title>NAME</title>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<link rev="made" href="mailto:root@localhost" />
-</head>
-
-<body style="background-color: white">
<p><a name="__index__"></a></p>
<!-- INDEX BEGIN -->
@@ -62,6 +52,4 @@
<h1><a name="author">AUTHOR</a></h1>
<p>Michael DeHaan &lt;<a href="mailto:mdehaan@redhat.com">mdehaan@redhat.com</a>&gt;</p>
-</body>
-</html>