Sunday, August 15, 2004

Jump Start Installation in Sun Solaris / Redhat Linux

Hello to all on a lazy sunday evening ...

Jai Hind to my fellow Indian's. Happy Independence Day to all.

Coming back to work ....

The stuff sysad's don't like generally is installation of large sets of machines (say 30 to 40) or mebbe 10 in a days (or say a week's time).
Some of the solutions normally used would be :

Disk Cloning
The most primitive, and perhaps oldest, technique is to create a prototype system by hand and then backup a copy of that system to be replicated on other systems. A lot of computer vendors do this to create their pre-installed systems. In many cases, the cloning is done by bulk copying the hard disk. Dump/restore or dd are useful for this.
After the system is cloned, you will usually need to give it some configuration (IP address, hostname, etc.), but you may be able to automate this with BOOTP or DHCP (Thats the tedious part of it cause servers in a production environment generally have a static IP address).

JumpStart (Sun Solaris)/KickStart (Redhat Linux) (Thats what i generally do) :

The solution was initially introduced by Sun in its OS Solaris and later implemeted by Redhat.

Well will put down some steps for the Sun System's:

Before you start make sure that :

1. The install server or boot server is in the same local network segment as client with network link up .
2. NFS, tftp, reverse address lookup daemon ,in.rarpd services are running On jumpstart server
Preparing for a jumpstart server

Install Solaris 2.x make directory to store install server data.

mkdir /export/install
share it

vi /etc/dfs/dfstab

add share -F nfs -o ro,anon=0 /export/install to export file system for sharing.

Do a shareall so that the file system is now exported

Setting up an Install server
Mount Solaris 2.x cdrom Follow the steps :

cd /cdrom/cdrom0/s0/Solaris_2.7/Tools
./setup_install_server /export/install


This will copy the cdrom contents in to the /export/install directory

cp –r /cdrom/cdrom0/s0/Solaris_2.7/Misc/* /jumpstart

< /jumpstart is the directory to copy the jump start sample conf file from CD >

Edit the sample rules file as per your requirement

vi /jumpstart/rules

Keywords their value and usage is described in rules file itself. any minus sign (-) in rule value always matches for that keyword.

RULE_KEYWORD RULE_VALUE DESCRIPTIONS
domainname text system's domain name
disksize text range system's disk size
disk device name text disk size (MBytes range)
hostname text system's host name

etc all depending on your requirements
Dunn forget to add default profile
The following rule set matches any machine and redirect the install request to a profile file called any_machine.

any - - any_machine -

Verifying rules

./check
Validating rules... Validating profile any_machine... rules ok.

vi any_machine
install_type initial_install
system_type server
partitioning explicit
filesys c0t0d0s0 500 /
filesys c0t0d0s1 1000 swap
filesys c0t0d0s3 1000 /usr
filesys c0t0d0s4 1000 /var
filesys c0t0d0s5 1000 /opt
cluster SUNWCall add

vi sysidcfg

system_locale=en_US
install_locale=en_US
timeserver=ntpserver1.com (put the name of your NTP server here)
timezone=Asia / Calcutta
network_interface=hme0 {netmask=255.255.255.0}
name_service=NONE

As you can see this file keeps all your system information like locale time zone etc and supply it to the client at the booting time.

Edit the file /etc/ethers to put in the client mac Id and hostname

vi /etc/ethers

8:00:50:44:88:12 Mercury

Finally adding a client to the boot image.

cd /export/install/Solaris_2.7/Tools
./add_install_client -e 8:00:50:44:88:12 -s inst_server:/export/install -c inst_server:/jumpstart -p inst_server:/jumpstart Mercury sun4u

-e specify the ethernet address of client
-s option specify the location of boot image
-c option specify the jumpstart directory path.
-p option specify the sysidcfg file location
inst_server is your jumpstart server mercury is jumpstart client to be installed

Now go to the clients :

ok>boot net - install
This will finish and will reboot and ask the new root password and after that takes you to the console prompt where you can login and do additional task you want to do.

This is a very basic type of Jumpstart installation you can have a begin script is a shell script which is used to perform the task before Solaris OS is installed. These are specified in the rules file.


Last but not the least Redhat Kickstart Help can be found at

http://www.faqs.org/docs/Linux-HOWTO/KickStart-HOWTO.html

You can always get back to me with any questions.


0 Comments:

Post a Comment

<< Home