This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
创建复合样书
样书一个重要的强大功能是它们可以用作其他样书的构建块。样书可以导入到另一个样书中,它可以被称为第二个样书的组件使用的 类型 ,类似于 NITRO 内置样书。
例如,您可以使用您在上一节中构建的 basic-lb-config 样书来构建另一个名为 composite-example 的样书。要使用“basic-lb-config”样书,必须在新样书的 import-样书部分将其导入。
构建您的样书
新样书类似如下:
name: composite-example
namespace: com.example.stylebooks
version: "0.1"
display-name: Load Balancing Virtual Server (HTTP/RoundRobin)
description: This StyleBook defines a RoundRobin load balancing configuration with a monitor.
schema-version: "1.0"
import-stylebooks:
-
namespace: netscaler.nitro.config
version: "10.5"
prefix: ns
-
namespace: com.example.stylebooks
version: "0.1"
prefix: stlb
parameters:
-
name: name
type: string
label: Application Name
description: Give a name to the application configuration.
required: true
-
name: ip
type: ipaddress
label: Application Virtual IP (VIP)
description: The Application VIP that clients access
required: true
-
name: svc-servers
type: ipaddress[]
label: Application Server IPs
description: The IP addresses of all the servers of this application
required: true
-
name: response-code
type: string[]
label: List of Response Codes
description: List of Response Codes - Provide a list of response codes in integer.
components:
-
name: basic-lb-comp
type: stlb::basic-lb-config
description: This component's type is another StyleBook that builds the NetScaler lbvserver, servicegroups and services configuration objects.
properties:
name: $parameters.name
ip: $parameters.ip
svc-servers: $parameters.svc-servers
-
name: monit-comp
type: ns::lbmonitor
description: This component is a basic Nitro type (a Builtin StyleBook) that builds the NetScaler monitor configuration object.
properties:
monitorname: $parameters.name + "-mon"
type: HTTP
respcode: $parameters.response-code
httprequest: "'GET /'"
lrtm: ENABLED
secure: "YES"
components:
-
name: monit-svcgrp-bind-comp
type: ns::servicegroup_lbmonitor_binding
properties:
servicegroupname: $components.basic-lb-comp.outputs.servicegroup-comp.properties.servicegroupname
monitor_name: $parent.properties.monitorname
<!--NeedCopy-->
在 import-stylebook 部分,您可以使用作为前缀 stlb
引用的命名空间和版本导入 basic-lb-config 样书。
在 components 部分,定义了两个组件。第一个组件的类型为 stlb:: basic-lb-config,其中“basic-lb-config”是您在样书中为创建 基本负载平衡配置而创建的样书的名称。为此组件定义的数据对应于 basic-lb-config 样书中声明的必需参数。但是,您可以使用样书的任何参数(必需参数和可选参数。)不是重新构建 lbvserver
、服务组以及服务和服务组绑定,而是导入作为组件执行所有这些操作的样书,然后使用它在新的样书中创建这些配置对象。
样书添加了第二个组件 monit-comp
,该组件使用 NITRO 资源 lbmonitor
(内置样书)的属性来创建监视器配置对象。它还有一个子组件 monit-svcgrp-bind-comp
来创建绑定配置对象,该对象将监视器绑定到在第一个组件中创建的 servicegroup
。由于在“basic-lb-config”样书中创建的 servicegroup
组件是作为输出公开的,因此此样书可以使用表达式 $components.basents.basic-lb-comp.outputs.servicegroup-comp来访问它。此示例说明导入样书如何能够使用 outputs 部分来访问原本无法访问的被导入样书中的组件。
接下来,将样书内容复制并粘贴到文本编辑器中,然后将该文件保存为 composite-example.yaml。在 NetScaler 控制台中导入文件之前,请务必验证 YAML 内容。然后,将其导入到 NetScaler 控制台,并使用此样书创建一个或多个配置。
Citrix 建议您使用样书中的内置 YAML 验证程序来验证和导入 YAML 内容。
共享
共享
在本文中
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.