创建和编辑配置包
在 NetScaler® Application Delivery Management (ADM) 中,您可以从 StyleBook 创建配置包。配置包与其创建的 StyleBook 绑定。配置包的更新通过其绑定的 StyleBook 进行。
创建配置包
执行以下操作以从 StyleBook 创建配置包:
-
导航到 应用 > 样式簿 > 配置。
-
单击 Add。
-
在 Choose StyleBooks 中,选择要从中创建配置包所需的 StyleBook。此页面将 StyleBook 分为默认 StyleBook 和自定义 StyleBook。选择相应的选项卡以查找所需的 StyleBook。
-
指定所需的详细信息,例如应用程序名称、IP 地址、端口或协议类型。GUI 字段因 StyleBook 而异。
-
在 Target Instances 中,选择要运行配置的实例或实例组。注意您可以通过指定所需数量的目标实例,将配置部署到多个 NetScaler 上。
-
单击 Dry Run。Objects 页面显示从 NetScaler 实例创建、修改或删除的对象。
-
点击 创建配置包显示在 StyleBook > Configurations 页面中。
如果要编辑现有配置包,请选择配置包,然后点击 编辑。
更改配置包的 StyleBook
有时,您需要更新 StyleBook 以添加功能或修复问题。如果您已经使用旧的 StyleBook 创建了配置包,您可能希望更新它们以使用新的更新的 StyleBook。要使用新的 StyleBook,请更改配置包的现有 StyleBook。
考虑一个示例 StyleBook example-lb,它在 ADC 实例上部署基本的负载均衡器配置。然后,您从此 StyleBook 创建一个配置包 CP1。
当您想要使用基本的负载均衡器配置来配置监视器时,您需要一个新的 StyleBook。因此,创建 example-lb-mon StyleBook,它包含配置监视器以及基本负载均衡器配置的功能。
创建 StyleBook 后,更新现有配置包 CP1 以添加一些监视器。为此,请执行以下操作:
-
导航到 应用程序 > 样式手册 > 配置。
-
选择您要更改其 StyleBook 的配置包。在此示例中,从列表中选择 CP1。
-
点击 更改 StyleBook。
-
从列表中选择所需的 StyleBook。然后,点击 保存选择。
-
点击 更改。在此示例中,从列表中选择 example-lb-mon。当您更改配置包的 StyleBook 时,新 StyleBook 中的参数结构可能与现有 StyleBook 不同。如果参数结构与之前的 StyleBook 相似,则参数值将自动保留在其各自的字段中。否则,只有在两个 StyleBook 之间具有相同结构的参数才会被传输。例如,相同的参数名称、类型、参数父级等。
如果在新 StyleBook 中添加了新的必需参数,更改 StyleBook 后,您必须手动指定这些参数的值。在此示例中,example-lb StyleBook 的配置页面上显示的参数如下:
新 example-lb-mon StyleBook 的配置页面上显示的参数如下:
在这种情况下,StyleBook 会保留基本负载均衡器配置的旧值,因为新的 StyleBook 没有更改现有参数。并且,它只添加了新参数。对于监视器参数,请手动指定所需的值。 -
在“目标实例”中,检查所选实例并在必要时更新列表。
-
单击“试运行”。“对象”页面显示从 NetScaler 实例创建、修改或删除的对象。
-
单击“确定”。在“StyleBook > 配置”页面中,“StyleBook 名称”列显示所选配置包的新 StyleBook 名称。在这种情况下,它显示 example-lb-mon。
更改具有多个配置包的 StyleBook
当您更改具有多个配置包的现有 StyleBook 时,执行以下操作:
-
将新的 StyleBook 导入到 ADM。通常,新的 StyleBook 具有与现有 StyleBook 相同的名称和命名空间,但版本更高。但是,如果名称、命名空间或版本不同,则可以跳过此步骤。
-
更改与现有 StyleBook 关联的配置包的 StyleBook。仅当选定的配置包与同一 StyleBook 关联时,才能选择“更改 StyleBook”。
对于选定的配置包,当满足以下条件时,ADM 会成功更改 StyleBook:-
现有 StyleBook 的所有配置参数都必须存在于选定的 StyleBook 中。
-
选定的 StyleBook 中的新参数是可选的。
要查看选定配置包的进度,请在“配置”页面中选择“正在进行/失败的配置”。
-
-
一旦所有配置包都绑定到新的 StyleBook,就从 ADM 中删除旧的 StyleBook。
导出或导入配置包
您可以像 StyleBook 一样导出或导入配置包。借助此功能,您可以轻松地将 StyleBook 配置共享到另一个 ADM 服务器。导出配置包时,
tgz 或 zip 捆绑包会下载到您的本地计算机。此捆绑包包含一个 JSON 文件,其中包含配置包中定义的所有参数。
导出配置
执行以下操作以导出配置包:
-
导航到 应用程序 > StyleBooks > 配置。
-
选择要导出的配置包。
-
在 选择操作 中,选择 导出配置。

-
在 导出配置 窗格中,指定以下内容:
-
配置部署到的目标实例信息:选择此选项可在导出包中包含目标实例的信息。
-
与配置关联的 StyleBook:选择此选项可在导出包中包含 StyleBook。
-
用于保护导出配置数据的密码:指定一个密码来加密导出包。此密码可保护配置包的敏感数据。
-
压缩文件类型:选择 ZIP 或 TGZ 文件类型。

-
-
单击 导出。将导出包保存到本地计算机。
导入配置
您可以将配置包从本地计算机导入到不同的 ADM 服务器。要导入配置包,请执行以下操作:
-
导航到 应用程序 > StyleBooks > 配置。
-
选择 导入配置。

-
从您的计算机中选择导入文件包。
-
使用您在导出期间指定的密码。
-
可选,在“高级选项”中,选择 如果所有配置对象已存在于 ADC 上,则仅允许创建新配置。此选项不会更改已在 ADC 实例上创建的对象。假设您在两台 ADM 服务器中添加了相同的 ADC 实例。并且,您希望将配置包从一台 ADM 服务器迁移到另一台服务器。使用此选项导入配置包,而无需更改其在 ADC 实例上的配置对象。重要提示要使用此选项,请确保指定的配置包包含目标实例信息。请参阅 导出配置。仅当所有对象都存在于目标实例上时,此选项才迁移配置。
-
单击 导入。
导入配置包时,ADM 会验证以下内容:
-
关联的 StyleBook:如果关联的 StyleBook 不在 ADM 中,它会随配置包一起导入 StyleBook。
-
目标实例:检查目标实例并在指定的目标实例上部署配置。如果 ADM 中不存在提及的 ADC 实例,则导入配置包时不会包含目标实例。
-
源 ADM:如果您在同一 ADM 服务器上导入配置包,则所选捆绑包会更新现有配置包。
从配置包中分离目标实例
要从配置包中分离目标实例,请执行以下操作:
-
导航到 应用程序 > 配置 > 配置包。
-
选择包含要删除的目标实例的配置包。
-
在 选择操作 中,选择 分离目标。
-
在 Detach Targets 窗格中,选择要从配置包中删除的目标实例。

-
单击 OK。
将显示一条消息,确认已创建目标实例已移除的重复配置包。
构建您的 StyleBook
example-lb StyleBook 的完整内容如下所示,供您参考:
name: example-lb
namespace: examples.stylebooks
version: "1.0"
display-name: Basic Load Balancer App
description: This is an example StyleBook that creates a load balancer application
schema-version: "1.0"
import-stylebooks:
-
namespace: com.citrix.adc.stylebooks
prefix: stlb
version: "1.0"
parameters-default-sources:
- stlb::lb
components:
-
name: lb-comp
type: stlb::lb
description: Uses the default lb StyleBook to build the typical lb configuration objects
properties-default-sources:
- $parameters
example-lb-mon StyleBook 的完整内容如下所示,供您参考:
name: example-lb-mon
namespace: examples.stylebooks
version: "1.0"
description: This is an example StyleBook that creates a load balancer application with monitors
display-name: Basic Load Balancer App with Monitors
schema-version: "1.0"
import-stylebooks:
-
namespace: netscaler.nitro.config
prefix: ns
version: "10.5"
-
namespace: com.citrix.adc.stylebooks
prefix: stlb
version: "1.0"
-
namespace: com.citrix.adc.commontypes
prefix: cmtypes
version: "1.0"
parameters-default-sources:
- stlb::lb
parameters:
-
name: monitors
label: "List of Monitors"
description: "List of Monitors to monitor Application Servers"
type: cmtypes::monitor[]
substitutions:
mon-name(appname, monname): $appname + "-mon-" + $monname
components:
-
name: lb-comp
type: stlb::lb
description: Uses the default lb StyleBook to build the typical lb configuration objects
properties-default-sources:
- $parameters
-
name: monitors-comp
type: cmtypes::monitor
condition: $parameters.monitors
repeat: $parameters.monitors
repeat-item: mon
repeat-index: ndx
description: Builds a list of NetScaler monitor objects and binds them to the servicegroup of this LB config
properties-default-sources:
- $mon
properties:
monitorname: $substitutions.mon-name($parameters.lb-appname, $mon.monitorname)
components:
-
name: monitor-svcg-binding-comp
condition: $parameters.svc-servers
type: ns::servicegroup_lbmonitor_binding
properties:
servicegroupname: $components.lb-comp.outputs.servicegroup.properties.servicegroupname
monitor_name: $parent.properties.monitorname