OS Provisioning by using CLI
プラグインをインポートする - plg.p.add
# cr_cli -cmd plg.p.add \ -path /tmp/com.sun.n1osp_2.0.jar注意: -u admin -p admin は省略しています。
1. OSP Control Server を作成する - NM:/com/sun/n1osp/untyped/Service-create
pe.p.run はプランを実行するコマンドです。プランID(PID)で指定しているのは NM:/com/sun/n1osp/untyped/Service-create というプラグインが持っているプランです。今回は変数セットは与えていません。ターゲットは masterserver です。masterserver 上に OSP Control Server が作成されます。
# cr_cli -cmd pe.p.run -u admin -p admin \ -PID NM:/com/sun/n1osp/untyped/Service-create \ -tar H:NM:masterserver \ -comp + -vs + -pto 300 -nto 300
ここで仮想ホスト masterserver-osp が作成されます。以後 OSP Control Server に対しての処理をする場合は masterserver ではなく、masterserver-osp に対して行います。
2. Subnet を作成する - NM:/com/sun/n1osp/untyped/Subnet
プランID(PID)で指定しているのは NM:/com/sun/n1osp/untyped/Subnet です。今回は変数セットを作成します。mysubnet という変数セット名で作成します。変数には次のような値を入れます。
# cr_cli -cmd cdb.vs.add \ -comp NM:/com/sun/n1osp/untyped/Subnet \ -name mysubnet \ -u admin -p admin \ -vars "installPath=xxx.xxx.19.0;\ mask=255.255.255.0;\ gateway=xxx.xxx.19.254;\ host_interface=dmfe0;\ host_address=xxx.xxx.19.1"
mysubnet を与えてプランを実行します。サブネットを作るのは OSP Control Server 上なのでここではターゲットを masterserver-osp にします。
# cr_cli -cmd pe.p.run \ -PID NM:/com/sun/n1osp/untyped/Subnet-create \ -tar H:NM:masterserver-osp \ -comp + -vs mysubnet -pto 30 -nto 10
3. JET Solaris Image Server を作成する - NM:/com/sun/n1osp/untyped/Jet-create
JET サーバーを作成します。ここでのターゲットは masterserver です。
# cr_cli -cmd pe.p.run \ -PID NM:/com/sun/n1osp/untyped/Jet-create \ -tar H:NM:masterserver \ -comp + -vs + -pto 300 -nto 300
これで仮想ホスト masterserver-jet が作成されます。以後 JET に関する命令はこの masterserver-jet に投げてあげます。
4. Solaris のインストールイメージをインポートする - NM:/com/sun/n1osp/untyped/SolarisImage-import
JET サーバーに Solaris のインストールイメージをインポートしましょう。Solaris 10 の入ったメディアを用意してそのディレクトリを変数セットで指定します。
# cr_cli -cmd cdb.vs.add \
-comp NM:/com/sun/n1osp/untyped/SolarisImage \
-name solaris10 \
-vars "version=10;\
architecture=sparc; \
image_path=/export/install/solaris10; \
image_subnet_addr=xxx.xxx.19.1;\
image_subnet_mask=255.255.255.0;\
media_src=/cdrom"
この例では solaris10 という変数セットを作っています。メディアは /cdrom にあってそれを /export/install/solaris10 にコピーしてインストールイメージを作成しています。
この変数セットを与えてインポートを実行します。ターゲットは masterserver ではなく仮想ホストの masterserver-jet です。時間がかかる場合があるのでタイムアウトにならないように pto の値は大きめにします。
# cat solaris-profile | cr_cli -cmd pe.p.run \ -PID NM:/com/sun/n1osp/untyped/SolarisImage-import / -tar H:NM:masterserver-jet -comp + -vs solaris10 \ -pto 300 -nto 300
5. Solaris のインストールプロファイルを作成する - NM:/com/sun/n1osp/untyped/SolarisImage-create-profile
ここもインストールのイメージをインポートした時と同じですがいくつか余分に変数を与える必要があります。
この画面の管理コンソールを見てみましょう。変数セットの下にもいくつか入力フィールドがありますね。これらの値は cr_cli を実行した時に与えることができます。次の例では solaris-profile というファイルにあらかじめ値を入れておいて cr_cli の実行時に与えています。次の値はそれぞれ Profile Name、Profile Description、JET Module Name(s) の各フィールドに対応しています。

# cat solaris-profile standard Standard Solaris base_config spsra #
# cat solaris-profile | cr_cli -cmd pe.p.run \ -PID NM:/com/sun/n1osp/untyped/SolarisImage-create-profile \ -tar H:NM:masterserver-jet \ -comp + -vs solaris10 \ -pto 300 -nto 300
6. ターゲットを作成する- NM:/com/sun/n1osp/targets/SunALOM-create
さ〜ここまできたらあと少しです。ターゲットを作ってみましょう。ALOM のサーバー、例えば v210 が手元にありますが、それで作ってみます。NM:/com/sun/n1osp/targets/SunALOM-create を使います。
変数セットを作ります。MAC アドレスや IP アドレス、それに ALOM の IP アドレスとユーザーIDを指定します。
# cr_cli -cmd cdb.vs.add \ -comp NM:/com/sun/n1osp/targets/SunALOM \ -name myserver1 \ -vars "installPath=myserver1;\ description=My Server1;\ ethernet_mac_address=xx:xx:xx:xx:xx:xx;\ ethernet_ip_address=xx.xx.xx.95;\ ethernet_netmask=255.255.255.0;\ architecture=sun4u;\ kernel_arch=sun4u;\ disk_size=20GB;\ alom_ip_address=xx.xx.xx.103;\ alom_access_userid=admin;"
ここでも次のようなファイルを作り変数をさらに追加してあげます。ここでは ALOM のパスワードを指定します。
# cat target-v210 true alom_no_password false dummy #
# cat target-v210 | cr_cli -cmd pe.p.run \ -PID NM:/com/sun/n1osp/targets/SunALOM-create \ -tar H:NM:masterserver-osp \ -comp + -vs myserver1 -pto 30 -nto 10
7. インストールを実行しよう - NM:/com/sun/n1osp/autogen-masterserver-jet/provision/...
すべて準備が整いましたのでインストールを試してみましょう。まずは変数セットを作ります。 /com/sun/n1osp/autogen-masterserver-jet/provision/ 以下にコンポーネントが 出来ているはずです。どの OS のプロファイルを作ったかで名前が変わってきます。 今回の例ではバージョン名、プラットフォーム名、プロファイル名から Solaris10__sparc.standard という名前になっていますね。ここでの変数は主に JumpStart に関してのものです。
実際のプランは SolarisProfile-provision-start-Solaris10__sparc.standard です。これを先ほど作ったターゲットの仮想ホスト myserver1-target に対して実行してあげます。
# cr_cli -cmd cdb.vs.add \ -comp NM:/com/sun/n1osp/autogen-masterserver-jet/provision/Solaris10__sparc.standard \ -name myserver1_val \ -vars "profile_swap_base_config=2000;\ profile_cluster_base_config=SUNWCall"
# cr_cli -cmd pe.p.run \ -PID NM:/com/sun/n1osp/autogen-masterserver-jet/provision/\ SolarisProfile-provision-start-Solaris10__sparc.standard \ -tar H:NM:myserver1-target \ -comp + -vs myserver1_val \ -pto 60 -nto 60
これでインストールが開始されるはずです。



