構成ジョブでの変数の使用
設定ジョブは、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\*\*
<!--NeedCopy-->
NetScaler コンソールで変数を定義して構成ジョブを作成するには:
-
インフラストラクチャ > 設定 > 設定ジョブに移動します。
-
[ ジョブの作成] をクリックします。
-
Create Job ページで、ジョブの名前、インスタンスタイプ、設定タイプなどのカスタムジョブパラメータを選択します。
-
[Configuration Editor]でコマンドを入力して、負荷分散仮想サーバー、2つのサービスを追加し、それらのサービスをその仮想サーバーにバインドします。変数に変換する値をダブルクリックして選択し、[ 変数に変換]をクリックします。たとえば、負荷分散サーバーのIPアドレスを選択し
ipaddress
、「変数に変換」をクリックします。 -
変数の値を囲むドル記号が表示されたら、変数をクリックして、名前、表示名、タイプなどの変数の詳細をさらに指定します。変数のデフォルト値をさらに指定する場合は、「詳細」( Advanced ) オプションをクリックすることもできます。[ 保存 ] をクリックし、[ 次へ] をクリックします。
-
構成ジョブの作成または編集中に定義したすべての変数を、1 つの統合ビューで確認できます。
-
次のいずれかの操作を行って、すべての変数を 1 つの統合ビューに表示します。
- 構成ジョブを作成するときに、[ インフラストラクチャ] > [構成] > [構成ジョブ] に移動し、[ ジョブの作成] を選択します。[ Create Job ] ページでは、構成ジョブの作成時に追加したすべての変数を確認できます。
- 構成ジョブの編集中に、[ ネットワーク ] > [ 構成ジョブ] に移動し、[ジョブ名] を選択して [ 編集] をクリックします。[ ジョブの構成 ] ページでは、構成ジョブの作成時に追加されたすべての変数を確認できます。
-
次に、「 変数のプレビュー 」(Preview Variables) タブをクリックして、設定ジョブの作成または編集中に定義した 1 つの統合ビューで変数をプレビューできます。
-
新しいポップアップウィンドウが表示され、名前、表示名、タイプ、デフォルト値などの変数のすべてのパラメータが表形式で表示されます。これらのパラメータを編集および修正することもできます。パラメータを編集または変更したら、[ 完了 ] ボタンをクリックします。
-
その後、構成レーションエディタでコマンドを並べ替えたり、並べ替えたりすることができます。コマンドラインをドラッグアンドドロップすることで、コマンドをある行から別の行に移動できます。テキストボックスでコマンドライン番号を変更するだけで、コマンドラインを 1 行から任意のターゲットラインに移動または再配置することもできます。
-
構成ジョブを実行するインスタンスを選択します。
-
「 変数値の指定 」タブで、「 変数値の入力ファイルをアップロード 」オプションを選択し、「 入力キーファイルのダウンロード」をクリックします。例では、各インスタンス上のサーバー名、サーバーとサービスのIPアドレス、ポート番号、およびサービス名を指定する必要があります。ファイルを保存し、アップロードします。値が正確に定義されていない場合、システムはエラーをスローする可能性があります。
-
入力キーファイルがローカルシステムにダウンロードされ、以前に選択した各NetScalerインスタンスの変数値を指定して編集し、[ アップロード ] をクリックして入力キーファイルをNetScaler Consoleにアップロードできます。[次へ] をクリックします。入力キーファイルがローカルシステムにダウンロードされ、以前に選択した各NetScaler インスタンスの変数値を指定することで編集できます。
注:
入力キーファイルでは、変数は次の 3 つのレベルで定義されます。
- グローバルレベル
- インスタンスグループレベル
- インスタンスレベル
グローバル変数は、すべてのインスタンスに適用される変数値です。インスタンスグループレベルの変数値は、グループで定義されているすべてのインスタンスに適用されます。インスタンスレベルの変数値は、特定のインスタンスにのみ適用されます。
NetScaler Consoleでは、インスタンスレベルの値が最優先されます。個々のインスタンスの変数に値が提供されていない場合、NetScaler Consoleはグループレベルで指定された値を使用します。グループレベルで値が指定されていない場合、NetScaler Consoleはグローバルレベルで指定された変数値を使用します。3つのレベルすべてにわたって変数を入力すると、NetScaler Consoleはインスタンスレベルの値をデフォルト値として使用します。
-
「 アップロード 」をクリックして、入力キーファイルをNetScaler コンソールにアップロードします。[次へ] をクリックします。
重要
Mac から CSV ファイルをアップロードすると、CSV ファイルはコンマではなくセミコロンで保存されます。これにより、入力ファイルをアップロードしてジョブを実行したときに、構成が失敗します。Mac を使用している場合は、テキストエディタを使用して必要な変更を行い、ファイルをアップロードします。
-
すべてのインスタンスに共通の変数値を指定し、「 アップロード 」をクリックして入力キーファイルをNetScaler Consoleにアップロードすることもできます。
変数値を含むキー入力ファイルは、設定ジョブで (同じファイル名で) 保持されます。設定ジョブの作成または編集中に、以前に使用およびアップロードした入力ファイルを表示および編集できます。
構成ジョブの作成中に実行構成ジョブを表示するには、[ ネットワーク ] > [ 構成ジョブ] に移動し、[ ジョブの作成] をクリックします。[ ジョブの作成 ] ページ。[ 変数値の指定 ] タブで、[ すべてのインスタンスに共通の変数値 ] オプションを選択し、アップロードされたファイルを表示します。入力ファイルを編集するには、入力ファイルをダウンロードし、ファイルを編集してアップロードします(同じファイル名を維持します)。
構成ジョブの編集中にすでに実行されている構成ジョブを表示するには、[ ネットワーク ] > [ 構成ジョブ] に移動し、[ジョブ名] を選択して [ 編集] をクリックします。[ ジョブの設定 ] ページの [ 変数値の指定 ] タブで、[ すべてのインスタンスに共通変数値 ] オプションを選択して、アップロードされたファイルを表示します。入力ファイルを編集するには、入力ファイルをダウンロードし、ファイルを編集してアップロードします(同じファイル名を維持します)。
-
[ Job Preview ] タブでは、各インスタンスまたはインスタンスグループで実行するコマンドを評価および検証できます。
-
[ Execute ] タブでは、ジョブを今すぐ実行するか、後で実行するようにスケジュールするかを選択できます。また、コマンドが失敗した場合にNetScaler Consoleが実行する必要があるアクションや、ジョブの成功または失敗に関する通知を他の詳細とともに電子メールで送信するかどうかも選択できます。
ジョブを設定して実行したら、[ インフラストラクチャ] > [構成] > [構成ジョブ] に移動して、設定したジョブを選択すると 、ジョブの詳細が表示されます。 [ 詳細 ] をクリックし、[ 変数の詳細 ] をクリックすると、ジョブに追加された変数のリストが表示されます。
注
手順5で変数に指定した値は 、ジョブを保存して終了するとき、またはジョブを後で実行するようにスケジュールしたときに、NetScaler Consoleによって保持されます。