by Sandra Henry-Stocker
Operating systems

Setting up Jumpstart clients: Create a profile

July 17, 2008, 03:38 PM — 

Configuration of Jumpstart clients requires creating a profile as well as adding the client's hostname, IP address and MAC address to the appropriate files on the
jumpstart server. A client profile can include the type of installation being performed (e.g., an upgrade or initial install), the system type (standalone or server), partitioning information, the particular cluster you want installed (e.g., the entire distribution or end user support) and particular packages that you want to omit or include beyond the specified cluster. Profiles can be extremely skimpy or can include a lot of detail.

Only the install_type is required for Solaris 10 jumpstart installations, plus the root_device specification if the system contains more than one root file system (e.g., if you have an alternate root you can boot from and want both upgraded).

Profiles are simple text files created with your favorite text editor. In the example shown below, we are requesting an initial install using the default partitioning. We are installing the developer cluster, but omitting man pages.

install_type            initial_install
system_type             standalone
partitioning            default
filesys                 any 1024 swap
cluster                 SUNWCprog
package                 SUNWman delete

You can start with the sample_profile provided with the jumpstart setup if you wish. It will look something like this:

install_type    initial_install
cluster         SUNWCXall
partitioning    explicit
filesys         c0t0d0s0 14000 /
filesys         c0t0d0s1 4096 swap
system_type     standalone

Note that this default profile specifies a specific layout of the file systems.

Client profiles can also include patches, though many sysadmins install patches in scripts that are run following the basic installation. Patches are specified with the patch keyword. In this example, the patch is obtained from another system.

patch 118855-33 nfs 10.2.10.1:/jumpstart/patches

The layput_constraint keyword specifies limits you want to place on auto-layout. For example, you can specify a minimal size for file systems as shown in this example in which two file systems must be allocated at least 2 GB each:

layout_constraint c0t0d0s4 changable 2000
layout_constraint c0t0d0s5 changable 2000

Profiles must be referenced in your rules file to tell jumpstart when to use then. In this example, we are telling jumpstart to use the profile boson_profile for the client boson and fermion_profile for fermion. You do not not need to build a profile for every system you are going to jumpstart. If a number of systems are to be installed identically, you can use the same profile for all of them. You might, for example, have a netrax1 profile or an sunfirex4540 profile.

hostname boson - boson_profile -
hostname fermion - fermion_profile -

If you want to run scripts prior to and after the OS installation, but as part of the jumpstart procedure, your rules file might look like this instead:

hostname boson begin boson_profile finish
hostname fermion begin fermion_profile finish

In this example, "begin" and "finish" are the names of your scripts. You might want to have a set of begin and finish scripts for each type of system you are setting up. You could, for example, use a finish script to set up your
/etc/resolv.conf file and set up your /etc/nsswitch.conf file:

#!/bin/sh
# finish_dns

echo "domain mydomain.com" > /etc/resolv.conf
echo "nameserver 10.3.4.5" > /etc/resolv.conf
echo "nameserver 10.10.0.1" > /etc/resolv.conf
echo "search mydomain.com lab.mydomain.comt" > /etc/resolv.conf

cp /etc/nsswitch.dns /etc/nsswitch.conf

Once your rules file is ready, run the check script to verify your rules file and create the rules.ok file. If you specify begin and end scripts, but check doesn't find them, you will see an error such as this:

# ./check
Validating rules...

Error in file "rules", line 1
        hostname boson begin boson_profile finish
ERROR: Begin script missing: begin

If check finds no errors, it will generate output like this and create a rules.ok file. The rules.ok file looks almost identical to the rules file, but contains a checksum.

# ./check
Validating rules...
Validating profile boson_profile...
Validating profile fermion_profile...
The custom JumpStart configuration is ok.
# cat rules.ok
hostname boson begin boson_profile finish
hostname fermion begin fermion_profile finish
# version=2 checksum=8608

When you boot your client with a "boot net - install" command at the ok prompt, a number of things will happen.

First, your client will issue a RARP request to get its IP address from the boot server (it will be running in.rarpd daemon). The server will look in its /etc/ethers and /etc/hosts files to get the hostname and IP address of the
client. RARP cannot be routed, so the boot server needs to be on same subnet as the client.

Next, the client gets boot image from the boot server using tftp. It gets its bootparameters from rpc.bootparamd running on the server.

Next, the client mounts its root file system from the server and loads the kernel.

The client then connects to llthe insta server and initiates the OS installation.

Client profiles can be extremely terse or can include a lot of detail about the install. In general, the more you put into your profiles, the less information you will have to provide during the install and the easier a time you will have
reinstalling the system back to its original state if you replace a disk or need to start again from a predictable state.

I like it!
Comments

Make sure you turn off any

Make sure you turn off any traffic going to the box you are upgrading or else you will be in for a long night (or day). Network traffic routed to your upgrade box WILL confuse JumpStart and cause the upgrade to fail (or hang indefinitely which I consider a failure).
| reply

Hello, Might be usefull to

Hello,

Might be usefull to replace ">" by ">>" in all but the first line of echo when constituting the resolv.conf file.

Nice article by the way.

P.S. Sorry being late at reading it :-)
Rgds Eric
| reply
Free books

Build your tech library with our book giveaways.

Windows PowerShell 2.0 Unleashed
By Tyson Kopczynski, Pete Handley, Marco Shaw; Published by Sams

Windows PowerShell Unleashed will not only give you deep mastery over PowerShell but also a greater understanding of the features being introduced in PowerShell 2.0–and show you how to use it to solve your challenges in your production environment. Enter now!

 

Ubuntu Server Administration
By Michael Jang; Published by McGraw-Hill Osborne Media

Realize a dynamic, stable, and secure Ubuntu Server environment with expert guidance, tips, and techniques from a Linux professional. Ubuntu Server Administration covers every facet of system management -- from users and file systems to performance tuning and troubleshooting. Enter now!

Featured Sponsor

AISO founders envisioned a Web hosting company that was environmentally friendly. While the company employed energy-efficient innovations like solar panels, its infrastructure produced unacceptable power and cooling requirements. Find out how AISO leveraged AMD technology to overcome their challenge in this case study white paper.

In this whitepaper, Scalar explores the opportunity to change the landscape with respect to mission critical databases built around Oracle. Leveraging technologies such as Linux, high-end commodity processing power and Oracle RAC technology to architect, design, build and maintain database infrastructure that delivers maximum availability, reliability and performance at a fraction of traditional cost.

On a typical day, weather.com, the Web site for The Weather Channel in Atlanta, serves up between 15 million and 20 million page views. But in September 2004, when back-to-back hurricanes ransacked Florida, the peak traffic on one day more than tripled: over 70 million page views by more than 7 million unique visitors. Read the full success story now.

More Resources