構成のターゲット NetScaler 自体を構成のデータ ソース入力として使用することもできます。 このシナリオでは、ターゲット NetScaler 上の既存の構成を参照して、その NetScaler 上に新しい構成を作成する必要があります。
ターゲット インスタンスをデータ ソースとして使用する場合、StyleBook ユーザーが NetScaler インスタンスを選択する必要がないため、 datum
組み込み型パラメータを使用する必要はありません。 対象となる NetScaler インスタンスからデータを取得する式を、StyleBook の コンポーネント
セクションに直接記述できます。
次の式を使用して、ターゲットの NetScaler インスタンスから次の情報を取得します。
コレクション:
$current-データソースとしてのターゲット.コレクション.<collection-name>
<!--NeedCopy-->
例:
$current-target-as-datasource.collections.lbvserver
<!--NeedCopy-->
属性:
$current-データソースとしてのターゲット、コレクション、属性。<attribute>
<!--NeedCopy-->
以下は、ターゲットの NetScaler インスタンスをデータ ソースとして使用する方法を示す StyleBook の例です。
---
name: lb-add-service-with-target-adc
namespace: com.citrix.adc.stylebooks
version: "1.1"
display-name: "HTTP/SSL LoadBalancing StyleBook with Service Binding"
description: "このスタイルブックは、一般的な負荷分散アプリケーション構成を定義します。"
スキーマバージョン: "1.0"
インポートスタイルブック:
-
名前空間: netscaler.nitro.config
プレフィックス: ns
バージョン: "10.5"
コンポーネント:
-
名前: servicegroup-comp
タイプ: ns::servicegroup
プロパティ:
サービスグループ名: "lb-demo-svcgrp"
サービスタイプ: "HTTP"
コンポーネント:
-
名前: lbvserver-svg-binding
タイプ: ns::lbvserver_servicegroup_binding
繰り返し: $current-target-as-datasource.collections.lbvserver
繰り返し項目: lbvsrvr
繰り返し条件: $lbvsrvr.attributes.name == "lb-demo-lb"
プロパティ:
名前: $lbvsrvr.attributes.name
サービスグループ名: $parent.properties.servicegroupname
<!--NeedCopy-->
この例では、構成パックは、ターゲットの NetScaler インスタンス内の負荷分散仮想サーバーをチェックします。 また、指定された負荷分散仮想サーバーの IP アドレスが一致する場合は、名前とサービス グループ名を取得します。