Application Delivery Management

创建样书以执行非 CRUD 操作

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

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

注意

配置对象之间的绑定(例如,将证书密钥绑定到 lbvserver)不被视为非 CRUD 操作。这是因为 Nitro 绑定本身就被表示为配置对象。创建和删除这些对象与任何其他 NetScaler 配置对象一样。

支持非 CRUD 操作

组件中添加了一个名为“元属性”的新结构,其级别与“属性”构造相同。此结构当前支持的唯一属性称为“action”此属性可以采用该配置对象支持的“启用”或“禁用”等值。

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 首先由样书创建;然后对其执行“启用”操作。

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

**注

意**操作属性的值不能是动态评估的样本表达式。

创建样书以执行非 CRUD 操作