設定ジョブでの変数の使用
設定ジョブとは、1つまたは複数の管理対象インスタンスで実行できる設定コマンドのセットです。複数のインスタンスで同じ設定を実行する場合、設定で使用されるパラメーターに異なる値を使用したい場合があります。これらのパラメーターに異なる値を割り当てたり、複数のインスタンスでジョブを実行したりできるように、変数を定義できます。
たとえば、ロードバランシング仮想サーバーを追加し、2つのサービスを追加し、それらのサービスを仮想サーバーにバインドする基本的なロードバランシング設定を考えてみましょう。ここで、2つのインスタンスで同じ設定を使用したいが、仮想サーバーとサービスの名前およびIPアドレスには異なる値を使用したい場合があります。設定ジョブ機能を使用すると、変数を使用して仮想サーバーとサービスの名前およびIPアドレスを定義することで、これを実現できます。
この例では、次のコマンドと変数が使用されます。
add lb vserver <servername> HTTP <ipaddress> <portnumber>
add service <servicename1> <ipaddress1> HTTP 80
add service <servicename2> <ipaddress2> HTTP 80
bind lb vserver <servername> <servicename1>
bind lb vserver <servername> <servicename2>
NetScaler Consoleで変数を定義して設定ジョブを作成する:
-
Infrastructure > Configuration Jobs に移動します。
-
Create Job をクリックします。
-
Create Job ページで、ジョブ名、インスタンスタイプ、設定タイプなどのカスタムジョブパラメーターを選択します。
-
設定エディターで、ロードバランシング仮想サーバー、2つのサービスを追加し、それらのサービスを仮想サーバーにバインドするコマンドを入力します。変数に変換する値をダブルクリックして選択し、Convert to Variable をクリックします。たとえば、ロードバランシングサーバーのIPアドレス
*ipaddress*を選択し、Convert to Variable をクリックします。 -
変数の値がドル記号で囲まれていることを確認したら、変数をクリックして、名前、表示名、タイプなどの変数の詳細をさらに指定します。変数のデフォルト値をさらに指定する場合は、Advanced オプションをクリックすることもできます。Save をクリックし、次に Next をクリックします。
残りのコマンドを入力し、すべての変数を定義します。
-
設定ジョブの作成中または編集中に定義したすべての変数を、統合された単一ビューで確認できます。
-
統合された単一ビューですべての変数を表示するには、次のいずれかを実行します。
-
設定ジョブの作成中に、Infrastructure > Configuration Jobs に移動し、Create Job を選択します。Create Job ページで、設定ジョブの作成中に追加したすべての変数を確認できます。
-
設定ジョブの編集中に、Network > Configuration Jobs に移動し、ジョブ名を選択して Edit をクリックします。Configure Job ページで、設定ジョブの作成中に追加されたすべての変数を確認できます。
-
-
次に、Preview Variables タブをクリックして、設定ジョブの作成中または編集中に定義した変数を統合された単一ビューでプレビューできます。
-
新しいポップアップウィンドウが表示され、名前、表示名、タイプ、デフォルト値などの変数のすべてのパラメーターが表形式で表示されます。これらのパラメーターを編集および変更することもできます。いずれかのパラメーターを編集または変更した後、Done ボタンをクリックします。

-
次に、設定エディターでコマンドを適切に再配置および並べ替えることができます。コマンドラインをドラッグアンドドロップすることで、コマンドをある行から別の行に移動できます。また、テキストボックスのコマンドライン番号を変更するだけで、コマンドラインをある行から任意のターゲット行に移動または再配置することもできます。
-
設定ジョブを実行するインスタンスを選択します。
-
Specify Variable Values タブで、Upload input file for variable values オプションを選択し、Download Input Key File をクリックします。この例では、各インスタンスのサーバー名、サーバーとサービスのIPアドレス、ポート番号、およびサービス名を指定する必要があります。ファイルを保存してアップロードします。値が正確に定義されていない場合、システムはエラーをスローする可能性があります。
-
入力キーファイルはローカルシステムにダウンロードされ、以前に選択した各NetScalerインスタンスの変数値を指定して編集し、Upload をクリックして入力キーファイルをNetScaler Consoleにアップロードできます。Next をクリックします。入力キーファイルはローカルシステムにダウンロードされ、以前に選択した各NetScalerインスタンスの変数値を指定して編集できます。
注記 入力キーファイルでは、変数は次の3つのレベルで定義されます。
- グローバルレベル
- インスタンスグループレベル
- インスタンスレベル グローバル変数は、すべてのインスタンスに適用される変数値です。インスタンスグループレベルの変数値は、グループで定義されているすべてのインスタンスに適用されます。インスタンスレベルの変数値は、特定のインスタンスにのみ適用されます。 NetScaler Consoleは、インスタンスレベルの値を最優先します。個々のインスタンスの変数に値が指定されていない場合、NetScaler Consoleはグループレベルで指定された値を使用します。グループレベルで値が指定されていない場合、NetScaler Consoleはグローバルレベルで指定された変数値を使用します。3つのすべてのレベルで変数に入力を提供した場合、NetScaler Consoleはインスタンスレベルの値をデフォルト値として使用します。
-
Upload をクリックして、入力キーファイルをNetScaler Consoleにアップロードします。Next をクリックします。
重要
MacからCSVファイルをアップロードすると、MacはCSVファイルをコンマではなくセミコロンで保存します。これにより、入力ファイルをアップロードしてジョブを実行する際に設定が失敗します。Macを使用している場合は、テキストエディターを使用して必要な変更を加えてからファイルをアップロードしてください。
-
すべてのインスタンスで共通の変数値を指定し、Upload をクリックして入力キーファイルをNetScaler Consoleにアップロードすることもできます。
変数値を含むキー入力ファイルは、設定ジョブに(同じファイル名で)永続化されます。設定ジョブの作成中または編集中に以前に使用およびアップロードしたこれらの入力ファイルを表示および編集できます。
設定ジョブの作成中に実行された設定ジョブを表示するには、Network > Configuration Jobs に移動し、Create Job をクリックします。Create Job ページで、Specify Variable Values タブの Common Variable Values for all Instances オプションを選択して、アップロードされたファイルを表示します。入力ファイルを編集するには、入力ファイルをダウンロードし、編集してアップロードします(同じファイル名を維持します)。
設定ジョブの編集中にすでに実行された設定ジョブを表示するには、Network > Configuration Jobs に移動し、ジョブ名を選択して Edit をクリックします。Configure Job ページで、Specify Variable Values タブの Common Variable Values for all Instances オプションを選択して、アップロードされたファイルを表示します。入力ファイルを編集するには、入力ファイルをダウンロードし、編集してアップロードします(同じファイル名を維持します)。
-
Job Preview タブで、各インスタンスまたはインスタンスグループで実行されるコマンドを評価および検証できます。
-
Execute タブで、ジョブを今すぐ実行するか、後で実行するようにスケジュールするかを選択できます。また、コマンドが失敗した場合にNetScaler Consoleが実行する必要があるアクション、およびジョブの成功または失敗に関する電子メール通知を他の詳細とともに送信するかどうかを選択することもできます。

ジョブを設定して実行した後、Infrastructure > Configuration Jobs に移動し、設定したジョブを選択することで、ジョブの詳細を確認できます。Details をクリックし、次に Variable Details をクリックして、ジョブに追加された変数のリストを表示します。
注記
手順5 で変数に指定した値は、ジョブを保存して終了したとき、または後で実行するようにジョブをスケジュールしたときに、NetScaler Consoleによって保持されます。