非CRUD操作を実行するStyleBookの作成

最終公開日 : Sep 25, 2026
StyleBookは、NetScalerインスタンス上で必要な構成オブジェクトを計算することで、NetScalerの構成を管理します。これらのオブジェクトは、ConfigPackを作成または更新するたびにインスタンスに追加、更新、または削除されます。これが「目的の状態」を指定するタイミングです。
ただし、一部のNetScaler構成オブジェクトは、作成、更新、または削除(CRUD操作)以外のいくつかの操作をサポートしています。たとえば、ロードバランサーオブジェクト(lbvserver)またはNetScaler機能オブジェクト(nsfeature)は、「有効化」または「無効化」操作をサポートできます。同様に、NetScalerの証明書キーは、証明書を別の証明書にリンクまたはリンク解除するための「リンク」および「リンク解除」操作をサポートします。NetScalerオブジェクトに対するこれらの操作は、非CRUD操作と呼ばれます。このセクションでは、StyleBookを使用して、それらをサポートする構成オブジェクトに対して非CRUD操作を実行する方法について説明します。
注
構成オブジェクト間のバインディング(たとえば、証明書キーをlbvserverにバインドする)は、非CRUD操作とは見なされません。これは、Nitroバインディングがそれ自体で構成オブジェクトとして表現されるためです。これらのオブジェクトは、他のNetScaler構成オブジェクトと同様に作成および削除されます。

非CRUD操作のサポート

「meta-properties」と呼ばれる新しいコンストラクトが、「properties」コンストラクトと同じレベルのコンポーネントに追加されました。このコンストラクトで現在サポートされている唯一の属性は「action」と呼ばれます。この属性は、その構成オブジェクトでサポートされている「enable」や「disable」などの値を取ることができます。
components:
 -
  name: my-lbvserver-comp
  type: ns::lbvserver
  meta-properties
   action: enable
  properties:
    name: $parameters.name
    servicetype: HTTP
    ipv46: $parameters.ip
    port: 80
    lbmethod: $parameters.lb-alg
上記の例では、「my-lbvserver-comp」コンポーネントは「ns::lbvserver」タイプです。「ns」は、import-stylebooksセクションで指定した名前空間netscaler.nitro.configおよびバージョン10.5を参照するプレフィックスです。「lbvserver」はこの名前空間のNITROリソースです。暗黙的なアクションとして、lbvserverはまずStyleBookによって作成され、その後「enable」操作が実行されます。
meta-propertiesで指定されたアクションは、ConfigPackの作成時にのみ構成オブジェクトに対して実行されます。ConfigPackの更新では、非CRUDアクションは実行されません。
注
action属性の値は、動的に評価されるStyleBook式にすることはできません。