Application Delivery Management

StyleBookを作成して非 CRUD 操作を実行する

StyleBookは、NetScaler ADC インスタンス上で必要な構成オブジェクトを計算することによって、NetScaler ADC構成を管理します。これらのオブジェクトは、ConfigPack を作成または更新するたびにインスタンスから追加、更新、または削除されます。つまり、「望ましい状態」を指定するときです。

ただし、一部のCitrix ADC構成オブジェクトは、作成、更新、削除(CRUD操作)以外のいくつかの操作をサポートしています。たとえば、ロードバランサーオブジェクト(lbvserver)またはCitrix ADC機能オブジェクト(nsfeature)は、「有効化」または「無効化」操作をサポートできます。同様に、Citrix ADC 証明書キーは、証明書を別の証明書にリンクまたはリンク解除するための「リンク」および「リンク解除」操作をサポートしています。NetScaler ADC オブジェクトに対するこれらの操作は、非CRUD操作と呼ばれます。このセクションでは、StyleBookを使用して、それらをサポートする設定オブジェクトに対して非CRUD操作を実行する方法について説明します。

注:

設定オブジェクト間のバインディング (たとえば、証明書キーを lbvserver にバインドする) は、CRUD 以外の操作とは見なされません。これは、Nitro バインディングはそれ自体が設定オブジェクトとして表現されるためです。これらのオブジェクトは、他のNetScaler ADC 構成オブジェクトと同様に作成および削除されます。

CRUD 以外のオペレーションのサポート

「メタプロパティ」と呼ばれる新しい構成が、「プロパティ」構成と同じレベルでコンポーネントに追加されます。この構成でサポートされる唯一の属性は、現在「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
<!--NeedCopy-->

上記の例では、「my-lbvserver-comp」コンポーネントのタイプは「ns:: lbvserver」です。「ns」は、インポートStyleBookのセクションで指定した名前空間netscaler.nitro.configとバージョン10.5を指すプレフィックスです。「lbvserver」は、この名前空間のNITRO リソースです。暗黙的なアクションとして、LBVサーバーは最初にStyleBookによって作成され、次に「enable」操作が実行されます。

メタプロパティで指定されたアクションは、ConfigPack の作成時にのみ構成オブジェクトに対して実行されます。ConfigPack を更新しても、CRUD 以外のアクションは実行されません。

注:

action 属性の値は、動的に評価される StyleBook 式であってはなりません。

StyleBookを作成して非 CRUD 操作を実行する