Application Delivery Management

カスタムデータソースの利用

マネージドNetScalerインスタンスをデータソースとして利用できることに加え、入力データが複数の構成を作成するために繰り返し使用される場合、カスタムデータソースを定義して利用できます。入力データをNetScaler Consoleにデータソースとして保存できます。また、StyleBookユーザーが繰り返し入力を提供する必要なく、このデータを消費するようにStyleBookを変更できます。

StyleBook定義でカスタムデータソースを使用する前に、以下の手順でカスタムデータソースを定義します。

  1. データソースタイプの追加
  2. データソースタイプの下にコレクションスキーマを追加
  3. データソースの追加
  4. コレクションデータの追加

データソースを追加した後、このデータソースをStyleBook定義で使用できます。詳細については、StyleBook定義でのカスタムデータソースの利用を参照してください。

データソースタイプの追加

データを取得するソースを区別するために、データソースタイプを指定します。

  1. Applications > Configuration > Data Sources に移動します。
  2. Data Source Type を選択し、Add をクリックします。
  3. データソースタイプのNameDescription を指定します。
  4. Proceed をクリックしてData Source Type を保存します。Close をクリックすると、変更を保存せずにワークフローを終了します。

データソースタイプ

この例では、データソースタイプは「Environment」に設定されています。このタイプは、アプリケーション環境をデータソースとして定義するために使用できます。

データソースタイプの下にコレクションスキーマを追加

Data Source Type を追加すると、Data Source TypeCollection Schemas を追加する画面が表示されます。

  1. Add をクリックします。
  2. コレクションスキーマのCollection Name を指定します。
  3. Description を入力します。
  4. Attribute Details の下に、必要に応じて属性(名前とそのタイプ)を追加します。
  5. Create をクリックします。

コレクションタイプ

この例では、App-virtual-servers コレクションスキーマには4つの属性があります。したがって、保存するコレクションには、設定されたデータ型のこれらの属性が必要です。

データソースの追加

特定のデータソースタイプに対してデータソースを定義します。

  1. Applications > Configuration > Data Sources に移動します。
  2. Data Sources タブを選択し、Add をクリックします。
  3. Name を指定します。
  4. Data Source Type を選択し、Description を入力します。
  5. Proceed をクリックしてData Source を保存します。Close をクリックすると、変更を保存せずにワークフローを終了します。

カスタムデータソース

この例では、Production environment がデータソースとして追加されています。

コレクションデータの追加

Data Source を追加すると、Data Source のデータを入力する画面が表示されます。Collection Schemas のリストが表示されます。

  1. コレクションデータを追加するCollection Schema を選択します。
  2. Manage Collection Data をクリックします。
  3. コレクションにデータを追加します。データを1つずつ追加するか、CSVファイルをアップロードできます。CSVファイルをアップロードする際は、列名がコレクションスキーマの属性名と一致していることを確認してください。
  4. OK をクリックします。

コレクション

コレクションなしでのカスタムデータソースの利用

以下のparametersセクションでは、コレクションなしでStyleBook定義にカスタムデータソースを定義する方法について説明します。

parameters:
    -  name: selected-environment
      label: Select a custom datasource environment
      type: datum
      required: true
      data-source:
        type: "Environment"
<!--NeedCopy-->

構成パックGUIには適用可能なデータソースが表示され、StyleBookユーザーはそれらのいずれかを選択して構成パックを作成できます。

コレクションなしのカスタムデータソース

この例では、Productionデータソースを使用してデータを取得します。

EnvironmentデータソースタイプでApp-virtual-serversコレクションタイプにアクセスするには、次の式を使用します。

$parameters.selected-environment.collections.App-virtual-servers
<!--NeedCopy-->

例の抜粋:

components:
  -
    name: lbvserver-comp
    type: ns::lbvserver
    repeat: $parameters.selected-environment.collections.App-virtual-servers
    repeat-item: app
    properties:
      name: $app.attributes.Name + "-lb"
      ipv46: ip($app.attributes.IPv46 )
      port: $app.attributes.Port
      servicetype: $app.attributes.Protocol
    components:

      -
        name: servicegroup-comp
        type: ns::servicegroup
        properties:
          servicegroupname: $parent.properties.name + "-svcgrp"
          servicetype: $parent.properties.servicetype

        components:
          -
            name: lbvserver-svg-binding
            type: ns::lbvserver_servicegroup_binding
            properties:
              name: $parent.parent.properties.name
              servicegroupname: $parent.properties.servicegroupname
<!--NeedCopy-->

コレクションありでのカスタムデータソースの利用

以下のparametersセクションでは、StyleBook定義にカスタムデータソースを定義する方法について説明します。これにより、StyleBookユーザーはコレクションの特定の項目を選択できます。

parameters:
  -  name: selected-app-vserver
    label: Select a collection from the datasource
    type: datum
    required: true
    data-source:
      type: Environment
      collection: App-virtual-servers
<!--NeedCopy-->

この例では、datumパラメーターを使用してカスタムデータソースを定義します。Productionデータソースを使用して、App-virtual-serversコレクションスキーマからデータを取得します。

EnvironmentデータソースタイプでApp-virtual-serversコレクションからプロトコルにアクセスするには、次の式を使用します。

$parameters.selected-app-vserver.attributes.Protocol
<!--NeedCopy-->

例の抜粋:

components:
  -  name: lbvserver-comp
    type: ns::lbvserver
    properties:
      name: $parameters.selected-app-vserver.attributes.Name
      ipv46: $parameters.selected-app-vserver.attributes.IPv46
      port: $parameters.selected-app-vserver.attributes.Port
      servicetype: $parameters.selected-app-vserver.attributes.Protocol
<!--NeedCopy-->

parametersセクションでコレクションタイプを定義すると、StyleBookユーザーはデータソースとコレクションを選択できます。

コレクションから複数の項目を選択する

以下のparametersセクションでは、StyleBookユーザーがコレクションの複数の項目を選択できるようにします。

parameters:
  -  name: selected-app-vservers
    label: Select app-vservers from the collection
    type: datum[]
    required: true
    data-source:
      type: Environment
      collection: App-virtual-servers
 <!--NeedCopy-->

この例では、datumパラメーターを使用してカスタムデータソース配列を定義します。ユーザーは、単一のデータソースまたは複数のデータソースから「App-virtual-servers」コレクションの1つ以上の項目を選択できます。

以下のコードスニペットは、選択された項目とその属性にアクセスする方法を示しています。

components:
  -
   name: lbvserver-comp
   type: ns::lbvserver
   repeat:
   repeat-list: $parameters.selected-app-vservers
   repeat-item: vserverObj
    properties:
      name: $vserverObj.attributes.Name
      ipv46: $vserverObj.attributes.IPv46
      port: $vserverObj.attributes.Port
      servicetype: $vserverObj.attributes.Protocol
<!--NeedCopy-->

コレクションデータのフィルタリング

以下のparametersセクションでは、StyleBook定義でカスタムデータソースコレクションにフィルターを指定する方法について説明します。これにより、StyleBookユーザーはフィルターされたコレクションから特定の項目を選択できます。

parameters:
  -  name: selected-app-vserver
    label: Select a collection from the datasource
    type: datum
    required: true
    data-source:
      type: Environment
      collection: App-virtual-servers
      collection-filters:
        Protocol: SSL
<!--NeedCopy-->

この例では、datumパラメーターを使用してカスタムデータソースを定義します。Environmentタイプのデータソースを使用して、App-virtual-serversコレクションスキーマからフィルターされたデータを取得します。

StyleBookユーザーが仮想サーバーを選択した後、選択された項目の任意の属性は、前のセクションで説明したのと同じ方法でアクセスできます。

カスタムデータソースの利用