ページの先頭行へ戻る
Systemwalker Software Configuration Manager V14g リファレンスガイド
Systemwalker

1.5.5 ソフトウェア設定情報の詳細説明

ソフトウェア設定情報の詳細について説明します。

1.5.5.1 ソフトウェア設定情報

ソフトウェア設定情報とは、ソフトウェアに設定できるパラメーターを定義するXMLドキュメントです。このソフトウェア設定情報には、パラメーター一覧(キー名とデフォルト値)と設定方式を記述します。

パラメーター一覧には、ソフトウェアに設定できる複数のパラメーターを記述します。1つのパラメーターは、キー名とデフォルト値で表します。ただし、デフォルト値は省略することが可能です。また、デフォルト値には、変数を記述することもできます。

パラメーターの設定方式は、パラメーターの値を、どのような方式でソフトウェアに設定するかを指定します。この方式は、Windowsで使用できるバッチファイルのソフトウェア設定スクリプトか、Linuxで使用できるシェルスクリプトのソフトウェア設定スクリプトかを選択できます。このソフトウェア設定スクリプトを登録するには、ZIPファイルのスクリプトパッケージにまとめて、テンプレート管理コマンドで登録します。

項目(タグ)の説明については、「1.5.5.2 ソフトウェア設定情報の詳細」を参照してください。

ソフトウェア設定スクリプトについては、「1.5.5.3 ソフトウェア設定スクリプトの詳細」を参照してください。

スクリプトパッケージについては、「1.5.5.4 パッケージファイルの詳細」を参照してください。

デフォルト値に指定できる変数は、「1.5.5.5 値に指定できる変数の詳細」を参照してください。

ソフトウェア設定情報には、以下の3通りがあります。

  1. 本製品で提供するもの

  2. Webで公開するもの

  3. ユーザーが作成するもの

a.については、「付録B 予約済ソフトウェア設定ID」を参照してください。

b.については、『ソフトウェア説明書』の「Systemwalker技術情報ホームページについて」を参照してください。

c.については、以下のディレクトリに格納されている雛形を参考にして、テンプレート管理者が作成してください。

【Windows】
	格納先:<本製品のインストール先>\templates\softwaresetups\
【Linux】
	格納先:/opt/FJSVcfmg/templates/softwaresetups/

ソフトウェア設定情報の関連付け

ソフトウェア設定情報は、ソフトウェアに設定できるパラメーターを定義していますが、対象となるソフトウェアを指定していません。それには、ソフトウェア設定情報とソフトウェア情報を関連付ける必要があります。

ソフトウェア設定情報1つに対して、複数のソフトウェア情報を関連付けることができます。そのため、ソフトウェアに複数のエディションが存在しても、ソフトウェア設定情報を1つに集約できます。ただし、Windows版とLinux版は混在できないため、このような場合は別々のソフトウェア設定情報を作成する必要があります。

ソフトウェア設定情報とソフトウェア情報を関連付けると、ソフトウェアにパラメーターを設定するソフトウェア設定スクリプトがサーバ配備時に動作します。ただし、ソフトウェア設定情報にあるすべてのデフォルト値が省略されていると動作しません。このようなソフトウェア設定スクリプトが動作するのは、パラメーター情報で値を設定した場合になります。

1.5.5.2 ソフトウェア設定情報の詳細

ソフトウェア設定情報 (XMLファイル) は以下の形式となっています。

<?xml version="1.0" encoding="UTF-8"?>
<softwareSetup version="1.0">
	<id>[ソフトウェア設定情報ID]</id>
	<lcid>[ロケールID]</lcid>
	<name>[ソフトウェア設定情報の名前]</name>
	<description>[説明]</description>
	<method>[パラメーター設定の方式]</method>
	<parameters>
		<parameter>
			<key>[パラメーターのキー]</key>
			<type>[パラメーターの値の型]</type>
			<value>[設定必須パラメーターのデフォルト値]</value>
			<label>[パラメーターのラベル]</label>
			<description>[パラメーターの説明]</description>
		</parameter>
		…
	</parameters>
</softwareSetup>

以下にそれぞれの項目 (タグ) の説明および設定内容について示します。

この情報を参考にして、必要に応じてソフトウェア設定情報を修正してください。

タグ名の[ ]は、省略可能なタグであることを示しています。

タグ名

設定範囲

説明

必須

設定内容

id

string
ASCII

0~32Bytes

ソフトウェア設定IDを指定します。

新規追加する場合は空文字列を指定します。
更新する場合は更新するIDを指定します。

lcid

string
ASCII

選択

ソフトウェア設定情報のロケールを指定します。

以下から選択します。
・「ja」:日本語版
・「en」:英語版

name

string

UTF-8

64文字以内

ソフトウェア設定の名前を指定します。

description

string
UTF-8

256文字以内

ソフトウェア設定の説明を指定します。

method

string
ASCII

選択

パラメーター設定方式を指定します。

以下から選択します。
・「cmd」:スタートアップスクリプトのstartup.cmdを呼び出します。
・「sh」:スタートアップスクリプトのstartup.shを呼び出します。

parameters

ソフトウェアに設定できる複数のパラメーターを指定します。

×

parameter

1個以上

ソフトウェアに設定できるパラメーターをキーと値で指定します。

×

key

string
ASCII

1~256Bytes

パラメーターのキーを指定します。

使用可能文字は英数字と「.」です。
ただし、先頭は英字だけです。

type

string
ASCII

選択

値の型を指定します。

以下から選択します。
・「boolean」:真偽値
true、false
・「number」:数値
-2,147,483,648 ~
2,147,483,647
・「string」:文字列
空文字列の指定も可能です。

[ value ]

string
UTF-8

4096文字以内

配備時にソフトウェアが動作するために必要となるパラメーターの値を指定します。

配備時に設定しないパラメーターは、valueを省略します。
指定可能な値はtypeの制約を受けます。
文字列「__EMPTY__」(「__」は「 _ 」と「 _ 」が2つ続いています) を指定することはできません。

[ label ]

string
UTF-8

64文字以内

パラメーターを画面上に表示する場合のラベルを指定します。

[ description ]

string
UTF-8

256文字以内

パラメーターの説明を指定します。

必須欄の記号は、以下を意味しています。

○:タグを指定した場合は、必ず値を指定してください。

△:値は省略可能です。

×:値の設定は不要です。タグだけの指定です。

1.5.5.3 ソフトウェア設定スクリプトの詳細

ソフトウェア設定スクリプトとは、ソフトウェアにパラメーターを設定するためのスクリプトです。このスクリプトは、仮想サーバに転送されて、仮想サーバ上で実行されます。

ソフトウェア設定スクリプトは、複数のファイルで構成されています。また、Windowsで使用できるバッチファイルと、Linuxで使用できるシェルスクリプトが決められています。このファイルの説明を、以下に示します。

スタートアップスクリプト (バッチファイル) の形式【Windows】

バッチファイルのスタートアップスクリプト (startup.cmd) は、以下の形式で作成します。

初めに環境変数設定スクリプト (setenv.cmd) を呼び出します。最後に処理が成功した場合は0を復帰して、失敗した場合は0以外を復帰します。標準出力と標準エラー出力は、エージェントのログに出力されます。

@echo off
setlocal
@rem 環境変数を設定する
call .\setenv.cmd
@rem ソフトウェアのセットアップ処理
<各ソフトウェアの処理>
@rem 結果(正常)を復帰する
if ERRORLEVEL 1 goto ERROR_END
endlocal
exit /B 0
@rem 結果(異常)を復帰する
: ERROR_END
echo ERROR0001 setup failed 1>&2
endlocal
exit /B 1

スタートアップスクリプト(シェルスクリプト) の形式【Linux】

シェルスクリプトのスタートアップスクリプト (startup.sh) は、以下の形式で作成します。

初めに環境変数設定スクリプト (setenv.sh) を呼び出します。最後に処理が成功した場合は0を復帰して、失敗した場合は0以外を復帰します。標準出力と標準エラー出力は、エージェントのログに出力されます。

#!/bin/sh
# 環境変数を設定する
source ./setenv.sh
# ソフトウェアのセットアップ処理
<各ソフトウェアの処理>
# 結果を復帰する
if [ $? = "0" ]; then
 # 正常を復帰する
 exit 0
else
 # 異常を復帰する
 echo "ERROR0001 setup failed" 1>&2
 exit 1
fi

環境変数設定スクリプト (バッチファイル) の形式【Windows】

バッチファイルの環境変数設定スクリプト (setenv.cmd) は、以下の形式で本製品が生成します。

環境変数の名前は、ソフトウェア設定情報(パラメーター情報)にあるパラメーターのキーが設定されます。ただし、パラメーターのキーは英数字と「 . 」の組合せですが、環境変数名は「.」を「 _ 」に変換した名前になります。環境変数の値は、ソフトウェア設定情報やパラメーター情報にあるパラメーターの値が設定されます。

set パラメーターのキー=パラメーターの値
<パラメーターの数だけ環境変数を定義します>

環境変数設定スクリプト(シェルスクリプト)の形式【Linux】

シェルスクリプトの環境変数設定スクリプト (setenv.sh) は、以下の形式で本製品が生成します。

環境変数の名前は、ソフトウェア設定情報(パラメーター情報)にあるパラメーターのキーが設定されます。ただし、パラメーターのキーは英数字と「 . 」の組合せですが、環境変数名は「 . 」を「 _ 」に変換した名前になります。環境変数の値は、ソフトウェア設定情報やパラメーター情報にあるパラメーターの値が設定されます。

set パラメーターのキー=パラメーターの値
<パラメーターの数だけ環境変数を定義します>

注意

  • ソフトウェア設定スクリプト

    • 実行順序

      ソフトウェア設定スクリプトが動作する順番は、イメージ情報に記述されたソフトウェア情報の順番になります。

  • スタートアップスクリプト

    • 実行権限

      Windows版では、Administratorで実行されます。

      Linux版では、スーパーユーザーで実行されます。

    • カレントディレクトリ

      スタートアップスクリプトのファイルが格納されているパスが、カレントディレクトリになります。

    • 実行権【Linux】

      スタートアップスクリプトのシェルスクリプトは、実行時に自動的に実行権が設定されます。

    • 改行

      Windows版では、CR+LFです。

      Linux版では、LFです。

    • バイトオーダーマーク(BOM)【Linux】

      シェルスクリプトでは、UTF-8のバイトオーダーマーク (BOM) を含めないでください。

  • 環境変数設定スクリプト

    • 環境変数の定義

      パラメーターの値を設定しない場合は、環境変数を定義しません。このため、スタートアップスクリプトでは、パラメーターの値を設定するかしないかを、環境変数の定義があるかなしかで判断します。

      環境変数が定義されているか判定する方法を、以下に示します。

      バッチファイルの場合:【Windows】

      if defined <環境変数> (<定義されている処理>) else <定義されていない処理>
      例:
      set PARAM=%hostname%	
      if defined parameter_Key1 (set PARAM=-v %parameter_Key1% %PARAM%)

      シェルスクリプトの場合:【Linux】

      ${<環境変数>+${<環境変数>}}
      例:
      PARAM=${hostname}
      PARAM="${parameter_Key1+"-v ${parameter_Key1}"} ${PARAM}"
    • 値の空文字列【Windows】

      Windowsの環境変数は空文字列を設定できません。このため、バッチファイルの空文字列は、「__EMPTY__」(「

      __ 」は「 _ 」と「 _ 」が2つ続いています) を設定します。このため、パラメーターの値として、「__EMPTY__」を使用はできないことに注意してください。

  • 添付ファイル

    • 実行権【Linux】

      添付ファイルにシェルスクリプトを含める場合は、実行権をシェルスクリプトのスタートアップスクリプトの中で設定してください。

1.5.5.4 パッケージファイルの詳細

パッケージファイルとは、1つ以上のファイルをZIP形式で圧縮したファイルです。このファイルは、ソフトウェア設定スクリプトをソフトウェア設定情報やパラメーター情報に関連付けるために使用します。また、このファイルは、仮想サーバに転送されてから、仮想サーバ上で解凍されます。

ソフトウェア設定情報に登録するパッケージファイルを、スクリプトパッケージと呼びます。パラメーター情報に登録するパッケージファイルを、パラメーターパッケージと呼びます。それぞれのパッケージファイルの中に含まれるソフトウェア設定スクリプトは異なります。この説明を以下に示します。

ソフトウェア設定スクリプトの実行イメージ

スクリプトパッケージやパラメーターパッケージは仮想サーバに転送されて、仮想サーバ上で解凍されます。また、本製品が生成する環境変数設定スクリプトも仮想サーバ上に転送されます。これらのソフトウェア設定スクリプトは、仮想サーバ上のワークディレクトリに、以下の構造で格納されます。そして、スタートアップスクリプトが格納されているディレクトリをカレントディレクトリとして、スタートアップスクリプトが実行されます。

<ワークディレクトリ>
+ <ソフトウェアID>
  + scriptpkg
  |  + スタートアップスクリプト(startup.cmd、startup.sh)
  |  + 環境変数設定スクリプト(setenv.cmd、setenv.sh)
  |  + スクリプトパッケージの添付ファイル
  + parampkg
      + パラメーターパッケージの添付ファイル

各ディレクトリの説明を以下に示します。

注意

  • パッケージファイル

    • スタートアップスクリプトの格納位置

      スタートアップスクリプトは、ディレクトリの配下ではなく、ZIPファイルのルートに格納してください。

      スタートアップスクリプトをディレクトリの配下に格納すると、このスクリプトが実行できません。

    • 日本語名のファイルは禁止

      日本語名のファイルを含めることはできません。

    • ファイルの削除

      仮想サーバに転送したファイルは、スクリプトを実行した後に削除されます。

1.5.5.5 値に指定できる変数の詳細

仮想サーバを配備してから決定される値 (コンピュータ名、ホスト名、IPアドレス) をパラメーターの値に指定する場合は、パラメーターの値に変数を記述します。

変数は、以下の形式で記述します。

#{変数名}
例:
<value>#{server.os.computername}</value>

変数の一覧

使用できる変数と説明を、以下に示します。

変数名

説明

server.os.computername

コンピュータ名/ホスト名

server.nic.ipaddress

IPアドレス
NIC連番に指定した一番若い番号のNICのIPアドレス

server.nic[NIC連番].ipaddress

IPアドレス
NIC連番は、テンプレート情報のNIC連番に指定している数値です。
例えば、以下のように指定します。
[1]:NIC連番の1に指定したNICのIPアドレス
[2]:NIC連番の2に指定したNICのIPアドレス

server.nic[NIC_BUSINESS].ipaddress

IPアドレス
業務セグメントに接続しているNICのIPアドレス。複数存在する場合は一番若い番号のNICのIPアドレス。存在しない場合は管理セグメントに接続しているNICのIPアドレス。

server.nic[NIC_MANAGEMENT].ipaddress

IPアドレス
管理セグメントに接続しているNICのIPアドレス。複数存在する場合は一番若い番号のNICのIPアドレス。存在しない場合は業務セグメントに接続しているNICのIPアドレス。

server.nic[NIC_CONTROL].ipaddress

IPアドレス
制御NICのIPアドレス

注意

  • 変数

    • エスケープシーケンス

      パラメーターの値として文字「#」を指定したい場合は、「\#」のように「\」でエスケープします。文字「\」を指定したい場合は、「\\」と記述してください。