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-样书部分,使用 basic-lb-config 样书的命名空间和版本将其导入,引用时加前缀“stlb”。
在 components 部分,定义了两个组件。第一个组件的类型为 stlb:: basic-lb-config,其中“basic-lb-config”是您在样书中为创建 基本负载平衡配置而创建的样书的名称。为此组件定义的数据对应于 basic-lb-config 样书中声明的必需参数。但是,您可以使用样书的任何参数(包括必填参数和可选参数)。与其重新构建 lbvserver、服务组以及服务和服务组绑定,不如将完成所有这些操作的样书作为组件导入,然后使用它在新的样书中创建这些配置对象。
样书添加第二个组件“monit-comp”(使用 Nitro 资源“lbmonitor”(内置样书)的属性)来创建监视器配置对象。它还有子组件“monit-svcgrp-bind-comp”用来创建绑定配置对象,该对象将监视器绑定到第一个组件中创建的服务组。由于在“basic-lb-config”样书中创建的 servicegroup 组件是作为输出公开的,因此此样书可以使用表达式 $components.basic-lb-comp.outputs.servicegroup-comp 来访问它。此示例说明导入样书如何能够使用 outputs 部分来访问原本无法访问的被导入样书中的组件。
接下来,将样书内容复制并粘贴到文本编辑器中,然后将该文件保存为 composite-example.yaml。在 NetScaler ADM 中导入文件之前,请务必验证 YAML 内容。然后,将其导入 NetScaler ADM 并使用此样书创建一个或多个配置。
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.