StyleBookの設定

カスタムデータソースを使う

入力データを複数の構成の作成に繰り返し使用する場合は、データソースとしてのマネージド ADC インスタンスとともに、カスタムデータソースを定義して使用できます。入力データを ADM にデータソースとして保存できます。また、StyleBookユーザーが繰り返し入力する必要なく、このデータを使用するようにStyleBookを変更することができます。

StyleBook定義でカスタムデータソースを使用する前に、以下を実行してカスタムデータソースを定義してください。

  1. データソースタイプを追加します
  2. データソースを追加します
  3. コレクションタイプを追加します
  4. コレクションを追加します

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

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

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

  1. アプリケーション > 構成 > データソースで

  2. [ データソースタイプ] を選択します。

  3. データソースタイプの [ 名前 ] と [ 説明 ] を指定します。

  4. [Create] をクリックします。

データソースタイプ

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

データソースの追加

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

  1. [ アプリケーション] > [構成] > [データソース] に移動します。

  2. [追加] をクリックします。

  3. [ データソース名]、[データソースタイプ]、および [ 説明] を指定します。

  4. [Create] をクリックします。

カスタムデータソース

この例では、実稼働環境がデータソースとして追加されます。

コレクションタイプを追加

コレクションタイプを追加して、コレクションに保存できるデータのタイプを記述します。

  1. [ アプリケーション] > [構成] > [データソース] に移動します。

  2. コレクションタイプを選択します

  3. [追加] をクリックします。

  4. コレクションタイプの名前を指定します

  5. データソースタイプを選択します

  6. 属性名とそのタイプを追加します。

  7. [Create] をクリックします。

コレクションタイプ

この例では、 App-Virtual-Servers コレクションタイプには 4 つの属性があります。そのため、保存するコレクションには、設定されたデータ型の次の属性が必要です。

コレクションを追加

選択したコレクションタイプに対応するコレクションを追加します。

  1. [ アプリケーション] > [構成] > [データソース] に移動します。

  2. コレクションタイプ」で、コレクションを追加するコレクションタイプを選択します。

  3. コレクションの名前を指定します

  4. データソースを選択します

  5. コレクションにデータを追加します。データを 1 つずつ追加することも、CSV ファイルをアップロードすることもできます。

    CSV ファイルをアップロードする場合は、列名がコレクションタイプの属性名と一致していることを確認してください。

  6. [Create] をクリックします。

コレクション

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

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ユーザーはデータソースとコレクションを選択できます。

コレクション付きのカスタムデータソース

カスタムデータソースを使う