この章では、OS プロビジョニングプラグインを使用して、SUSE Linux オペレーティングシステムをターゲットホストにインストールする方法について説明します。
OS プロビジョニングプラグインは SUSE AutoYaST テクノロジを使用します。
SUSE Linux イメージサーバーを設定します。
SUSE Linux イメージを作成するか、イメージサーバーに既存のイメージを添付します。
ターゲットホストを作成します。
ターゲットホストに OS をインストールします。
OS プロビジョニングプラグインは、SUSE Linux の Kickstart 機能とともに、JumpStart Enterprise Toolkit (JET) テクノロジを通じて提供される機能を使用して、SUSE Linux オペレーティングシステム (OS) をプロビジョニングします。SUSE Linux サーバーを設定する際に、OS をプロビジョニングするための AutoYaST を実行する JET モジュールを作成します。JET についての詳細は、「JumpStart Enterprise Toolkit (JET) テクノロジ」を参照してください。
SUSE Linux ブートおよびインストールサーバーには次のソフトウェアが含まれています。
Linux (RedHat Advanced Server 3.0 および 4.0 でテスト済み) または Solaris OS
TFTP サーバー (tftp-server パッケージ)
NFS サーバー (nfs-utils パッケージ)
N1 SPS リモートエージェント (RA) (Linux 版)。詳細は、『Sun N1 Service Provisioning System 5.2 システム管理者ガイド』の「物理ホストを準備する」を参照してください。
SUSE Linux イメージサーバーを作成する前に、次の作業を行なっておく必要があります。
JET を使用せずプロビジョニングする場合のブートおよびインストールサーバー上の SUSE Linux イメージへの NFS アクセス権の設定
この方法については、「NFS アクセス権を設定する」を参照してください。
ブートおよびインストールサーバー上の SUSE Linux イメージへの TFTP アクセス権の設定
この方法については、「SUSE Linux プロビジョニングするための TFTP アクセス権の設定」を参照してください。
SUSE Linux OS インストールイメージの作成
この方法については、「SUSE Linux ファイルのコピー」を参照してください。
JET を使用せずに SUSE Linux OS をプロビジョニングする場合は、ネットワーク上に NFS アクセス権を設定する必要があります。OS ディストリビューションは、このブートおよびインストールサーバーからサービスを受ける各サブネットに関して、NFS を介してアクセス可能である必要があります。
必ずブートおよびインストールサーバーに NFS ユーティリティーがインストールされていることを確認してください。
/etc/exports ファイルを編集し、次の例のような行を追加します。
/export 10.42.42.*(ro) |
NFS を有効にし、起動します。
RedHat AS 3.0 に適用される、次のようなコマンドを使用します。
#chkconfig --level 35 nfs on #service nfs restart |
SUSE Linux OS をプロビジョニングするために TFTP アクセス権が有効になるようネットワークを設定する必要があります。ここでは、TFTP アクセス権を有効にする方法を示す 2 つの異なる手順を示します。
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 を使用します。
ディストリビューションは、このブートおよびインストールサーバーからサービスを受ける各サブネットに関して、TFTP を介してアクセス可能である必要があります。
ブートおよびインストールサーバーに適切な TFTP サーバーソフトウェアがインストールされていることを確認してください。
/etc/xinet.d/tftp ファイルで server_args パラメータを探します。
これが、TFTP サーバーにより使用されるルートディレクトリを定義します。ディレクトリが存在しない場合は、ディレクトリを作成します。
この作業では例として /tftpboot を使用します。
TFTP を有効にし、xinetd デーモンを再起動します。
RedHat AS 3.0 で動作する、次の例のようなコマンドを使用します。
#chkconfig tftp on #service xinetd restart |
TFTP ルートディレクトリの下に、次のディレクトリをコピーまたは作成します。
/tftpboot/pxelinux.0 – Linux PXE ブートストラップファイルは http://syslinux.zytor.com/pxe.php からダウンロードできます。
/tftpboot/pxelinux.cfg/ – このディレクトリには PXE 構成ファイルが含まれています。これらのファイルには、各ハードウェアプラットフォームおよび Linux ディストリビューションに固有のパラメータが含まれています。
/tftpboot/pxelinux.cfg/v20z-config – V20z プラットフォームに固有のディレクトリ。
/tftpboot/linux – boot/loader にあるディストリビューションのインストールカーネル。
/tftpboot/initrd – boot/loader にあるディストリビューションのインストール RAM ディスク。
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 のプロビジョニングを自動化する」を参照してください。
ブートおよびインストールサーバーではないシステムにコピーを配置する場合は、次の条件が満たされる必要があります。
JET を使用する SUSE Linux プロビジョニングの場合は、ブートおよびインストールサーバーとターゲットホストが NFS 経由で OS ファイルのコピーにアクセスできること。
JET を使用しない SUSE Linux プロビジョニングの場合は、ターゲットホストが NFS 経由で OS ファイルのコピーにアクセスできること。
SUSE Linux Enterprise Server (SLES) 8.0 インストーラには、インストール先のシステムのキーボードの有無をチェックするコードが含まれています。このコードがあると、OS プロビジョニングプラグイン で SLES 8.0 OS のインストールを自動化することができません。SLES 8.0 OS のプロビジョニングを完全に自動化するには、インストーラを編集してこのコードを削除します。次の手順に従ってください。
SLES 8.0 イメージの root ファイルを含む boot ディレクトリに移動します。
boot ディレクトリは、SLES8.0 CD の 1 枚目のコピーにあります。
root ファイルのバックアップコピーを作成します。
# cp root root.orig |
一時ディレクトリに、ループバックモードでファイルのコピーをマウントします。
# mkdir /tmp/loop # mount -o loop root.orig /tmp/loop |
作業用の一時ディレクトリを作成します。
# mkdir /tmp/work |
root を作業用の一時ディレクトリにコピーします。
# cd /tmp/work # rsync -avz /tmp/loop/* . |
テキストエディタで、作業用の一時ディレクトリにある YaST2 インストーラスクリプトを開きます。
前の手順で指定したディレクトリ名を使用する場合は、 YaST2 インストーラスクリプトは /tmp/work/usr/lib/YaST2/bin/ ディレクトリにあります。
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
変更した YaST2 インストーラスクリプトを含めて root ファイルを再作成します。
# cd /tmp # mkfs.cramfs work root |
新しい root ファイルを SLES 8.0 CD の 1 枚目にコピーします。
# cp /tmp/root suse-copy-path/boot/root |
suse-copy-path は、SLES 8.0 CD の 1 枚目のコピーへのパスです。
作業用の一時ディレクトリを削除し、一時ディレクトリへのループバックを削除します。
# 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 イメージをコピーしたあと、N1 SPS 環境内に SUSE Linux イメージサーバーかブートおよびインストールサーバーを作成する必要があります。ブートおよびインストールサーバーを N1 SPS リモートエージェントにし、ブートおよびインストールサーバーをマスターサーバーに対するリモートエージェントとして追加します。
ブラウザインタフェースからサーバーを作成するには、次の手順に従います。
プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。
「OS Provisioning Common Tasks」ページの「Linux Image Servers」セクションで「Create」をクリックします。
「Plans Details」ページの「Run」をクリックします。
このプランに使用する変数を選択します。
既存の変数セットを使用するには、「Plan Parameters」テーブルの「LinuxServer」コンポーネント行にあるドロップダウンメニューから名前を選択します。
新しい変数セットを作成するには、「Plan Parameters」テーブルの「LinuxServer」コンポーネント行で「Select from List」をクリックします。
「Create Set」をクリックします。
変数セットの名前を入力します。
必要に応じて、linuxHost 変数を、コマンド行インタフェースの位置に変更します。
デフォルトでは、仮想 Linux ホスト名は、-linux が追加されたターゲットホストのホスト名に設定されています。
installPath や boot_server_tftp_root_directory 変数の値は、変更しないでください。
変数セットを保存します。
「Plan Parameters」テーブルの「LinuxServer」コンポーネント行にあるドロップダウンメニューから、直前に保存した変数セットを選択します。
別のコンポーネントの変数設定を使用する場合は、「Import Set From Component」をクリックします。
「Import Variable Settings」ウィンドウが表示されます。
必要に応じて、変数設定のインポート元となるコンポーネントが入ったフォルダへ移動します。
コンポーネントのバージョンを選択します。
コンポーネントのバージョンが異なると、変数設定も異なる可能性があります。現在のコンポーネントおよびインポートする変数設定があるコンポーネントが共通の変数を使用していることを確認します。変数設定のインポート元のコンポーネントと、プランで使用するコンポーネントの間で共通に使用している変数が存在しない場合、変数設定はインポートされません。
「Import Variable Settings」をクリックします。
変数設定がインポートされ、表形式で表示されます。
「Plan Details Run」ページの「Variable Settings」ドロップダウンリストから、インポートした変数設定を選択し、「Select」をクリックします。
ファイルに保存されているコンポーネント変数設定を使用する場合は、次の手順に従います。
「Import Sets from File」テキストフィールドに、使用する変数設定ファイルへのパスを入力します。
ファイルシステムをブラウズして適切なファイルを探すには、「ブラウズ」ボタンをクリックします。
「Import」をクリックします。
変数設定がインポートされ、表形式で表示されます。
変数設定のインポート元のファイルと、プランで使用するコンポーネントの間で共通に使用している変数が存在しない場合、変数設定はインポートされません。
「Plan Details Run」ページの「Variable Settings」ドロップダウンリストから、インポートした変数設定を選択し、「Select」をクリックします。
Linux イメージサーバーを作成するホストを選択します。
「Run Plan (includes preflight)」をクリックします。
イメージサーバーが正常に作成されたことを確認するには、プロビジョニングサーバーのウィンドウの左側にある「Hosts」リンクをクリックします。
-linux が付加された仮想ホストの名前が表示されます。たとえば、ホスト bikickstart にインストールした場合、仮想ホストは bikickstart-linux です。
この手順によって、ブートおよびインストールサーバーに SUNWjet と JetRedHat 、JetSuse パッケージがインストールされます。SUNWjet パッケージは、TFTP サーバーの設定と、JET ベースディレクトリ (デフォルトでは /opt/SUNWjet) ディレクトリの NFS 共有設定を行います。
OS プロビジョニングサーバーがブートおよびインストールサーバーと同じ物理ホスト上に存在する場合は、ターゲットホストへのプロビジョニングの前にそのシステムのインタフェースを構成する必要があります。OS プロビジョニングサーバーは、ブートおよびインストールサーバーのインタフェースを自動的には構成しません。
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 |
これらのコマンドによって、ブートおよびインストールサーバーに SUNWjet、JetRedHat、および JetSuse パッケージがインストールされます。SUNWjet パッケージは、TFTP サーバーの設定と、JET ベースディレクトリ (デフォルトでは /opt/SUNWjet) ディレクトリの NFS 共有設定を行います。
OS プロビジョニングサーバーがブートおよびインストールサーバーと同じ物理ホスト上に存在する場合は、ターゲットホストへのプロビジョニングの前にそのシステムのインタフェースを構成する必要があります。OS プロビジョニングサーバーは、ブートおよびインストールサーバーのインタフェースを自動的には構成しません。
SUSE Linux イメージサーバーを作成したあとには、プロビジョニングイメージとプロファイルを作成する必要があります。
JumpStart Enterprise Toolkit (JET) でイメージおよびプロファイルを生成する場合は、「JET による SUSE Linux イメージとプロファイルの作成」を参照してください。
イメージおよびプロファイルを手動で作成する場合は、「非 JET SUSE Linux イメージとプロファイルの作成」を参照してください。
JumpStart Enterprise Toolkit (JET) は、SUSE Linux のプロビジョニングに必要なプロファイルの作成作業を簡単にする一群のユーティリティーです。N1 SPS ブラウザインタフェースを使用して、ターゲットホストの Kickstart インストールを自動的に行うのに必要なプロファイルキーワードおよびプロファイル値を生成できます。
JET を使用しない方が望ましく、手動でプロファイル値を作成する場合は、JET モジュールを使用しない SUSE Linux イメージおよびプロファイルを作成できます。「非 JET SUSE Linux イメージとプロファイルの作成」を参照してください。
Linux イメージサーバーが存在し、そのサーバーで SUSE Linux オペレーティングシステムソフトウェアが使用できることを確認します。SUSE Linux イメージサーバーの作成方法の詳細については、「SUSE Linux サーバーの設定」を参照してください。
プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。
「OS Provisioning Common Tasks」ページの「SUSE Linux Images」セクションで「Create Profile」をクリックします。
「Plans Details」ページの「Run」をクリックします。
このプランに使用する変数を選択します。
既存の変数セットを使用するには、「Plan Parameters」テーブルの「LinuxImage」コンポーネント行にあるドロップダウンメニューから名前を選択します。
新しい変数セットを作成するには、「Plan Parameters」テーブルの「LinuxImage」コンポーネント行で「Select from List」をクリックします。
「Create Set」をクリックします。
変数セットの名前を入力します。
変数を確認し、必要に応じて変数を変更します。
次の表で、追加の変数とそのデフォルト値を説明します。
変数名 |
説明 |
デフォルト値/例 |
---|---|---|
osp_server |
OS プロビジョニングサービスを表す仮想サーバー |
masterserver-osp (デフォルト) |
version |
このコンポーネントで配備する Linux のバージョン |
SLES9 (例) |
architecture |
x86 などの、物理システムのアーキテクチャー 注 – この値は、プロファイルコンポーネントおよび OS イメージの名前に使用されます。プロビジョニングソフトウェアによって、この変数が検査、適用されることはありません。 |
x86 (デフォルト) |
installPath |
添付する SUSE Linux イメージの名前 |
SuSeLinux:[version]_:[architecture] 次に例を示します。SuSeLinux_SLES9_x86 |
description |
このプロファイルに関する説明 (任意) |
test linux (例) |
min_disk_size |
SUSE Linux OS のプロビジョニングに必要な最小ディスク容量 |
10GB (デフォルト) |
boot_server_name |
SUSE Linux ブートおよびインストールサーバーの名前 |
masterserver (例) |
boot_server_subnet_address |
ブートおよびインストールサーバーがサービスを提供するサブネット |
10.10.31.0 (例) |
boot_server_subnet_ip_address |
サブネット上のブートおよびインストールサーバーの IP アドレス |
10.10.31.1 (例) |
image_subnet_mask |
プロビジョニングサブネットのネットマスク |
255.255.255.0 (デフォルト) |
distro_root_directory |
ブートサーバー上の SUSE Linux ディストリビューションのベースディレクトリの絶対パス |
nfs://10.10.31.4/Suse/SLES-9-x86-64/installroot (例) |
kernel (JET プロファイルのみ) |
OS イメージ内のカーネルへの相対パス。 非 JET プロファイルの場合は、この変数に値を指定しないでください。 |
boot/loader/linux (デフォルト) |
initrd (JET プロファイルのみ) |
OS イメージ内の initrd への相対パス。 非 JET プロファイルの場合は、この変数に値を指定しないでください。 |
boot/loader/initrd (デフォルト) |
autoyast_file (非 JET プロファイルのみ) |
ブートサーバー上の AutoYaST ファイルの絶対パス JET 生成プロファイルの場合は、この変数に値を指定しないでください。 |
なし |
pxe_boot_file (非 JET プロファイルのみ) |
ブートサーバー上の pxelinux.0 ブートファイルの、/tftpboot ディレクトリからの相対パス JET 生成プロファイルの場合は、この変数に値を指定しないでください。 |
なし |
pxe_configuration_file (非 JET プロファイルのみ) |
ブートサーバー上の PXE Linux 構成ファイルの、pxelinux.cfg ディレクトリからの相対パス JET 生成プロファイルの場合は、この変数に値を指定しないでください。 |
なし |
SuSelinux_component_folder |
自動生成 SUSE Linux Provision コンポーネントフォルダの位置 |
/com/sun/n1osp/autogen-:[target(..):sys.hostName]-linux (デフォルト) |
変数セットを保存します。
「Plan Parameters」テーブルの「LinuxImage」コンポーネント行にあるドロップダウンメニューから、直前に保存した変数セットを選択します。
「Plan Details Run」ページで、プロファイルの作成先の Linux イメージサーバーを選択します。
Linux イメージサーバーのホスト名は末尾が -linux になります。
必要に応じてプロファイル名を変更します。
必要に応じてプロファイルの説明を変更します。
使用する JET モジュールのリストを更新します。
JET 製品のモジュールは、JET サーバーのディレクトリ /opt/SUNWjet/Products にあります。
デフォルトでは、プラン変数 JET Modules Name(s) に、SUSE Linux プロファイルコンポーネントに含める 2 つの JET モジュールがあります。
base_config – SUSE Linux OS のインストールと構成を行います。base_config 変数の詳細については、「基本 SUSE Linux OS 構成変数」を参照してください。
spsra – Solaris システム上で N1 SPS リモートエージェント (RA) のインストールと構成を行います。spsra 変数の詳細については、「SUSE Linux リモートエージェントのコンポーネント変数」を参照してください。
base_config は、基本 SUSE Linux インストールを行うための必須 JET モジュールです。そのほかの /opt/SUNWjet/Products モジュールはすべて省略可能です。モジュール名をこのリストに追加することにより、モジュールのインストール関数と構成変数が、新しく作成された SUSE Linux プロビジョニングプロファイルに追加されます。
「Use the Jet Modules Specified Above」チェックボックスが選択されていることを確認します。
「Run Plan (includes preflight)」をクリックします。
Linux イメージサーバーに対して Linux プロファイルが作成されたことを確認するには、N1 SPS ブラウザインタフェースの左側にある「Components」をクリックします。
/com/sun/n1osp/autogen-server-name-linux/provision/ フォルダに、provision コンポーネントがあります。ここで server-name は、変数セットに指定した Linux サーバー名です。次に例を示します。 /com/sun/n1osp/autogen-SuSe_SLES9_x86-linux/provision/。
LinuxImage コンポーネントの変数セットを作成するには、次の例のようなコマンドを入力します。
# cr_cli -cmd cdb.vs.add -comp NM:/com/sun/n1osp/untyped/SuseLinuxImage \ -name "SLES9" -u admin -p admin -vars "osp_server=masterserver-osp;version=9; \ architecture=x86;installPath=SuSeLinux:[version]_:[architecture]; \ description=SUSE SLES9;min_disk_size=10GB; \ boot_server_name=biautoyast;boot_server_subnet_address=10.42.42.0; \ boot_server_subnet_ip_address=10.42.42.3; \ distro_root_directory=nfs://10.42.42.3/export/SUSE/SLES-9-x86-64/installroot;\ pxe_boot_file=;pxe_configuration_file=; \ autoyast_file=;kernel=boot/loader/linux;initrd=boot/loader/initrd" |
JET モジュール情報を提供するには、次のエントリを含む /tmp//suse-profile ファイルを作成します。
standard-jet Standard Linux base_config true
各行の意味は次のとおりです。
ファイルの最初の行は、ブラウザインタフェースのプラン変数セクションの「Profile Name」フィールドに対応します。
ファイルの 2 番目の行は、ブラウザインタフェースのプラン変数セクションの「Profile Description」フィールドに対応します。
ファイルの 3 行目は、ブラウザインタフェースのプラン変数セクションの「JET Module Name」フィールドに対応します。
ファイルの 4 行目は、ブラウザインタフェースのプラン変数セクションの「Use the Jet Modules Specified Above」チェックボックスに対応します。
プランを実行するには、次の例のようなコマンドを入力します。
# cr_cli -cmd pe.p.run -u admin -p admin \ -PID NM:/com/sun/n1osp/untyped/SuSeLinuxImage-create-profile \ -tar H:NM:bilinux-linux -comp - -vs SLES9 -pto 30 -nto 10 \ -f /tmp/suse-profile |
-u オプションで指定したデフォルトの N1 SPS ユーザー値を書き留めます。OS インストール後に N1 SPS リモートエージェントソフトウェアがターゲットホストで起動するには、このユーザーが存在する必要があります。
SUSE Linux イメージおよびプロファイルを手動で作成する場合は、JET モジュールを使用せずに、SUSE Linux イメージおよびプロファイルを作成できます。この節では、非 JET SUSE Linux イメージとプロファイルの作成方法を説明します。
JET を使用して、イメージおよびプロファイルを作成する場合は、「JET による SUSE Linux イメージとプロファイルの作成」を参照してください。
ターゲットホストに 非 JET SUSE Linux イメージを配備するには、手動で PXE 構成ファイルを作成する必要があります。このファイルには、各ハードウェアプラットフォームおよび SUSE Linux ディストリビューションに固有のパラメータが含まれています。
テキストエディタでファイルを作成し、次のテキストを入力します。
default sles serial 0 9600 label sles kernel linux append console=ttyS0,9600 load_ramdisk=1 initrd=initrd textmode=1
各行の意味は次のとおりです。
先頭行 (default) は、ラベル sles を使用し、AutoYaST によるインストールを行うことを示しています。
3 行目 (label) は、ラベル sles の定義です。
4 行目 (kernel) は、読み込むカーネルの指定です。パスは pxelinux.0 に対して相対的です。
5 行目 (append) には、一連のネットワーク構成パラメータが含まれています。append パラメータはすべて同じ行に存在する必要があります。ここに示す固有のパラメータは次のとおりです。
console=ttyS0,9600 は、コンソールにインストール出力を表示するためのコンソールパラメータを指定しています。パラメータは、ターゲットハードウェアのプラットフォームに応じて異なります。
load_ramdisk は、RAM ディスクに initrd を使用することを示しています。RAM ディスクのパスは pxelinux.0 に対して相対的です。
ブートおよびインストールサーバー上の TFTP ルートディレクトリの pxelinux.cfg サブディレクトリに、このファイルを保存します。
複数リリースの SUSE Linux OS のプロビジョニングを行えるようにする場合は、このファイルに、 sles9.cfg などの一意の名前を割り当てます。
Linux イメージサーバーが存在し、そのサーバーで SUSE Linux オペレーティングシステムソフトウェアが使用できることを確認します。SUSE Linux イメージサーバーの作成方法の詳細については、「RedHat Linux サーバーの設定」を参照してください。
PXE Linux 構成ファイルを作成し、ブートおよびインストールサーバー上の pxelinux.cfg ディレクトリにそのファイルを配置します。PXE Linux 構成ファイル例については、「SUSE Linux OS プロビジョニング用の PXE 構成ファイルを作成する」を参照してください。
プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。
「OS Provisioning Common Tasks」ページの「SUSE Linux Images」セクションで「Create Profile」をクリックします。
「Plans Details」ページの「Run」をクリックします。
このプランに使用する変数を選択します。
既存の変数セットを使用するには、「Plan Parameters」テーブルの「LinuxImage」コンポーネント行にあるドロップダウンメニューから名前を選択します。
新しい変数セットを作成するには、「Plan Parameters」テーブルの「LinuxImage」コンポーネント行で「Select from List」をクリックします。
「Create Set」をクリックします。
変数セットの名前を入力します。
変数を確認し、必要に応じて変数を変更します。
次の表で、追加の変数とそのデフォルト値を説明します。
変数名 |
説明 |
デフォルト値/例 |
---|---|---|
osp_server |
OS プロビジョニングサービスを表す仮想サーバー |
masterserver-osp (デフォルト) |
version |
このコンポーネントで配備する Linux のバージョン |
SLES9 (例) |
architecture |
x86 などの、物理システムのアーキテクチャー 注 – この値は、プロファイルコンポーネントおよび OS イメージの名前に使用されます。プロビジョニングソフトウェアによって、この変数が検査、適用されることはありません。 |
x86 (デフォルト) |
installPath |
添付する SUSE Linux イメージの名前 |
SuSeLinux:[version]_:[architecture] 次に例を示します。SuSeLinux_SLES9_x86 |
description |
このプロファイルに関する説明 (任意) |
test linux (例) |
min_disk_size |
SUSE Linux OS のプロビジョニングに必要な最小ディスク容量 |
10GB (デフォルト) |
boot_server_name |
SUSE Linux ブートおよびインストールサーバーの名前 |
masterserver (例) |
boot_server_subnet_address |
ブートおよびインストールサーバーがサービスを提供するサブネット |
10.10.31.0 (例) |
boot_server_subnet_ip_address |
サブネット上のブートおよびインストールサーバーの IP アドレス |
10.10.31.1 (例) |
image_subnet_mask |
プロビジョニングサブネットのネットマスク |
255.255.255.0 (デフォルト) |
distro_root_directory |
ブートサーバー上の SUSE Linux ディストリビューションのベースディレクトリの絶対パス |
nfs://10.10.31.4/Suse/SLES-9-x86-64/installroot (例) |
kernel (JET プロファイルのみ) |
OS イメージ内のカーネルへの相対パス。 非 JET プロファイルの場合は、この変数に値を指定しないでください。 |
なし |
initrd (JET プロファイルのみ) |
OS イメージ内の initrd への相対パス。 非 JET プロファイルの場合は、この変数に値を指定しないでください。 |
なし |
autoyast_file (非 JET プロファイルのみ) |
ブートサーバー上の AutoYaST ファイルの絶対パス JET 生成プロファイルの場合は、この変数に値を指定しないでください。 |
nfs://10.10.31.4/export/v20z/sles9.xml (例) |
pxe_boot_file (非 JET プロファイルのみ) |
ブートサーバー上の pxelinux.0 ブートファイルの、/tftpboot ディレクトリからの相対パス JET 生成プロファイルの場合は、この変数に値を指定しないでください。 |
v20z/suse/pxelinux.0 (例) |
pxe_configuration_file (非 JET プロファイルのみ) |
ブートサーバー上の PXE Linux 構成ファイルの、pxelinux.cfg ディレクトリからの相対パス JET 生成プロファイルの場合は、この変数に値を指定しないでください。 |
as21-console (例) |
SuSelinux_component_folder |
自動生成 SUSE Linux Provision コンポーネントフォルダの位置 |
/com/sun/n1osp/autogen-:[target(..):sys.hostName]-linux (デフォルト) |
変数セットを保存します。
「Plan Parameters」テーブルの「LinuxImage」コンポーネント行にあるドロップダウンメニューから、直前に保存した変数セットを選択します。
「Plan Details Run」ページで、プロファイルの作成先の Linux イメージサーバーを選択します。
Linux イメージサーバーのホスト名は末尾が -linux になります。
必要に応じてプロファイル名を変更します。
必要に応じてプロファイルの説明を変更します。
「Use the Jet Modules Specified Above」のチェックボックスを選択解除します。
「Run Plan (includes preflight)」をクリックします。
Linux イメージサーバーに対して Linux プロファイルが作成されたことを確認するには、N1 SPS ブラウザインタフェースの左側にある「Components」をクリックします。
/com/sun/n1osp/autogen-server-name-linux/provision/ フォルダに、provision コンポーネントがあります。ここで server-name は、変数セットに指定した Linux サーバー名です。次に例を示します。/com/sun/n1osp/autogen-SuSeLinuxSLES9_x86-linux/provision/。
LinuxImage コンポーネントの変数セットを作成するには、次の例のようなコマンドを入力します。
# cr_cli -cmd cdb.vs.add -comp NM:/com/sun/n1osp/untyped/SuSeLinuxImage \ -name "SLES9x86" -u admin -p admin -vars "osp_server=masterserver-osp;version=SLES9; \ architecture=x86;installPath=SuSeLinux:[version]_:[architecture]; \ description=SUSE SLES9;min_disk_size=10GB; \ boot_server_name=bilinux;boot_server_subnet_address=10.42.42.0; \ boot_server_subnet_ip_address=10.42.42.3; \ autoyast_file=nfs://10.10.31.4/export/v20z/sles9.xml;\ pxe_boot_file=pxelinux.0;pxe_configuration_file=pxesles9" |
JET 以外のモジュール情報を提供するには、次のエントリを含む /tmp/suse-profile ファイルを作成します。
standard-nojet Standard Linux base_config false
各行の意味は次のとおりです。
ファイルの最初の行は、ブラウザインタフェースのプラン変数セクションの「Profile Name」フィールドに対応します。
ファイルの 2 番目の行は、ブラウザインタフェースのプラン変数セクションの「Profile Description」フィールドに対応します。
ファイルの 3 行目は、ブラウザインタフェースのプラン変数セクションの「JET Module Name」フィールドに対応します。
ファイルの 4 行目は、ブラウザインタフェースのプラン変数セクションの「Use the Jet Modules Specified Above」チェックボックスに対応します。
プランを実行するには、次の例のようなコマンドを入力します。
# cr_cli -cmd pe.p.run -u admin -p admin \ -PID NM:/com/sun/n1osp/untyped/SuseLinuxImage-create-profile \ -tar H:NM:bilinux-linux -comp - -vs SLES9x86 -pto 30 -nto 10 -f /tmp/suse-profile |
-u オプションで指定したデフォルトの N1 SPS ユーザー値を書き留めます。OS インストール後に N1 SPS リモートエージェントソフトウェアがターゲットホストで起動するには、このユーザーが存在する必要があります。
プロファイルは、ターゲットホストに OS イメージをプロビジョニングするために使用されます。これらのプロファイルは、/com/sun/n1osp/autogen...provision フォルダにあります。新しい OS イメージが作成 (または添付) されるたびに、新しいプロファイルがプロビジョンフォルダに追加されます。
ターゲットホストの BIOS に正しい日時が設定されていることを確認します。BIOS に過去の日時が設定されていると、suse-build-key RPM のインストールに失敗し、対話モードのインストールに切り替わります。これは、BIOS が、ディストリビューションの使用している RPM 暗号化キーを受け付けないためです。BIOS からは、暗号化キーが将来の日時に適用されるように見えます。
ブートおよびインストールサーバー上のネットワークインタフェースが適切に構成されていることを確認します。
プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。
「OS Provisioning Common Tasks」ページの「Linux Images」セクションで「Provision OS」をクリックします。
provision コンポーネントが含まれる Linux フォルダに移動します。
たとえば、/com/sun/n1osp/autogen-bikickstart-linux/provision/suse/SLES9_x86 などのフォルダです。
コンポーネント名を選択します。
「Component Details」ページで Provision_start:Install プロシージャの横にある「Run action」をクリックします。
オペレーティングシステムのプロビジョニング先であるターゲットホストを選択します。
ターゲットホストのホスト名の末尾は -target です。
「Run Plan (includes preflight)」をクリックします。
プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。
「OS Provisioning Common Tasks」ページの「OS Provisioning Administration Tasks」セクションで「Status」をクリックします。
「Plans Details」ページの「Run」をクリックします。
「Plan Details Run」ページで、オペレーティングシステムのプロビジョニング先であるターゲットホストを選択します。
「Run Plan (includes preflight)」をクリックします。
「Details」リンクをたどり、状態を表示します。
不要になった OS イメージやプロファイルは、N1 SPS 環境から定期的に削除するとよいでしょう。
プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。
「OS Provisioning Common Tasks」ページの「SUSE Linux Images」セクションで「Manage」をクリックします。
「Components Details」ページで「Uninstall: Delete」のチェックボックスを選択します。
「Run」をクリックします。
N1 SPS 環境から SUSE Linux OS イメージが削除されます。「View link for SUSE Linux Images」セクションのイメージリストから、削除したイメージが削除されています。
ブートおよびインストールサーバーから、SUSE Linux OS イメージが削除されるわけではありません。
プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。
「OS Provisioning Common Tasks」ページの「SUSE Linux Images」セクションで「Provision OS」をクリックします。
「Components」ページで、削除するプロファイルのチェックボックスを選択します。
「Delete」をクリックします。
クロスプラットフォームインストール (SPARC システムからの x86 プラットフォームへのインストールなど) を有効にするには、アーキテクチャー固有のインストーラを SUSE Linux Image サーバーにインポートする必要があります。
プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。
「OS Provisioning Common Tasks」ページの「Linux Image Servers」セクションで「Manage」をクリックします。
「Component Details」ページで import_product_media プロシージャーの横にある「Run action」をクリックします。
インストーラをインポートする Linux Image サーバーホストを選択し、「Run Selected Installations」をクリックします。
「Plans Run」ページで、プラン変数を次のように設定します。
変数 |
説明 |
サンプル値 |
---|---|---|
JET Module Name |
JET モジュールの名前 |
spsra |
Product Version |
N1 SPS インストーラのバージョン |
5.2 |
Architecture |
RA インストーラに適用されるアーキテクチャー |
x86 |
Media Path |
RA インストーラが含まれるディレクトリへのパス |
/net/myothersys/export/ra |
「Run Plan (includes preflight)」をクリックします。
インポートされた RA インストーラからインストールするには、RA をインストールする際に使用される SUSE Linux プロファイルで、「Install RA from snapshot (y,n)」の値が n に設定されている必要があります。「SUSE Linux リモートエージェントのコンポーネント変数」を参照してください。