N1 Provisioning Server 3.1, Blades Edition システム管理ガイド

JumpStart 設定の作成

この節では、SPARC および x86 アーキテクチャー用に JumpStart を設定する方法を説明します。 また、SPARC および x86 アーキテクチャー用に JumpStart 構成およびブートサーバーをカスタマイズする方法の詳細についても説明します。 リソースプールサーバーを手動でカスタマイズする手順も記載されています。

ProcedureSPARC アーキテクチャー用に JumpStart 設定を作成する

次の手順では、N1 Provisioning Server 環境において必要な JumpStart 設定のみを説明します。 JumpStart 設定の詳細については、Solaris 9 のドキュメントを参照してください。JumpStart インストールサーバーは、いくつかの方法で設定できます。 次の手順は一例にすぎません。

手順
  1. イメージサーバーにスーパーユーザーとしてログオンします。

  2. イメージサーバーに Solaris 9 DVD を挿入します。

  3. DVD イメージをコピーするディレクトリを作成します。

    例:


    mkdir -p /images/s9u5s

    注 –

    このドキュメントでは、Solaris ディストリビューションが /images/s9u5s (SPARC の場合) および /images/s9u5x (x86 の場合) で利用できることが前提になっています。


  4. マウントされたディスクの Tools ディレクトリに移動します。

    例:


    cd /cdrom/cdrom0/s0/Solaris_9/Tools
  5. ドライブ内の DVD イメージをインストールサーバーのハードディスクにコピーします。

    例:


    ./setup_install_server /images/s9u5s
  6. インストールサーバーのイメージへのパスが適切に共有されていることを確認します。

    share | grep /images/s9u5s


    注 –

    パスが表示され、オプションに anon=0 が表示されている場合は、次の手順に進みます。 パスが表示されていないか、オプションに anon=0 がない場合は、現在の手順を継続します。


    1. 次のエントリを /etc/dfs/dfstab ファイルに追加し、ブートサーバーからインストールサーバーが利用できるように設定します。

      share -F nfs -o rw,anon=0 -d "install server directory" /images/s9u5s

    2. インストールサーバーのディレクトリパスが正しく共有されているか確認します。

      ps -ef | grep nfsd

      nfsd デーモンが稼働していない場合は、このデーモンを起動します。

      /etc/init.d/nfs.server start

      nfsd デーモンがすでに稼働している場合は、インストールサーバーを共有します。

      shareall

  7. cd / と入力して、ディレクトリをルートに変更します。

  8. Solaris 9 DVD を取り出します。

Procedurex86 アーキテクチャー用に JumpStart 設定を作成する

手順
  1. Solaris 9 x86 DVD を /images/s9u5x ディレクトリで使用して、Solaris 9 ディストリビューションを保持します。

  2. 上記の SPARC アーキテクチャーの場合の指示に従って Solaris x86 インストールサーバを作成します。ただし、/images/s9u5s の代わりに /images/s9u5x パスを使用します。

  3. Sun Fire B100x、Sun Fire B200x のドライバ用のSolaris 9 12/03 x86 に付属する miniroot にパッチを適用します。 パッチ適用の詳細については、『Sun Fire B1600 Chassis, and B100s, B100x, and B200x Blade Product Notes』および「 Applying Mandatory Software Patches to the Solaris x86 Install Image」の節を参照してください。

  4. イメージサーバーで次のディレクトリを作成します。

    mkdir -m 755 /var/tmp/blades

  5. Sun Fire B1600 Chassis, and B100s, B100x, and B200x Blade Product Notes』の「 Solaris x86 Drivers and Documentation」の節にある指示に従ってソフトウェアをダウンロードします。

  6. ダウンロードしたファイルをディレクトリ /var/tmp/blades に保存します。

  7. ネットワークインストールサーバーとして使用するシステムの Solaris プロンプトで、次のように入力してダウンロードしたファイルを解凍します。


    cd /var/tmp/blades
    unzip mis.259-4174-11.zip
    
  8. 次のように入力して、mis.259-4174-11.zip を配置したディレクトリに移動します。


    cd /var/tmp/blades
    
  9. 次のように入力して、ネットワークインストールサーバーのイメージに自動でパッチとパッケージを追加します。


    ./modify_install_server -d /images/s9u5x
    

JumpStart ブートおよび構成サーバーのカスタマイズ

この節では、SPARC および x86 アーキテクチャーで JumpStart ブートおよび構成サーバーを設定およびカスタマイズする方法を説明します。 JumpStart 環境により、必要なすべてのソフトウェアはリソースプールサーバーにインストールされます。 この節では、SPARC および x86 アーキテクチャーでの JumpStart ブートおよび構成サーバーのカスタマイズを説明します。

特定の JumpStart のカスタマイズが存在する場合は、N1 Provisioning Server に用意されているスクリプトと、カスタマイズを統合する必要があります。 SPARC および x86 アーキテクチャー用に JumpStart ブートおよび構成サーバーをカスタマイズする次の例の手順では、DHCP を使用する JumpStart 環境を設定します。

ProcedureSPARC アーキテクチャー用にブートおよび構成サーバーをカスタマイズする

手順
  1. イメージサーバーに JumpStart ディレクトリを作成します。

    例:


    mkdir -p /images/jumpstart-sparc
  2. 次のように入力して、JumpStart ディレクトリへのパスが適切に共有されていることを確認します。


    share | grep /images/jumpstart-sparc
    

    パスが表示され、オプションに anon=0 が表示されている場合は、次の手順に進みます。 パスが表示されていないか、オプションに anon=0 がない場合は、現在の手順を継続します。

    1. /etc/dfs/dfstab ファイルに次のエントリを追加して、JumpStart ディレクトリを NFS 共有にします。


      share -F nfs -o anon=0,rw=@10.42.42.0/24 -d "jumpstart server directory sparc" 
      /images/jumpstart-sparc
      
    2. JumpStart サーバーのディレクトリパスが正しく共有されているか確認します。


      ps -ef | grep nfsd
      

      nfsd デーモンが稼働していない場合は、/etc/init.d/nfs.server start と入力して稼働を開始します。

      nfsd デーモンが稼働中である場合は、shareall と入力して JumpStart サーバーを共有します。

  3. 次の 2 つのスクリプトを使用して N1 Provisioning Server サーバー用に JumpStart の開始とインストール後処理をカスタマイズし、またこれらのスクリプトを JumpStart ディレクトリにコピーします。


    cp /tftpboot/terraspring/jumpstart/profiles/begin_js.sh 
    /images/jumpstart-sparc
    cp /tftpboot/terraspring/jumpstart/profiles/postinstall.sh /images/jumpstart-sparc
    

    JumpStart 環境のカスタマイズに上記の 2 つのスクリプトを使用しない場合は、「手動でのリソースプールサーバーのカスタマイズ」を参照してください。


    注 –

    独自の開始またはインストール後処理スクリプトがない場合は、手順 4 にスキップします。



    注 –

    独自の開始またはインストール後処理スクリプトがある場合は、開始スクリプトに begin_js.sh 機能を組み込み、インストール後処理スクリプトに postinstall.sh 機能を組み込みます。


  4. 各行に次のような内容が含まれる、次のファイルを作成します。


    cat /images/jumpstart-sparc/profile.sparc
    

    install_type initial_install
         cluster SUNWCXall
         partitioning explicit
         filesys any free /

    cat /images/jumpstart-sparc/rules
    

    arch sparc begin_js.sh profile.sparc postinstall.sh

    cat /images/jumpstart-sparc/sysidcfg
    

    system_locale=en US
         timezone=US/Pacific
         timerserver=localhost
         terminal=xterm
         name_service=NONE
         security_policy=NONE
         root_password=WPUDTTMUiG2JI
         network_interface=primary {
                 default_route=10.42.42.1 
                 netmask=255.255.255.0 protocol_ipv6==no
         }
  5. 必要な独自のその他の JumpStart のカスタマイズを行います。 JumpStart サーバーの構成方法の詳細については、『Solaris 9 12/03 Installation Guide』を参照してください。

  6. チェックスクリプトを使用してファイルを検証します。


    cd /images/jumpstart-sparc
    /images/s9u5s/Solaris_9/Misc/jumpstart_sample/check
    
  7. 次のコマンドを実行して、rsh を介してリソースプールサーバーへのプロファイルアクセス権があることを確認します。


    cd /image/9su5s/Solaris_9/Tools/Boot
    echo "+" > .rhosts
    
  8. 次のコマンドを実行して、プラットフォームの名前とグループに対して、適切なブート環境が設定されていることを確認します。


    add_install_client -d -s
    Solaris-install-server-ip-address:Solaris-product-directory -c 
    JumpStart-server-ip-address:JumpStart-directory -p 
    Jumpstart-Configuration-server-ip-address:Jumpstart-Configuration-directory 
    platform_name platform_group
    

    注 –

    詳細については、add_install_client -d -s を参照してください。


    1. N1 Provisioning Server ソフトウェアをインストールする際には、イメージのサブネットを指定します。 そのため、JumpStart サーバーとしてN1 Provisioning Server を使用するときは、イメージのサブネット上のIP アドレスを使用します。 N1 Provisioning Server がどのイメージ IP アドレスを使用しているかを判別するには、コマンド ifconfig -a を実行して、インタフェースとその IP アドレスのリストを取得します。 イメージのサブネットに存在する IP アドレスを調べます。

      例:


      /images/s9u5s/Solaris_9/Tools/add_install_client -d -s 
      10.42.42.1:/images/s9u5s -c 10.42.42.1:/images/jumpstart-sparc -p 
      10.42.42.1:/images/jumpstart-sparc SUNW.Serverblade1 sun4u

      注 –

      add_install_client を実行するたびに、指定した platform_name および platform_group のハードウェアのブートに使用するブートファイルを変更することになります。 リソースプールサーバーは、最後の add_install_client コマンドにより設定されたブートファイルからブートします。


  9. image コマンドでは、次の DHCP オプションのセットがサポートされています。

    • SrootOpt

    • SrootIP4

    • SrootNM

    • SrootPTH

    • SswapIP4

    • SswapPTH

    • SbootFIL

    • Stz

    • SbootRS

    • SinstIP4

    • SinstNM

    • SinstPTH

    • SsysidCF

    • SjumpsCF

    • Sterm

    DHCP オプションの詳細については、『Solaris 9 12/03 Installation Guide』の「Preconfiguring System Configuration Information」の節を参照してください。

    この手順で作成された JumpStart の構成例の、DHCP オプションファイルの内容を次に示します。


     cat dhcp-options.txt
         SinstNM 10.42.42.1
         SinstPTH /image/s9u5s
         SrootNM 10.42.42.1
         SinstIP4M 10.42.42.1
         SinstPTH /images/s9u5/Solaris_9/Tools/Boot
         SsysidCF 10.42.42.1:/images/jumpstart
         SjumpsCFF 10.42.42.1:/images/jumpstart

    注 –

    イメージサーバーの IP アドレスは、ルートサーバー、インストールサーバー、および JumpStart の構成に使用されます。


Procedurex86 アーキテクチャー用にブートおよび構成サーバーをカスタマイズする

手順
  1. イメージサーバーに JumpStart ディレクトリを作成します。

    例:


    mkdir -p /images/jumpstart-x86
  2. 次のように入力して、JumpStart ディレクトリへのパスが適切に共有されていることを確認します。


    share | grep /images/jumpstart-x86
    

    パスが表示され、オプションに anon=0 が表示されている場合は、次の手順に進みます。 パスが表示されていないか、オプションに anon=0 がない場合は、現在の手順を継続します。

    1. /etc/dfs/dfstab ファイルに次のエントリを追加して、JumpStart ディレクトリを NFS 共有にします。


      share -F nfs -o anon=0,rw=@10.42.42.0/24 -d "jumpstart server directory x86" 
      /images/jumpstart-x86
      
    2. JumpStart サーバーのディレクトリパスが正しく共有されているか確認します。


      ps -ef | grep nfsd
      

      nfsd デーモンが稼働していない場合は、/etc/init.d/nfs.server start と入力して稼働を開始します。

      nfsd デーモンが稼働中である場合は、shareall と入力して JumpStart サーバーを共有します。

  3. 次の 2 つのスクリプトを使用して N1 Provisioning Server サーバー用に JumpStart の開始とインストール後処理をカスタマイズし、またこれらのスクリプトを JumpStart ディレクトリにコピーします。


    cp /tftpboot/terraspring/jumpstart/profiles/begin_js.sh 
    /images/jumpstart-x86
    cp /tftpboot/terraspring/jumpstart/profiles/postinstall.sh /images/jumpstart-x86
    

    JumpStart 環境のカスタマイズに上記の 2 つのスクリプトを使用しない場合は、「手動でのリソースプールサーバーのカスタマイズ」を参照してください。


    注 –

    独自の開始またはインストール後処理スクリプトがない場合は、手順 4 にスキップします。



    注 –

    独自の開始またはインストール後処理スクリプトがある場合は、開始スクリプトに begin_js.sh 機能を組み込み、インストール後処理スクリプトに postinstall.sh 機能を組み込みます。


  4. 各行に次のような内容が含まれる、次のファイルを作成します。


    cat /images/jumpstart-x86/profile.x86
    

    install_type initial_install
         cluster SUNWCXall
         partitioning explicit
         filesys any free /

    cat /images/jumpstart-x86/rules
    

    arch i386 begin_js.sh profile.x86 postinstall.sh

    cat /images/jumpstart-x86/sysidcfg
    

    system_locale=en US
         timezone=US/Pacific
         timerserver=localhost
         terminal=dtterm
         keyboard=UNKNOWN
         display=UNKOWN
         pointer=UNKNOWN
         monitor=UNKNOWN {
                  DisplayChksum=0x0
         }
         root_password=WPUDTTMUiG2JI
         name_service=NONE
         security_policy=NONE 
         network_interface=PRIMARY {
                    default_route=10.42.42.1 
                    netmask=255.255.255.0 protocol_ipv6==no
         }
  5. 必要な独自のその他の JumpStart のカスタマイズを行います。 JumpStart サーバーの構成方法の詳細については、『Solaris 9 12/03 Installation Guide』を参照してください。

  6. チェックスクリプトを使用してファイルを検証します。


    注 –

    同一の Solaris ディストリビューションから check コマンドを実行します。



    cd /images/jumpstart-x86
    s9u5x/images/s9u5x/Solaris_9/Misc/jumpstart_sample/check
    
  7. 次のコマンドを実行して、rsh を介してリソースプールサーバーへのプロファイルアクセス権があることを確認します。


    cd /image/s9u5s/Solaris_9/Tools/Boot
    echo "+" > .rhosts
    
  8. 次のコマンドを実行して、プラットフォームの名前とグループに対して、適切なブート環境が設定されていることを確認します。


    add_install_client -d -s
    Solaris-install-server-ip-address:Solaris-product-directory -c 
    JumpStart-server-ip-address:JumpStart-directory -p 
    Jumpstart-Configuration-server-ip-address:Jumpstart-Configuration-directory 
    platform_name platform_group
    

    注 –

    詳細については、add_install_client -d -s を参照してください。


    1. N1 Provisioning Server ソフトウェアをインストールする際には、イメージのサブネットを指定します。 そのため、JumpStart サーバーとしてN1 Provisioning Server を使用するときは、イメージのサブネット上のIP アドレスを使用します。 N1 Provisioning Server がどのイメージ IP アドレスを使用しているかを判別するには、コマンド ifconfig -a を実行して、インタフェースとその IP アドレスのリストを取得します。 イメージのサブネットに存在する IP アドレスを調べます。

      例:


      /images/s9u5x/Solaris_9/Tools/add_install_client -d -s 
      10.42.42.1:/s9u5x/images/s9u5x -c 10.42.42.1:/images/jumpstart-x86 -p 
      10.42.42.1:/images/jumpstart-x86 SUNW.i86pc i86pc

      注 –

      add_install_client を実行するたびに、指定した platform_name および platform_group のハードウェアのブートに使用するブートファイルを変更することになります。 リソースプールサーバーは、最後の add_install_client コマンドにより設定されたブートファイルからブートします。


  9. image コマンドでは、次の DHCP オプションのセットがサポートされています。

    • SrootOpt

    • SrootIP4

    • SrootNM

    • SrootPTH

    • SswapIP4

    • SswapPTH

    • SbootFIL

    • Stz

    • SbootRS

    • SinstIP4

    • SinstNM

    • SinstPTH

    • SsysidCF

    • SjumpsCF

    • Sterm

    • BootFile

    • SbootURI

    DHCP オプションの詳細については、『Solaris 9 12/03 Installation Guide』の「Preconfiguring System Configuration Information」の節を参照してください。

    この手順で作成された JumpStart の構成例の DHCP オプションファイルのサンプルを次に示します。


     cat dhcp-options.txt
         SinstNM 10.42.42.1
         SinstPTH /image/s9u5x
         SrootNM 10.42.42.1
         SinstIP4M 10.42.42.1
         SinstPTH /images/s9u5x/Solaris_9/Tools/Boot
         SsysidCF 10.42.42.1:/images/jumpstart-x86
         SjumpsCFF 10.42.42.1:/images/jumpstart-x86
         BootFile nbp.SUNW.i86pc
         SSbootURI tftp://10.42.42.1/SUNW.i86pc

    注 –

    イメージサーバーの IP アドレスは、ルートサーバー、インストールサーバー、および JumpStart の構成に使用されます。


手動でのリソースプールサーバーのカスタマイズ

この節では、リソースプールサーバーを手動でカスタマイズする方法を説明します

Procedure手動でリソースプールサーバーをカスタマイズする

手順
  1. Solaris のドキュメントの手順と以下の手順の指示に従って、手動で JumpStart のインストールを完了し、Solaris イメージを構成します。

    1. 主インタフェースで DHCP を有効にします (デフォルト)。

      1. 主インタフェース用の /etc/hostname.interface-identifier ファイルを作成します。

        以下に例を示します。


        /etc/hostname.ce0

        このファイルは空ファイルにする必要があります。

      2. 主インタフェース用の /etc/dhcp.interface-identifier ファイルを作成します。

        このファイルには wait forever primary という 1 行を含める必要があります。 N1 Provisioning Server ソフトウェアからは、主インタフェースのデフォルトの icmp ping 処理を無効にしないでください。 監視ソフトウェアは、主インタフェースで icmp ping 処理を実行して、デバイスが動作中であるかどうかを確認します。

      3. ループバックインタフェースを除く追加の各インタフェースに対しては、次のファイルを作成します。


        /etc/dhcp.<interface_identifier>
        

        これらの各ファイルには、wait 60 という 1 行を含める必要があります。

      4. イメージが、2 つ以上のインタフェースが含まれる Solaris デバイス用である場合は、主インタフェースやループバックインタフェースではない各インタフェースに対しても、次のファイルを作成します。


        /etc/hostname.interface_identifier
        

        これらのファイルは空ファイルにする必要があります。

    2. /etc/default/dhcpagent の最後の行を次のように変更します。


      PARAM_REQUEST_LIST=1,3,12,43

      から


      PARAM_REQUEST_LIST=1,3,6,12,15,43
      

      に変更。イメージが、(ループバックインタフェースを除く) 2 つ以上のインターフェースが含まれる Solaris デバイス用である場合は、/etc/default/dhcpagent ファイルも次のように変更します。

      パラメータ値のペア "RELEASE_ON_SIGTERM=yes” のコメントを解除します。

    3. /etc/dhcp/ ディレクトリの *.dhc ファイルをすべて削除します。

    4. FTP を有効にします。

      デフォルトで FTP は有効になっていますが、FTP を有効にする方法は次の通りです。

      1. /etc/inetd.d. ファイルの次の行のコメントを解除します。


        ftpstream tcp6 nowait root /usr/sbin/n.ftpd n.ftpd
      2. net デーモンの ID を判別するには、次のコマンドを入力します。


        ps -ef | grep inetd
        
      3. 次のコマンドを入力します。


        kill -HUP net_pid
        
      4. root/etc/ftpusers ファイルに含まれていないことを確認します。

    5. リソースプールサーバーの Java 2 Platform, Standard Edition がバージョン 1.4.1_02 であることを確認します。


      注 –

      Solaris 8 のインストールの場合は、Solaris 8 のバグ No. 4457119 に関する回避策を追加します。推奨される修正では、次の内容を使用してファイル /etc/rcS.d/S99dhcpfix を作成します。


      #
      # Name:         /etc/rcS.d/S99dhcpfix
      #
      # Author:       Chris Morton
      #               Ericsson, Inc.
      #               (919) 472-6494
      #
      # This is here to fix a bug in Solaris DHCP  It will remove any lines 
      # in /etc/inet/hosts that DHCP added, so the 
      # /sbin/netstrategy program will return the correct values.
      
      HOSTSFILE=/etc/inet/hosts
      TEMPHOSTFILE=/tmp/hosts.$$
      
      case "$1" in
      "start")
              echo "N1"s Standard DHCP Environment"
              ;; # Fall through -- rest of script is the initialization code
      "stop")
              exit 0
              ;;
      *)
              echo "Usage: $0 { start | stop }"
              exit 1
              ;;
      esac
      
      
      # What's my hostname?:
      
      hostname=`/sbin/dhcpinfo Hostnamè
      if [ -z "$hostname" ]; then
              hostname="unknown"
      fi
      
      # What's my IpAddress
      
      ipaddress=`ifconfig ce0 | grep inet | awk '{print $2}'`
      
      
      # If you can find my hostname anywhere in /etc/inet/hosts, delete 
      that line.
      
      /usr/bin/rm -f ${TEMPHOSTFILE}
      /usr/bin/egrep -v "[    ]${hostname}([  ]|$)" ${HOSTSFILE} > 
      ${TEMPHOSTFILE} 2> /dev/null
      
      # Add a line based on the actuals
      
      echo "${ipaddress}      ${hostname}  ${TEMPHOSTFILE} 
      
      /usr/bin/cp -p ${TEMPHOSTFILE} ${HOSTSFILE}
      /usr/bin/rm -f ${TEMPHOSTFILE}

    6. シンボリックリンク /usr/java のリンク先が、Java 2 Platform がインストールされているディレクトリであることを確認します。

    7. サーバーをリブートします。

  2. イメージにインストールするために、N1 Provisioning Server エージェントパッケージを、N1 Provisioning Server ソフトウェアから、N1 Provisioning Server の tftboot ディレクトリにコピーします。


    注 –

    JumpStart のインストール後処理スクリプトである postinstall.sh を実行している場合は、この手順をスキップします。


  3. TFTP を使用して、コントロールプレーンサーバーからエージェントパッケージを取得します。


    注 –

    JumpStart のインストール後処理スクリプトである postinstall.sh を実行している場合は、この手順をスキップします。



    cd var/tmp
    tftp>cp
    tftp>binary
    tftp>get TSPRagsol.pkg
    Received 456704 bytes in 0.4 seconds 
    tftp>quit
    
  4. 次のコマンドを入力して、監視ソフトウェアパッケージを手動でインストールします。


    pkgadd -d TSPRagsol.pkg
    

    注 –

    JumpStart のインストール後処理スクリプトである postinstall.sh を実行している場合は、この手順をスキップします。



    注 –

    コマンド pkginfo | greppackage_name を実行して、次のオペレーティング環境パッケージをインストールしたことを確認します。

    SUNWbzip SUNWbzipx SUNWzip

    SUNWgzip SUNWtcsh SUNWscpux


  5. 次のコマンドを実行して、監視ソフトウェアを起動します。


    /etc/init.d/N1PSagt start