第 5 章 编配
director 使用 Heat 编配模板(HOT)作为其 Overcloud 部署计划的模板格式。HOT 格式的模板主要以 YAML 格式表示。模板的目的是定义和创建堆栈,这是 Heat 创建和配置每个资源的资源集合。资源是 OpenStack 中的对象,可以包含计算资源、网络配置、安全组、扩展规则和自定义资源。
本章提供了一些了解 HOT 语法的基本知识,以便您可以创建自己的模板文件。
5.1. 学习 Heat 模板基础知识 复制链接链接已复制到粘贴板!
5.1.1. 了解 Heat 模板 复制链接链接已复制到粘贴板!
The structure of a Heat template has three main sections:
The structure of a Heat template has three main sections:
- 参数
-
这些设置传递到 Heat,提供自定义堆栈以及未传递值的参数的任何默认值。它们在模板的
parameters
部分中定义。 - Resources
-
这些是作为堆栈一部分创建和配置的具体对象。OpenStack 包含一组跨越所有组件的核心资源。它们在模板的
resources
部分中定义。 - 输出
-
这些是在堆栈创建后从 Heat 传递的值。您可以通过 Heat API 或客户端工具访问这些值。它们在模板的
output
部分中定义。
以下是基本 Heat 模板的示例:
此模板使用资源类型类型: OS::Nova::Server
创建具有特定类别、镜像和密钥的名为 my_instance
的实例。堆栈返回 instance_name
的值,即 My Cirros Instance
。
Heat 模板还需要 heat_template_version
参数,该参数定义要使用的语法版本以及可用的功能。如需更多信息,请参阅 官方 Heat 文档。
5.1.2. 了解环境文件 复制链接链接已复制到粘贴板!
环境文件是特殊的模板,为您的 Heat 模板提供自定义。这包括三个关键部分:
- 参数
-
以下是您应用到模板参数的常见设置。它们在环境文件的
parameters
部分中定义。 - 参数默认值
-
这些参数修改模板中参数的默认值。它们在环境文件的
parameter_defaults
部分中定义。 - Resource Registry
-
本节定义自定义资源名称,链接到其他 Heat 模板。这基本上提供了一种创建核心资源集合中不存在的自定义资源的方法。它们在环境文件的
resource_registry
部分中定义。
以下是基本环境文件的示例:
这会创建一个名为 OS::Nova::Server::MyServer
的新资源类型。myserver.yaml
文件是一个 Heat 模板文件,它为此资源类型提供实施,可覆盖任何内置内置文件。