StyleBookの設定

コンポーネント

StyleBookのcomponents構造は、StyleBookで最も重要なセクションです。このセクションでは、作成する必要がある構成オブジェクトを定義します。この構造を使用すると、同じ種類の構成オブジェクトを1つまたは複数作成できます。

components構造では、Parametersセクションの入力値を使用して、StyleBookで生成される構成に適応させることができます。このセクションはオプションですが、ほとんどのStyleBookでComponentsセクションが記述されています。

次の表は、コンポーネントの主要な属性を示しています。

属性 説明
name コンポーネントの名前。英数字名を指定できます。名前はアルファベットで始まる必要があり、追加のアルファベット、数字、ハイフン (-)、またはアンダースコア (_) を含めることができます。
description StyleBookにおけるこのコンポーネントの役割の説明。
type このコンポーネントで指定するプロパティはタイプによって決まります。コンポーネントには2種類のタイプがあります。 ビルトインタイプ:このタイプはシステムによって提供され、定義する必要はありません。たとえば、NITROエンティティタイプlbvserverまたはservicegroupです。コンポーネントに組み込みのtype属性がある場合、NetScaler 上にそのタイプの構成オブジェクトが作成されます。たとえば、コンポーネントが組み込みの種類lbvserverを参照する場合、このコンポーネントは構成のターゲットであるNetScaler ADCインスタンス上に負荷分散仮想サーバーを作成します。複合タイプ:このタイプは、作成してNetScaler Consoleにインポートした既存のStyleBook を指します。コンポーネントにコンポジットタイプ属性がある場合、参照先のStyleBookで指定されているすべての構成オブジェクトが、構成のターゲットであるNetScaler ADC インスタンスに作成されます。これにより、それぞれが最終構成の一部を作成する複数のStyleBookを組み合わせて使用できるようになります。複合StyleBookについて詳しくは、「複合StyleBookの作成」を参照してください。
meta-properties メタプロパティは、NetScalerオブジェクトで実行されるアクションを定義します。静的値または動的値を有効なメタプロパティアクションとして取ることができます。メタプロパティに式を指定すると、NetScalerオブジェクトに有効なメタプロパティアクションが動的に適用されます。この属性は、NetScalerオブジェクトに対してCRUD以外の操作を実行したい場合にStyleBookで使用できます。詳しくは、「 CRUD以外の操作を実行するためのStyleBookの作成」を参照してください。
properties コンポーネントのtype属性で使用できるサブ属性。コンポーネントに対して有効なプロパティは、そのタイプによって決まります。組み込み型の場合、これらは対応する NITRO オブジェクトのプロパティまたは属性です。コンポーネントのタイプが別のStyleBookである場合(つまり複合タイプの場合)、プロパティはそのStyleBookで定義されているパラメーターに対応します。


components:

   -

     name: my-lbvserver-comp

     type: ns::lbvserver

     properties:

        name: $parameters.name

        servicetype: HTTP

        ipv46: $parameters.ip

        port: 80

        lbmethod: $parameters.lb-alg
<!--NeedCopy-->

この例では、my-lbvserver-compというコンポーネントを定義しています。このコンポーネントの型は ns:: lbvserver (組み込み型) で、ここで「ns」は import-stylebooks netscaler.nitro.config セクションで指定した名前空間とバージョン 10.5 を指すプレフィックスで、lbvserverはこの名前空間の NITROリソースです。

このセクションのプロパティには、lbvserverリソースの 4 つの必須属性と 1 つのオプション属性 (lbmethod) が含まれており、これらの属性の値を指定できます。この例では、 servicetype およびポートに静的値を指定し、名前、ipv46、 およびlbmethodプロパティは入力パラメータから値を取得します。パラメータセクションで定義されているパラメータ名は、$parameters.ipのように$parameters.\<name>表記を使用して参照します。

利用可能なすべてのNetScaler ADC NITROリソースとその属性/プロパティの詳細については、 NetScaler NITRO REST APIドキュメントを参照してください

NITROリソースの種類の属性名(コンポーネントのプロパティ)には、小文字を使用する必要があります。そうしないと、StyleBookのインポートに失敗します。

コンポーネント

この記事の概要