样书配置

使用自定义数据源

除了 作为数据源的托管 NetScaler 实例外,如果输入数据重复用于创建多个配置,您还可以定义和使用定制数据源。您可以在 NetScaler 控制台中将输入数据保存为数据源。而且,您可以修改样书以使用这些数据,而无需样书用户重复提供输入。

在样书定义中使用自定义数据源之前,请执行以下操作来定义自定义数据源:

  1. 添加数据源类型
  2. 添加数据源
  3. 添加收藏类型
  4. 添加收藏夹

添加数据源后,可以在样书定义中使用此数据源。有关更多信息,请参见在 样书定义中使用自定义数据源

添加数据源类型

指定数据源类型以区分检索数据的来源。

  1. 在“应用程序”>“配置”>“数据源”中。

  2. 选择 数据源类型

  3. 指定数据源类型的 名称描述

  4. 单击创建

数据源类型

在此示例中,数据源类型设置为 环境。此类型可用于将应用程序环境定义为数据源。

添加数据源

为特定数据源类型定义数据源。

  1. 转到 应用程序 > 配置 > 数据源

  2. 单击添加

  3. 指定 数据源名称数据源类型描述

  4. 单击创建

自定义数据源

在此示例中,将生产环境添加为数据源。

添加收藏类型

添加集合类型以描述可以存储在集合中的数据类型。

  1. 转到 应用程序 > 配置 > 数据源

  2. 选择 集合类型

  3. 单击添加

  4. 指定集合类型的 名称

  5. 选择 数据源类型

  6. 添加属性名称及其类型。

  7. 单击创建

收藏类型

在此示例中, App-Virtual-Server s 集合类型有四个属性。因此,您要存储的集合必须具有所设置数据类型的这些属性。

添加收藏夹

根据所选集合类型添加相应的集合。

  1. 转到 应用程序 > 配置 > 数据源

  2. 集合类型中,选择要向其添加集合的集合类型。

  3. 指定集合的 名称

  4. 选择 数据源

  5. 向集合中添加数据。您可以逐个添加数据,也可以上载 CSV 文件。

    如果您要上载 CSV 文件,请确保列名与集合类型的属性名称相匹配。

  6. 单击创建

集合

使用无需收集的自定义数据源

以下 parameters 部分介绍如何在没有集合的情况下在样书定义中定义自定义数据源。

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

配置包 GUI 显示适用的数据源,样书用户可以选择其中任何一个来创建配置包。

无需收集的自定义数据源

在此示例中,它使用 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 部分介绍如何在样书定义中定义自定义数据源。它允许样书用户选择集合中的特定项目。

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 部分中定义集合类型时,样书用户可以选择数据源和集合。

使用自定义数据源