ヘルパーコンポーネント

最終公開日 : Oct 02, 2026
StyleBookのコンポーネントセクションの主な用途は、NITRO組み込み型または実際の構成オブジェクトを作成する別のStyleBookを介して構成オブジェクトを生成することです。ヘルパーコンポーネントは、それ自体では構成オブジェクトを構築しません。ヘルパーコンポーネントは、パラメーターオブジェクト、他のコンポーネントのプロパティ、または他のコンポーネントの出力などの他のセクションから入力を受け取り、それらを他の形式に変換します。これは、後で他のコンポーネントによって実際の構成オブジェクトを生成するために使用できます。ヘルパーコンポーネントには、オブジェクトタイプ、またはコンポーネントセクションを含まない別のStyleBookの2つのタイプがあります。
次の例は、NetScalerインスタンス上でモニター (lb-mon-comp) を使用してロードバランシングサーバーを作成するために使用されるStyleBookのスニペットを示しています。
parameters:

  -

    name: appname

    type: string

  -

    name: ips

    type: ipaddress[]

  -

    name: vip

    type: ipaddress

components:

  -

    name: help-comp

    type: cmtypes::server-ip-port-params

    repeat:

      repeat-list: $parameters.ips

      repeat-item: server-ip

    properties:

      ip: $server-ip

      port: 80

 -

    name: lb-mon-comp

    type: stlb::lb-mon

    properties:

      lb-appname: $parameters.appname

      lb-virtual-ip: $parameters.vip

      lb-virtual-port: 80

      lb-service-type: HTTP

      svc-service-type: HTTP

      svc-servers: $components.help-comp.properties
パラメーターセクションでは、アプリケーション名とロードバランシングサーバーのIPアドレスを入力できます。lb-mon-comp コンポーネントセクションでは、lb-mon StyleBookのsvc-servers パラメーターは、各項目に2つのサブパラメーターip とポートを持つオブジェクトのリストを期待します。
しかし、このStyleBookのパラメーターセクションは、$parameters.ipsを介してのみサーバーIPを受け入れます。StyleBookは、すべてのサーバーがポート80で実行されていると仮定します。lb-mon StyleBookを使用してロードバランシング構成を作成するには、$parameters.ipsをオブジェクトのリストに変換する必要があります。これは、上記の例のヘルパーコンポーネントであるhelp-compを使用して実現されます。help-compコンポーネントはserver-ip-port-params StyleBookタイプです。このStyleBookにはコンポーネントがありません。その結果、構成オブジェクトは作成されません。help-compは$parameters.ipsに対して繰り返しリストを作成し、$parameters.ipsの各項目に対してip とポート(静的な80に設定されています)で構成されるオブジェクトを構築します。したがって、help-compはIPアドレスのリストをオブジェクトのリストに変換し、これは後でlb-mon-comp でsvc-servers プロパティを割り当てるために使用できます。help-compの結果は、lb-mon-comp のsvc-servers プロパティに割り当てられます。