导入自定义样书
构建完样书后,将其导入 NetScaler 控制台即可使用。NetScaler 控制台允许您以 YAML 形式导入单本样书或以 .zip、.tgz 或 .gz 格式将多个样书 YAML 文件作为捆绑包导入。NetScaler 控制台系统会在导入时验证您的样书。样书现已准备就绪,可用于创建配置。
NetScaler 控制台还有一个内置的 YAML 编辑器,您可以用它来撰写样书 YAML 内容。YAML 编辑器允许您从 NetScaler 控制台 GUI 本身验证您的 YAML 结构。您无需为这些验证检查使用单独的工具。内容根据 YAML 标准进行验证,并突出显示任何偏差。然后,您可以更正内容并尝试将样书导入 NetScaler 控制台。内置的 YAML 编辑器在编写自己的样书时有两个优点。
- 颜色编码。编辑器显示按照 YAML 指南解析的样书内容。颜色编码可帮助您轻松区分密钥和 YAML 内容中定义的值。
- YAML 验证。当您键入内容时,系统会验证内容是否存在 YAML 错误,任何偏差都会立即突出显示。这种验证允许您在在 NetScaler 控制台中导入样书之前编写符合 YAML 准则的文本。
注意:
目前,编辑器根据 YAML 指南验证内容。它不验证代码的正确性和印刷错误。
在样书描述和标题中使用 HTML 格式化标签
在样书定义中,您可以包含标题字段并为文本使用 HTML 格式化标签。您也可以将图像作为标题的一部分。创建或更新配置时,标题字段中的 HTML 内容显示在配置页面的顶部。此功能允许您为样书添加信息图表,以帮助理解样书配置。如果您在标题中使用图像,请确保在 <img>
标记中使用 base64 编码的图像格式。
要在 HTML 内容中使用图像,图像必须是内联的,如以下示例所示。您可以使用联机工具将图像转换为 base64 编码形式。
name: cs-example
namespace: com.example.stylebooks
version: "1.2"
display-name: Content Switching Configuration
description: Example of a very simple content switching config that creates and binds an lb to a cs
header: <img id="b64img" src="data:image/png;base64,…" />
<h3>Operations performed by this StyleBook:</h3>
<ul>
<li style="list-style-type: circle"> Creates a Server </li>
<li style="list-style-type: circle"> Creates a Service Group </li>
<li style="list-style-type: circle"> Creates a LBVServer </li>
<li style="list-style-type: circle"> Creates a CS Policy and Action </li>
</ul>
schema-version: "1.0"
<!--NeedCopy-->
导入样书
-
在 NetScaler 控制台中,导航 到“应用程序”>“配置”>“样书”,然后单击“导入新样书”。
-
单击以下选项之一导入样书。
-
文件 -从您的本地存储中选择所需的文件或文件捆绑。
注意:
在本示例中,导入您在
lb-vserver.yml
样书中创建的 样书以创建负载平衡虚拟服务器。 -
Bundle-NetScaler 控制台允许您以 YAML 格式导入许多样书。您可以导入多个以压缩 (.zip) 格式或压缩 (.tgz, .gz) 格式压缩的 YAML 样书文件。
导入到 NetScaler 控制台的样书在样书 GUI 上以默认图标显示。您可以使用自己的图像自定义这些默认图标。
请执行以下操作:
- 在包含您的样书 YAML 文件的文件夹下创建一个名为
resources
的文件夹。 - 将您的图标上载到
resources
文件夹。
注意:
您无法将该 文件夹重
resources
命名为任何其他名称。- 如果图标文件及其相应的样书文件具有相同的名称,则该图标会自动映射到样书。
- 如果图标文件及其相应的样书文件(例如 exchange.yaml 和 exch.png)不匹配,请在
resources
文件夹中创建一个名为 icon_mapping.json 的 JSON 文件,如下所示:
<StyleBook file name> : <icon file name> <StyleBook file1 name> : <icon file1 name> <StyleBook file2 name> : <icon file2 name> <!--NeedCopy-->
以下是示例样书捆绑包:
resources
文件夹有所需的图标。在此示例中,
sharepoint.yaml
和skype.yaml
文件分别自动映射到sharepoint.jpeg
和skype.png
。要映射
exchange.yaml
到exch.png
,请在icon_mapping.json
文件中指定以下内容:{ "exchange.yaml":"exch.png" } <!--NeedCopy-->
如果样书包中没有图标,则显示默认图标。
- 在包含您的样书 YAML 文件的文件夹下创建一个名为
-
Raw -在 YAML 编辑器中撰写样书的内容。
您可以验证样书内容以检查样书语法错误。要验证样书内容,请单击“验证内容”。
注意:
在撰写样书时,请务必了解以下概念:
- NITRO API
- YAML
有关如何编写自己的样书的详细信息,请参阅 如何创建自己的样书。
注意:
您也可以在您最喜欢的编辑器中创建样书,然后将内容复制并粘贴到 YAML 编辑器中进行验证和导入。
-
同步仓库-如果您在 GitHub 中创建和维护样书,请使用 NetScaler 控制台的此选项在仓库中发现新的或更新的样书。选择要与 NetScaler 控制台同步的存储库。
-
-
可选,选择样书的图标。
在“应用程序”>“配置”>“样书”中,导入的样书以此图标显示。
-
单击创建。
NetScaler 控制台现在会根据样书语法验证您的样书是否存在所有语法和语义错误。如果出现任何错误,您的样书不会导入到 NetScaler 控制台中。
如果没有错误,则样书将成功导入并在 样书 页面上列出。您可以通过在样书标题部分中定义的显示名称来识别样书。
注意:
如果您要导入文件包,NetScaler 控制台会解压缩压缩后的文件夹并验证所有样书。 即使一个样书文件未通过验证测试,也不会导入该包。
有关不同结构和属性的样书语法和语法的详细信息,请参阅 样书语法。
-
单击 创建配置 链接可通过此样书创建配置。
样书页面打开,您可以输入此样书中定义的所有参数的值。
-
指定参数所需值。
在下面的例子中,
-
指定 应用程序名称 和 负载平衡器 IP 地址 必填字段。
-
从列表中选择 负载平衡算法 。默认情况下,会选中 ROUNDROBIN。
-
-
在 目标实例下,选择要在其中部署配置的 NetScaler 实例的 IP 地址。
您还可以根据需要指定任意数量的目标实例,在多个 NetScaler 上部署配置。
注意:
要将最近在 NetScaler 控制台中发现的所有 NetScaler 实例添加到目标实例,请转到样书页面,然后单击页面右侧的刷新图标。
-
如果要在部署配置之前在 NetScaler (NITRO) 配置对象进行测试,请单击“干运行”。
如果配置有效,则会根据指定的值创建配置对象。
在此示例中,样书只创建一个类型的对象
lbvserver
。此负载平衡服务器是此基本示例样书中定义的唯一组件。稍后,单击 创建 以在选定的 NetScaler 实例上部署配置。
成功部署配置后,“配置”页面中将显示一个新的 配置 包。