组件

Last published : Oct 06, 2026
StyleBook 中的 Components 构造被认为是 StyleBook 中最重要的部分。在此部分中,您定义要创建的配置对象。使用此构造,您可以构建一个或多个相同类型的配置对象。
components 构造可以使用参数部分中提供的输入来调整 StyleBook 生成的配置。这是一个可选部分,尽管大多数 StyleBook 都有 components 部分。
下表描述了组件的主要属性。
属性 描述
名称 组件的名称。您可以指定一个字母数字名称。名称必须以字母开头,并且可以包含其他字母、数字、连字符 (-) 或下划线 (_)。
描述 此组件在 StyleBook 中的作用描述。
类型 类型决定了此组件提供哪些属性。组件有两种类型:内置类型:此类型由系统提供,您无需定义它,例如 NITRO 实体类型“lbvserver”或“servicegroup”。当组件具有内置类型属性时,它会在 NetScaler 上创建该类型的配置对象。例如,如果组件引用内置类型“lbvserver”,则此组件会在作为配置目标的 NetScaler 实例上创建负载平衡虚拟服务器。复合类型:此类型引用您已创建并导入到 NetScaler Console 中的现有 StyleBook。当组件具有复合类型属性时,它会在作为配置目标的 NetScaler 实例上创建引用 StyleBook 中指定的所有配置对象。这使您能够组合多个 StyleBook,其中每个 StyleBook 创建最终配置的一部分。有关复合 StyleBook 的更多信息,请参阅 创建复合 StyleBook。
属性 可用于组件类型属性的子属性。组件的有效属性由其类型决定。对于内置类型,这些是相应 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
在此示例中,您定义了一个名为 my-lbvserver-comp 的组件。此组件的类型为 ns::lbvserver(一种内置类型),其中“ns”是引用您在 import-stylebooks 部分中指定的命名空间 netscaler.nitro.config 和版本 10.5 的前缀,而“lbvserver”是此命名空间中的一个 NITRO 资源。
本节中的属性包括“lbvserver”资源的四个强制属性和一个可选属性 (lbmethod),并允许您为这些属性指定值。在此示例中,您为 servicetype 和 port 指定了静态值,而 name、ipv46 和 lbmethod 属性的值则来自输入参数。您可以使用 $parameters.\<name\> 符号引用 parameters 部分中定义的参数名称,例如 $parameters.ip。
注意
您必须对 NITRO 资源类型(其组件属性)的属性名称使用小写。否则,StyleBook 的导入将失败。