Application Delivery Management

创建 StyleBook 以执行非 CRUD 操作

StyleBooks 通过计算 NetScaler 实例上必要的配置对象来管理 NetScaler 配置。每次创建或更新 ConfigPack 时,都会在实例中添加、更新或删除这些对象。此时,您将指定“所需状态”。

但是,某些 NetScaler 配置对象支持除创建、更新或删除(CRUD 操作)之外的一些操作。例如,负载平衡器对象 (lbvserver) 或 NetScaler 功能对象 (nsfeature) 可以支持“启用”或“禁用”操作。同样,NetScaler certkeys 支持“链接”和“取消链接”操作,以将证书链接或取消链接到另一个证书。NetScaler 对象上的这些操作称为非 CRUD 操作。本节介绍如何使用 StyleBooks 对支持非 CRUD 操作的配置对象执行这些操作。

注意

配置对象之间的绑定(例如,将 certkey 绑定到 lbvserver)不被视为非 CRUD 操作。这是因为 Nitro 绑定本身就是配置对象。这些对象的创建和删除方式与任何其他 NetScaler 配置对象相同。

支持非 CRUD 操作

在组件中添加了一个名为“meta-properties”的新构造,其级别与“properties”构造相同。目前此构造中唯一支持的属性名为“action”。此属性可以采用该配置对象支持的“enable”或“disable”等值。

components:
 -
  name: my-lbvserver-comp
  type: ns::lbvserver
  meta-properties
   action: enable
  properties:
    name: $parameters.name
    servicetype: HTTP
    ipv46: $parameters.ip
    port: 80
    lbmethod: $parameters.lb-alg
<!--NeedCopy-->

在上面的示例中,“my-lbvserver-comp”组件的类型为“ns::lbvserver”。“ns”是前缀,指代您在 import-stylebooks 部分中指定的命名空间 netscaler.nitro.config 和版本 10.5。“lbvserver”是此命名空间中的 NITRO 资源。作为隐式操作,lbvserver 首先由 StyleBook 创建;然后对其执行“enable”操作。

meta-properties 中指定的操作仅在创建 ConfigPack 期间对配置对象执行。对 ConfigPack 的更新不执行非 CRUD 操作。

注意

action 属性的值不能是动态评估的 StyleBook 表达式。

创建 StyleBook 以执行非 CRUD 操作