Sun N1 Service Provisioning System ユーザーズガイド (OS Provisioning Plug-In 3.1)

SUSE Linux サーバーの設定

OS プロビジョニングプラグインは、SUSE Linux の Kickstart 機能とともに、JumpStart Enterprise Toolkit (JET) テクノロジを通じて提供される機能を使用して、SUSE Linux オペレーティングシステム (OS) をプロビジョニングします。SUSE Linux サーバーを設定する際に、OS をプロビジョニングするための AutoYaST を実行する JET モジュールを作成します。JET についての詳細は、「JumpStart Enterprise Toolkit (JET) テクノロジ」を参照してください。

SUSE Linux ブートおよびインストールサーバーには次のソフトウェアが含まれています。

SUSE Linux OS をプロビジョニングするためのネットワークの準備

SUSE Linux イメージサーバーを作成する前に、次の作業を行なっておく必要があります。

ProcedureNFS アクセス権を設定する

JET を使用せずに SUSE Linux OS をプロビジョニングする場合は、ネットワーク上に NFS アクセス権を設定する必要があります。OS ディストリビューションは、このブートおよびインストールサーバーからサービスを受ける各サブネットに関して、NFS を介してアクセス可能である必要があります。

始める前に

必ずブートおよびインストールサーバーに NFS ユーティリティーがインストールされていることを確認してください。

  1. /etc/exports ファイルを編集し、次の例のような行を追加します。


    /export   10.42.42.*(ro)
  2. NFS を有効にし、起動します。

    RedHat AS 3.0 に適用される、次のようなコマンドを使用します。


    #chkconfig --level 35 nfs on
      #service nfs restart
    

SUSE Linux プロビジョニングするための TFTP アクセス権の設定

SUSE Linux OS をプロビジョニングするために TFTP アクセス権が有効になるようネットワークを設定する必要があります。ここでは、TFTP アクセス権を有効にする方法を示す 2 つの異なる手順を示します。

ProcedureJET を使用して SUSE プロビジョニング用の TFTP アクセス権を設定する

JET を使用して、SUSE Linux イメージサーバーを作成した場合、TFTP サービスは自動的にプロビジョニング用に構成されます。ただし、その場合でも、ブートおよびインストールサーバー上の TFTP ルートディレクトリに追加のディレクトリおよびファイルを作成またはコピーする必要があります。OS ディストリビューションは、このブートおよびインストールサーバーからサービスを受ける各サブネットに関して、NFS を介してアクセス可能である必要があります。

始める前に

ブートおよびインストールサーバーに適切な TFTP サーバーソフトウェアがインストールされていることを確認してください。

    TFTP ルートディレクトリの下に、次のディレクトリをコピーまたは作成します。

    • /tftpboot/pxelinux.0 – Linux PXE ブートストラップファイルは http://syslinux.zytor.com/pxe.php からダウンロードできます。

    • /tftpboot/pxelinux.cfg/ – このディレクトリには PXE 構成ファイルが含まれています。これらのファイルには、各ハードウェアプラットフォームおよび Linux ディストリビューションに固有のパラメータが含まれています。

      PXE 構成ファイルの作成方法については、「SUSE Linux OS プロビジョニング用の PXE 構成ファイルを作成する」を参照してください。


    注 –

    この作業では、TFTP ルートディレクトリの 1 例として /tftpboot を使用します。


ProcedureJET 以外の SUSE プロビジョニング用の TFTP アクセス権を設定する

ディストリビューションは、このブートおよびインストールサーバーからサービスを受ける各サブネットに関して、TFTP を介してアクセス可能である必要があります。

始める前に

ブートおよびインストールサーバーに適切な TFTP サーバーソフトウェアがインストールされていることを確認してください。

  1. /etc/xinet.d/tftp ファイルで server_args パラメータを探します。

    これが、TFTP サーバーにより使用されるルートディレクトリを定義します。ディレクトリが存在しない場合は、ディレクトリを作成します。


    注 –

    この作業では例として /tftpboot を使用します。


  2. TFTP を有効にし、xinetd デーモンを再起動します。

    RedHat AS 3.0 で動作する、次の例のようなコマンドを使用します。


    #chkconfig tftp on
      #service xinetd restart
    
  3. TFTP ルートディレクトリの下に、次のディレクトリをコピーまたは作成します。

    • /tftpboot/pxelinux.0 – Linux PXE ブートストラップファイルは http://syslinux.zytor.com/pxe.php からダウンロードできます。

    • /tftpboot/pxelinux.cfg/ – このディレクトリには PXE 構成ファイルが含まれています。これらのファイルには、各ハードウェアプラットフォームおよび Linux ディストリビューションに固有のパラメータが含まれています。

    • /tftpboot/pxelinux.cfg/v20z-config – V20z プラットフォームに固有のディレクトリ。

    • /tftpboot/linuxboot/loader にあるディストリビューションのインストールカーネル。

    • /tftpboot/initrdboot/loader にあるディストリビューションのインストール RAM ディスク。

SUSE Linux ファイルのコピー

SUSE Linux OS イメージを作成するには、ブートおよびインストールサーバーか、NFS 経由でネットワークからアクセス可能なほかのシステムに製品媒体のファイルをコピーします。これらのファイルは、SUSE Linux OS または Solaris OS のいずれかが動作するシステムにあります。システムの CD-ROM ドライブに物理製品媒体を挿入し、プロビジョニングプラン用のイメージソースとして CD を指定することもできます。SUSE Linux ブートおよびインストールサーバーにコピーを配置する必要はありません。

SUSE Linux ファイルをコピーするには、製品 CD の内容を特定のディレクトリ構造に抽出します。SUSE Linux ファイルをコピーする方法については、http://www.suse.com/~ug/AutoYaST_FAQ.html#a6を参照してください。

SUSE Linux Enterprise Server 8.0 release のプロビジョニングを自動化するには、SUSE Linux 8.0 インストールイメージを作成したあとにインストーラスクリプトを変更する必要があります。詳細については、「インストーラスクリプトを変更して SUSE Linux Enterprise Server 8.0 のプロビジョニングを自動化する」を参照してください。

ブートおよびインストールサーバーではないシステムにコピーを配置する場合は、次の条件が満たされる必要があります。

Procedureインストーラスクリプトを変更して SUSE Linux Enterprise Server 8.0 のプロビジョニングを自動化する

SUSE Linux Enterprise Server (SLES) 8.0 インストーラには、インストール先のシステムのキーボードの有無をチェックするコードが含まれています。このコードがあると、OS プロビジョニングプラグイン で SLES 8.0 OS のインストールを自動化することができません。SLES 8.0 OS のプロビジョニングを完全に自動化するには、インストーラを編集してこのコードを削除します。次の手順に従ってください。

  1. SLES 8.0 イメージの root ファイルを含む boot ディレクトリに移動します。

    boot ディレクトリは、SLES8.0 CD の 1 枚目のコピーにあります。

  2. root ファイルのバックアップコピーを作成します。


    # cp root root.orig
    
  3. 一時ディレクトリに、ループバックモードでファイルのコピーをマウントします。


    # mkdir /tmp/loop
    # mount -o loop root.orig /tmp/loop
    
  4. 作業用の一時ディレクトリを作成します。


    # mkdir /tmp/work
    
  5. root を作業用の一時ディレクトリにコピーします。


    # cd /tmp/work
    # rsync -avz /tmp/loop/* .
    
  6. テキストエディタで、作業用の一時ディレクトリにある YaST2 インストーラスクリプトを開きます。

    前の手順で指定したディレクトリ名を使用する場合は、 YaST2 インストーラスクリプトは /tmp/work/usr/lib/YaST2/bin/ ディレクトリにあります。

  7. YaST2 インストーラスクリプトから次の部分のコードを削除します。

    # iSeries and p690 dont have a keyboard but a special console, no need to
    # run via serial console.
    
    if [ ! "$update" -a "$Keyboard" = "0" -a ! "$Braille" -a "$NOTISERIES"
    != 0 -a "$NOTHVCCONSOLE" != 0 -a "$HOSTTYPE" != "s390" -a "$HOSTTYPE" !=
    "s390x" ] ; then
         log "no keyboard?"
         echo "No keyboard detected. Trying to connect via serial interface
    /dev/ttyS0."
         echo "On your terminal computer start the user interface with"
         echo "y2base \"serial(115200):/dev/ttyS0\" qt -geometry 800x600
    -style=platinum"
         echo "or"
         echo "y2base \"serial(115200):/dev/ttyS1\" qt -geometry 800x600
    -style=platinum"
         echo "or start the YaST2 menu by typing \"yast2\" and select
    YaST2/Remote Install"
         y2base "$modulename" $moduleargs "serial(115200):/dev/ttyS0"
    --timeout 15
         y2exitcode=$?
         [ $y2exitcode -eq 0 ] && y2cc_ncurses
         if [ "$y2exitcode" = 13 ] ; then
             echo "Connection timeout. Continuing with normal setup."
         else
             exit $y2exitcode
         fi
    fi
  8. 変更した YaST2 インストーラスクリプトを含めて root ファイルを再作成します。


    # cd /tmp
    # mkfs.cramfs work root
    
  9. 新しい root ファイルを SLES 8.0 CD の 1 枚目にコピーします。


    # cp /tmp/root suse-copy-path/boot/root
    

    suse-copy-path は、SLES 8.0 CD の 1 枚目のコピーへのパスです。

  10. 作業用の一時ディレクトリを削除し、一時ディレクトリへのループバックを削除します。


    # rm -rf work
    # umount /tmp/loop
    
注意事項

SLES 8.0 インストーラを編集したあとに、インストールが対話モードに変わり、ライセンス契約同意書への確認を求められる場合は、SLES 8.0 CD の 1 枚目のコピーにある info.txt ファイルの名前を変更します。次に例を示します。

# mv suse-copy-path /media.1/info.txt suse-copy-path media.1/info.txt.bak

ファイル名を変更したら、SLES 8.0 OS のプロビジョニングを再度実行してください。

SUSE Linux イメージサーバーの作成

SUSE Linux イメージをコピーしたあと、N1 SPS 環境内に SUSE Linux イメージサーバーかブートおよびインストールサーバーを作成する必要があります。ブートおよびインストールサーバーを N1 SPS リモートエージェントにし、ブートおよびインストールサーバーをマスターサーバーに対するリモートエージェントとして追加します。

ProcedureSUSE Linux イメージサーバーを作成する (ブラウザインタフェース)

ブラウザインタフェースからサーバーを作成するには、次の手順に従います。

  1. プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。

  2. 「OS Provisioning Common Tasks」ページの「Linux Image Servers」セクションで「Create」をクリックします。

  3. 「Plans Details」ページの「Run」をクリックします。

  4. このプランに使用する変数を選択します。

    • 既存の変数セットを使用するには、「Plan Parameters」テーブルの「LinuxServer」コンポーネント行にあるドロップダウンメニューから名前を選択します。

    • 新しい変数セットを作成するには、「Plan Parameters」テーブルの「LinuxServer」コンポーネント行で「Select from List」をクリックします。

      1. 「Create Set」をクリックします。

      2. 変数セットの名前を入力します。

      3. 必要に応じて、linuxHost 変数を、コマンド行インタフェースの位置に変更します。

        デフォルトでは、仮想 Linux ホスト名は、-linux が追加されたターゲットホストのホスト名に設定されています。


        注意 – 注意 –

        installPathboot_server_tftp_root_directory 変数の値は、変更しないでください。


      4. 変数セットを保存します。

      5. 「Plan Parameters」テーブルの「LinuxServer」コンポーネント行にあるドロップダウンメニューから、直前に保存した変数セットを選択します。

    • 別のコンポーネントの変数設定を使用する場合は、「Import Set From Component」をクリックします。

      「Import Variable Settings」ウィンドウが表示されます。

      1. 必要に応じて、変数設定のインポート元となるコンポーネントが入ったフォルダへ移動します。

      2. コンポーネントのバージョンを選択します。


        注 –

        コンポーネントのバージョンが異なると、変数設定も異なる可能性があります。現在のコンポーネントおよびインポートする変数設定があるコンポーネントが共通の変数を使用していることを確認します。変数設定のインポート元のコンポーネントと、プランで使用するコンポーネントの間で共通に使用している変数が存在しない場合、変数設定はインポートされません。


      3. 「Import Variable Settings」をクリックします。

        変数設定がインポートされ、表形式で表示されます。

      4. 「Plan Details Run」ページの「Variable Settings」ドロップダウンリストから、インポートした変数設定を選択し、「Select」をクリックします。

    • ファイルに保存されているコンポーネント変数設定を使用する場合は、次の手順に従います。

      1. 「Import Sets from File」テキストフィールドに、使用する変数設定ファイルへのパスを入力します。

        ファイルシステムをブラウズして適切なファイルを探すには、「ブラウズ」ボタンをクリックします。

      2. 「Import」をクリックします。

        変数設定がインポートされ、表形式で表示されます。


        注 –

        変数設定のインポート元のファイルと、プランで使用するコンポーネントの間で共通に使用している変数が存在しない場合、変数設定はインポートされません。


      3. 「Plan Details Run」ページの「Variable Settings」ドロップダウンリストから、インポートした変数設定を選択し、「Select」をクリックします。

  5. Linux イメージサーバーを作成するホストを選択します。

  6. 「Run Plan (includes preflight)」をクリックします。

  7. イメージサーバーが正常に作成されたことを確認するには、プロビジョニングサーバーのウィンドウの左側にある「Hosts」リンクをクリックします。

    -linux が付加された仮想ホストの名前が表示されます。たとえば、ホスト bikickstart にインストールした場合、仮想ホストは bikickstart-linux です。

    この手順によって、ブートおよびインストールサーバーに SUNWjetJetRedHat JetSuse パッケージがインストールされます。SUNWjet パッケージは、TFTP サーバーの設定と、JET ベースディレクトリ (デフォルトでは /opt/SUNWjet) ディレクトリの NFS 共有設定を行います。

注意事項

OS プロビジョニングサーバーがブートおよびインストールサーバーと同じ物理ホスト上に存在する場合は、ターゲットホストへのプロビジョニングの前にそのシステムのインタフェースを構成する必要があります。OS プロビジョニングサーバーは、ブートおよびインストールサーバーのインタフェースを自動的には構成しません。

ProcedureSUSE Linux イメージサーバーを作成する (コマンド行インタフェース)

N1 SPS のブラウザインタフェースまたはコマンド行インターフェースから SUSE Linux イメージサーバーを作成できます。

始める前に

ターゲットホストの位置を特定できるよう、autoyast ファイルは、SUSE Linux ブートおよびインストールサーバー上の NFS エクスポートディレクトリ (例: /export/autoyast) に配置する必要があります。

    コマンド行からサーバーを作成するには、次のようなコマンドを入力します。


    # cr_cli -cmd cdb.vs.add -comp NM:/com/sun/n1osp/untyped/LinuxServer \
    -name "linuxserver" -u admin -p admin -vars "boot_server_tftp_root_directory=/tftpboot"
    # cr_cli -cmd pe.p.run -u admin -p admin \
    -PID NM:/com/sun/n1osp/untyped/LinuxServer-create \
    -tar H:NM:bikickstart -comp + -vs linuxserver -pto 30 -nto 10
    

    これらのコマンドによって、ブートおよびインストールサーバーに SUNWjetJetRedHat、および JetSuse パッケージがインストールされます。SUNWjet パッケージは、TFTP サーバーの設定と、JET ベースディレクトリ (デフォルトでは /opt/SUNWjet) ディレクトリの NFS 共有設定を行います。

注意事項

OS プロビジョニングサーバーがブートおよびインストールサーバーと同じ物理ホスト上に存在する場合は、ターゲットホストへのプロビジョニングの前にそのシステムのインタフェースを構成する必要があります。OS プロビジョニングサーバーは、ブートおよびインストールサーバーのインタフェースを自動的には構成しません。