I work in a predominantly RedHat Enterprise Linux shop. We have a number of servers, all running RHEL. Doing a number of different things. Things like mail, and dns, and other such services that you’d expect to see running at a college.
We also have a number of Novell servers, which are doing, primarily, file services for employee’s and students. We are in the process of migrating from Novell’s proprietary netware platform, to SLES (Suse Linux Enterprise Server). There are linux equivelant services which run on SLES for each of the NetWare services that we offer. This means we have the need to build a number of SLES servers. We already have a KickStart server setup in order to install RHEL in a rapid fashion, including all of our standard packages, ssh keys, and whatnot. We thought it might not be a bad idea to look into whatever SUSE offers that might be similar to Kickstart. I looked into it, and found out about AutoYast. Yast is the setup tool that SUSE uses to install with (just like RHEL’s anaconda), and just like RHEL, when you install a SUSE box, it generates a config file, for use with its installer, which summarises the options which you configured.
I started reading about how to setup a SLES boot server, similar to our KickStart server, and found a number of similarities, in fact, they’re almost identical. They both use tftp as a means of getting boot images out to the clients, they both use their own internal DHCP servers to assign addresses to PXE clients, and they both use PXE. So it got me thinking. Can i just add SLES to my KickStart boot menu? Hell, it s worth a shot!
This is not a complete howto. It’s intended to show you how to add an autoyast setup to an existing kickstart server. My setup may differ from yours, but if you’re familiar with KickStart, you should be able to take the information and apply it to your setup.
There are a few things you’ll need.
A setup, and fucntional kickstart server
a SLES install disc (or iso image thereof)
an autoinst.xml file from a SLES install.
First, take your SLES install files, and copy the boot files off of it, into a directory inside of your tftp root. For me, this was:
From install media: /boot/x86_64/loader/initrd and /boot/x86_64/loader/linux
Copy to: /tftpboot/linux-install/sles/initrd.img and /tftpboot/linux-install/sles/vmlinuz
Now, you’ll need to make the install media accessible to the pxe booted installer.
I did this via http. I happened to be working with an ISO image of the cd. So i mounted the iso to /var/www/html/sles with something like:
mount -o loop /path/to/iso/file.iso /var/www/html/sles
This makes the install media available via http://kickstart.server.com/sles
Now you need to put your autoinst.xml file into a web accessible area, i put it in /var/www/html. so it would be available at http://kickstart.server.com/autoinst.xml
These are all obviously sensitive files, if i were you i’d secure them somehow.
We have our kickstart server running on a private network, and we power it down when we’re not actively installing anything.
Now, there are some config changes to make. We have things setup such:
/tftproot/linux-install/pxelinux.cfg/default is where we keep the boot loader config, and
/tftproot/linux-install/msgs/boot.msg is where we keep the menu display file.
Add something like this to your equivalent of my "default" boot loader config:
append initrd=sles/initrd.img ramdisk_size=65536 autoyast=http://kickstart.server.com/autoinst.xml install=http://kickstart.server.com/sles/
Then add something denoting "5" as the item for sles, on your boot.msg file.
This is just about it, you’ll want to have a good look at the autoinst.xml file, you can read about what’s in there, and how to modify it here: http://www.suse.de/~ug/autoyast_doc/Profile.html
I am still in the process of tweaking my config, but that should get you up and runing, and to the same point that i’m at. Which is, the kick start portion is out of the way, and it’s just getting the auto install xml file perfect.