Solaris 10 Automated Installation
July 17th, 2007
Introduction
Have you ever had a lab or group of computers that was getting to the point of being a huge pain? Repeating the same boring installation process over and over again? Never again will you need to do that with Solaris JumpStart Server.
Solaris 10 JumpStart allows a System Adminstrator to perform efficient and precise Solaris provisioning on new hardware. There are three elements that make up a JumpStart Server. I will be focusing on the setup of a complete solution for SPARC hardware. This is because this is the hardware that I was using when setting up the JumpStart server and clients. I will comment on differences between the SPARC setup and the x86/64 setup when the two hardware platforms would differ.
For instance, when this task would be applied to an x86 solution the major difference would be that rarp would not be used because x86 hardware supports DHCP built-in these days. So PXE boot would be implemented.
Environment Requirements
- Boot Server
- Installer Server
- Profile Server
There are three corresponding services that match up the above requirements. Before I go into detail I will explain what each server does and the services that are required by that server and what part they play in the whole scheme of things.With an exception to the boot server some of the time these servers can all be housed on one single machine.
Boot Server
The boot server handles the communication with the SPARC machines on boot. The boot server needs three configuration files and also needs to be running in.rarpd.
/etc/bootparams
ultra60 root=192.168.0.253:/export/install/sparc_10/Solaris_10/Tools/Boot \
install=192.168.0.253:/export/install/sparc_10 boottype=:in \
sysid_config=192.168.0.253:/opt/SUNWjet/Clients/ultra60 \
install_config=192.168.0.253:/opt/SUNWjet rootopts=:rsize=8192 term=:vt100
/etc/ethers
88:02:23:b4:d1:6b ultra60
/etc/hosts
127.0.0.1 localhost
192.168.0.253 boot-srv loghost
192.168.0.100 ultra60
Setting up and Starting Boot Services Uncomment the line in /etc/inetd.conf that is referring to the tftp server. Restart the TFTP server. For debugging purposes running the tftp server in the foreground might be useful. Start the RARP Daemon in the foregroup for debugging purposes as well. Once those services are running the boot server setup is complete!
Install Server
The install server stores all the files that are used for installation. This server requires that NFS be running and exporting the files that are pulled from the CD/DVD. Run the following commands below to prepare the installation server for JumpStart.
mkdir -m 755 -p /export/install
mkdir -m 755 -p /export/jumpstart
cd /cdrom/SOL_10_1106_ARCH/s0/Solaris_10/Tools
./setup_install_server /export/install/sparc_10
share -F nfs -o ro,anon=0 /export/install
share -F nfs -o ro,anon=0 /export/jumpstart
shareall
Below is the listing of the shared directory with the install files.
boot-srv# ls /export/install
TT_DB media patches pkgs sparc_10
You can check to see if the NFS directories are being shared with the following command:
showmount -e localhost
The install server should be all set now
Profile Server
The profile server stores the information that the client needs about itself. Scripts and rules files are stored on the profile server for use by the client. There are pre and post install scripts for further customization. A rules file must be created then tested with the check command which is copied from the CD.
/export/jumpstart/rules
any - - any_machine -
The rules file above will match any machine that initiates a ARP request on boot.
Once the rules file is created you must run the check script on this file. The script will create a file called rules.ok which is the file that is read from the client during the boot phase of the install. The check script lives on the first CD/DVD of the Solaris 10 set. Run the following command to get the files necessary:
cp /cdrom/SOL_10_1106_ARCH/s0/Solaris_10/Misc/* /export/jumpstart
cd /export/jumpstart/
./check
This script should return a message stating that the rules file is ok. Run the following command to make sure the file was created.
ls /export/jumpstart | grep rules.ok
Once you are complete here your JumpStart server should be completely operational. All that is left to do is to add clients and test them. Adding clients to a JumpStart server is very easy. Sun supplies a script in the Misc folder on the CD that was copied to the /export/jumpstart folder during the install. Run the following command to add a client:
cd /export/jumpstart
./add_install_client -e MAC_ADDRESS \
-s boot-srv:/export/install/sparc_10 \
-c boot-srv:/export/jumpstart \
ultra60 sun4u
Troubleshooting
- Make sure the /export/jumpstart folder is shared via NFS
- Make sure the /export/install folder is shared via NFS
- Make sure the TFTP server is up and running
- Make sure the RARP server is up and running
- If the clients are connected to a Cisco Switch or other managed switch make sure the ports that are connected to a computer are set to portfast or else the link will never come up in time for the RARP message to be received by the client.
Leave a Reply