Softpanorama
(slightly skeptical) Open Source Software Educational Society

May the source be with you, but remember the KISS principle ;-)

Google   


JumpStart with DHCP

 News

See also

Books Recommended Links Jumpstart-related Blueprints Sun Documentation Selected man pages Etc

Solaris™ 9 Network Administrator Exam Cram™ 2 (Exam CX-310-044)

Chapter 12. Advanced Dynamic Host Configuration Protocol (DHCP)

Terms you'll need to understand:

JumpStart and DHCP

The DHCP server can be configured so that a JumpStart client can use DHCP, rather than the traditional JumpStart mechanism using RARP, when it boots up. Using the DHCP method is advantageous because DHCP packets pass through a router, eliminating the need for a client to have a JumpStart boot server present on the same subnet—a boot server on the same subnet as the client is currently required under standard JumpStart procedures because the RARP protocol used by clients does not pass through a router.

JumpStart with DHCP is currently supported only on Intel and Ultra workstations. The boot PROM version must be at least 3.25 on an Ultra workstation. If these requirements are not met, then the client cannot perform a DHCP boot. There is often an exam question that asks for the minimum version of boot PROM.

SPARC: Task Map: Setting Up a System for a Custom JumpStart Installation

During a custom JumpStart installation, the JumpStart program attempts to match the system that is being installed to the rules in the rules.ok file. The JumpStart program reads the rules from the first rule through the last. A match occurs when the system that is being installed matches all the system attributes that are defined in the rule. As soon as a system matches a rule, the JumpStart program stops reading the rules.ok file and begins to install the system, based on the matched rule's profile.

Table 29-1 Task Map: Setting Up a System for a Custom JumpStart Installation

Task Description For Instructions
Check if the system is supported Check the hardware documentation for system support in the Solaris 9 environment. Solaris 9 Sun Hardware Platform Guide
Check if the system has enough disk space for the Solaris 9 software Verify that you have planned enough space to install the Solaris software on your system. Chapter 5, System Requirements and Guidelines (Planning)
(Optional) Preconfigure system configuration information You can use the sysidcfg file or the name service to preconfigure installation information for a system. If you preconfigure system information, the installation program does not prompt you to supply the information during the installation. Chapter 7, Preconfiguring System Configuration Information (Tasks)
Prepare the system for custom JumpStart installation Create and validate a rules file and profile files. Chapter 26, Preparing Custom JumpStart Installations (Tasks)
(Optional) Prepare optional custom JumpStart features If you are using begin scripts, finish scripts, or other optional features, prepare the scripts or files. Chapter 27, Using Optional Custom JumpStart Features (Tasks) and Chapter 28, Creating Custom Rule and Probe Keywords (Tasks)
(Optional) Set up the system to install over the network To install a system from a remote Solaris DVD or Solaris Software SPARC Platform Edition CD image, you need to set up the system to boot and install from an install server or a boot server. Chapter 15, Preparing to Install From the Network With CD Media (Tasks)
(Optional) Prepare for a Solaris Flash archive installation Before installing a Solaris Flash archive, you need to follow specific steps. To Prepare to Install a Solaris Flash Archive With a Custom JumpStart Installation
Install or upgrade Boot the system to initiate the installation or upgrade. SPARC: To Perform an Installation or Upgrade With the Custom JumpStart Program

To Prepare to Install a Solaris Flash Archive With a Custom JumpStart Installation

You can install a full archive for an initial installation or a differential archive for an update. You can use the custom JumpStart installation method or use Solaris Live Upgrade to install an archive on an inactive boot environment.

  1. On the install server, create the custom JumpStart rules file.

    For detailed instructions about creating custom JumpStart files, refer to Chapter 26, Preparing Custom JumpStart Installations (Tasks).

  2. On the install server, create the custom JumpStart profile file.

    For examples of Solaris Flash archive profiles, see Profile Examples.

    From the existing list of custom JumpStart keywords in Table 31-2, the only keywords valid when you install a Solaris Flash archive are the following:

    Table 29-2 Solaris Flash Archive Keywords

    Keyword Initial Installation Differential Archive
    (required)archive_location X X
    fdisk (x86 only) X X
    filesys

     


    Note - You cannot set the filesys keyword to the value auto.


     

    X  
    forced_deployment   X
    (required) install_type X X
    local_customization X X
    no_content_check   X
    no_master_check   X
    root_device X X
    1. Set the value of the keyword install_type to one of the following types.
      • For a full archive installation, set the value to flash_install
      • For a differential archive installation, set the value to flash_update
    2. Add the path to the Solaris Flash archive by using the archive_location keyword.

      For details about the archive_location keyword, refer to archive_location Keyword.

    3. Specify the file system configuration.

      The Solaris Flash archive extraction process does not support auto-layout of partitions.

    4. (Optional) If you want to install an additional Solaris Flash archive on the clone system, add one archive_location line for each archive that you want to install.
  3. On the install server, add the clients that you are installing with the Solaris Flash archive.

    For detailed instructions, refer to Adding Systems to Be Installed From the Network With a DVD Image or Adding Systems to Be Installed From the Network With a CD Image.

  4. Perform the custom JumpStart installation on the clone systems.

    For detailed instructions, refer to SPARC: To Perform an Installation or Upgrade With the Custom JumpStart Program.

SPARC: To Perform an Installation or Upgrade With the Custom JumpStart Program

  1. If the system is part of a network, ensure that an Ethernet connector or similar network adapter is attached to your system.
  2. If you are installing a system that is connected through a tip(1) line, ensure that your window display is at least 80 columns wide and 24 rows long.

    To determine the current dimensions of your tip window, use the stty(1) command.

  3. If you are using the system's DVD-ROM or CD-ROM drive to install the Solaris 9 software, insert the Solaris SPARC Platform Edition DVD or the Solaris Software 1 of 2 SPARC Platform Edition CD in the drive.
  4. If you are using a profile diskette, insert the profile diskette in the system's diskette drive.
  5. Boot the system.
Notes:
  • This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Some amount of grammar and spelling errors should be expected.
  • The site contain some broken links as it develops like a living tree... Please try to use Google, Open directory, etc. to find a replacement link (see HOWTO search the WEB for details). We would appreciate if you can mail us a correct link.
Google Search
Open directory

Research Index

Old News ;-)

Solaris Forums - DHCP Jumpstart

Hello All,

I am attempting a DHCP jumpstart of a V240 server using Solaris 9 9/04.
It successfully loads the boot loader using TFTP from the jumpstart server then I see the following message:

Requesting Ethernet address for: 10.9.8.7
panic - boot: Could not mount filesystem.
Program terminated
{1} ok

The IP address 10.9.8.7 being the address of the gateway router.

I would be grateful for any ideas anyone may have.
 
 

I am just giving you the basics and hope this will help.
When you do a jumpstart installation there are several servers involved.
Jumpstart server / install server / Boot server and a DNS server.
Usually the Jumpstart server / install server / Boot server are placed in
1 server but they could also resides on differect servers.
Jumpstart to be successful all servers including the machine being built
should be on the same LAN-segment. Otherwise it will fail for the obvious
reason that these servers will fail to communicate. You may have several
VLANs in your infrastructure and could it be possible that one of these server
is not on the same LAN-segment.
But then, you mentioned that it went as far as getting the Boot image, then
could it be the boot image was corrupted.
 
 
Thanks Noel for the reply.
Yes all 3 servers are in fact running on the one machine and the machine I am trying to jumpstart is on a different network to the jumpstart server - hence the need for a DHCP jumpstart. I have actually successfully jumpstarted another machine on this network using DHCP but this V240 stubbornly refuses to play the game.
 
 
Did you verify it was shared out correctly or try killing off DHCP, Bootparam, arpd, and unsharing it then restarting it all again. Ive had problems were my daemons were messed up and just had to kill and restart them and it worked like a charm.
 
 
if you send me your DHCP config

run dhtadm -P and email to me


gamlielu@mail.nih.gov

Udi
 
 
looks like you've used an IP address when you did add_install_client. You have to put the ip address of the machine you want to build and give it a name in /etc/hosts or it won't work.
 
 
actually, the client fails to mount its / directory, which means that either the pointer in the dhcptab is wrong or its not shared properly from the bootserver.

//M.

Recommended Links


In case of broken links please try to use Google search. If you find the page please notify us about new location
Google     

[PDF] Configuring JumpStart™ Servers to Provision Sun™ x86-64 Systems
File Format: PDF/Adobe Acrobat - View as HTML

Sun Microsystems - BigAdmin JumpStart Enterprise Toolkit Free toolkit that simplifies setting of Jumpstart DHCP servers.

JET Stream

JumpStart and DHCP Servers (and building x86 based servers with PXE)

Jumpstart on SPARC machines traditionally made use of RARP, BOOTP etc to get the required information for building over the network. This method does not work on x86 based machines, and required that there be a boot server on every subnet.

PXE is the method used by x86 based machines to start a non-attended network boot and is essentially a mini-DHCP client which grabs the name of the bootserver and bootfile from a DHCP server, and proceeds to load/run the named bootfile. So if you want to install x86 (or x64) based machines non-interactively, you kind of need to set up a dhcp server.

DHCP also has the advantage of being able to traverse subnets through the use of DHCP forwarders, so the number of Jumpstart servers required can be reduced.

However, its often a little more difficult to initially set up, configure and manage . To accomodate the x86 based servers, and the ability to jumpstart over multiple subnets, we have added DHCP support to the core toolkit in a way that tries to hide all the additional complexity.

Possible DHCP configurations.

# Local DHCP server hosted on the Jumpstart server.

  1. Remote DHCP server.
     
  2. Multiple remote DHCP servers.

If no-one minds you running a DHCP server on your JET server, then the first option is the easiest to configure and set up. Additionally if you configure the routers as DHCP forwarders, you can also jumpstart on any subnet that can "see" this DHCP server. Unfortunately this scenario is possibly simplistic as its likely that there's a real DHCP server lurking somewhere. (Although the number of DHCP servers running within Datacentres is actually quite low, and you can hope that if there IS a DHCP server, its only serving the desktop based networks.)

This is where option 2 becomes useful. If there already is an enterprise wide DHCP server, and its running Sun's DHCP, then you're in luck! All you need to do is set up an ssh relationship between your server and it, and JET will do the rest for you.

Finally, there may in fact be multiple DHCP servers, possibly one per subnet. JET allows you to specify which subnets are served by which dhcp server.

N.B. When JET configures your DHCP server, it ONLY replies to clients that have been specifically configured. i.e. it won't just let ANYBODY plug into the network and given them an IP address.

Simple Local DHCP server.

Firstly, you need to set up your DHCP server. A script called "make_dhcp" is provided in /opt/jet/Products/base_config. You only really need to run the first "dhcpconfig" command in the file, as if you've populated either the client's sysidcfg_default_route or the /opt/jet/etc/defaultrouters file, JET will create the network macro for you when you run make_client.

However, you're on your own configuring the DHCP forwarding if you're going to be DHCP serving a bunch of non-directly connected subnets :-) . If there are subnets that the JET server is NOT directly connected to, you will need to list them in the /opt/jet/etc/server_interfaces file with the JET server IP address as the preferred server.

Once you've done this, you need to specify the machine types you are going to install. Edit the variable JS_DHCP_VENDOR in /opt/jet/etc/jumpstart.conf to add them. For x86 its i86pc, for SPARC machines, its the output of "uname -i", with the comma changed to a period. You can list multiple servers by space separating the values. (Don't forget to surround the whole thing by double quotes.)

In your client template, simply specify "dhcp" as your client_allocation_method. For x64/x8 boxes just PXE boot, for SPARC boxes you need to type boot net:dhcp - install.

Remote DHCP server.

If your DHCP server is remote, you've got a little more work to do. Edit the /opt/jet/etc/dhcp.conf file and provide a name for the remote dhcp server. You then need to set up ssh between the JET server and the DHCP server so that you can ssh in without supplying a password.

Once you've done this, just follow the steps above from the editting jumpstart.conf bit onwards.

(Note, you need to make sure that the default route that the DHCP server passes to the client will allow the client to be able to route to the JET server. This is set in the Network Macro on the DHCP server.)

Multiple Remote DHCP servers.

Support for multiple remote DHCP servers is a simple extension to the above. Edit the /opt/jet/etc/dhcp_servers file and list the subnets and the servers that will be DHCPing them. You'll need to then set up each DHCP server with ssh relationships with the JET server as above.

If the subnet is not listed in the dhcp_servers file, JET will revert to the configuration defined in the dhcp.conf file.

NON-Sun, NON-ssh DHCP servers.

Jet provides a mechanism which allows you to plug in helper scripts to support other types of DHCP server. The /opt/jet/Utils/dhcp directory contains 3 files: checkdhcp, configdhcp and deconfigdhcp. Each of these files calles a script of asimilar name based on the settings in the dhcp.conf file. i.e. If the DHCP_FORMAT was set to SUN (the default), it would call checkdhcp_SUN. If it was remote and the method was "ssh", it would call checkdhcp_SUN_ssh.

To add support for other dhcp types and remote communication mechanisms, you simply need to specify the new format/type in dhcp.conf, and then create the scripts of the correct name in the dhcp directory. (configdhcp_xx_yy does all the real work. It reads the settings required for the client in a file called dhcp.config in the Client directory and communicates with the DHCP server to set them up for you)


Copyright © 1996-2008 by Dr. Nikolai Bezroukov. www.softpanorama.org was created as a service to the UN Sustainable Development Networking Programme (SDNP) in the author free time. Submit comments This document is an industrial compilation designed and created exclusively for educational use and is placed under the copyright of the Open Content License(OPL). Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

Standard disclaimer: The statements, views and opinions presented on this web page are those of the author and are not endorsed by, nor do they necessarily reflect, the opinions of the author present and former employers, SDNP or any other organization the author may be associated with. We do not warrant the correctness of the information provided or its fitness for any purpose.

Last modified: November 08, 2008