build.properties 相当于木偶?
build.properties equivalent in puppet?
当您在 ANT 中为 Java 构建某些内容时,您可以包含一个属性文件,在构建过程中可以从中读取不同的值。
是否可以用 Puppet 做类似的事情?例如,当 puppet 代理目录在代理上运行时,如果我想在两个数据库中将数据库密码和用户名设置为相同的内容?
正如@MattSchuchard 评论的那样,Hiera 是 Puppet 用于存储和检索静态数据以供目录构建期间使用的机制。它比 Ant 的 build.properties
更深入、更强大,因为它
- 直接支持 data types 除了字符串
- 提供 hierarchical / layered data 定义
- 可以reference the context from which data retrievals are performed
- 与 Puppet class 参数交互以提供 automatic data binding
- 支持多种数据存储back-ends,包括user-defined ones
,等等。
还有很多可以说的,但是如果您只想像使用来自 Ant build.properties
文件的数据一样使用 Hiera 数据,那么您需要知道的主要事情是 built-in back-ends 提供 YAML 和 JSON 格式而不是 Java .properties 格式,并且您的清单可以通过将所请求项目的密钥传递给 hiera()
功能。您的 Puppet 版本的 Puppet 文档将更多地说明数据文件的放置位置以及如何配置 Puppet 以使用它们。
当您在 ANT 中为 Java 构建某些内容时,您可以包含一个属性文件,在构建过程中可以从中读取不同的值。
是否可以用 Puppet 做类似的事情?例如,当 puppet 代理目录在代理上运行时,如果我想在两个数据库中将数据库密码和用户名设置为相同的内容?
正如@MattSchuchard 评论的那样,Hiera 是 Puppet 用于存储和检索静态数据以供目录构建期间使用的机制。它比 Ant 的 build.properties
更深入、更强大,因为它
- 直接支持 data types 除了字符串
- 提供 hierarchical / layered data 定义
- 可以reference the context from which data retrievals are performed
- 与 Puppet class 参数交互以提供 automatic data binding
- 支持多种数据存储back-ends,包括user-defined ones
,等等。
还有很多可以说的,但是如果您只想像使用来自 Ant build.properties
文件的数据一样使用 Hiera 数据,那么您需要知道的主要事情是 built-in back-ends 提供 YAML 和 JSON 格式而不是 Java .properties 格式,并且您的清单可以通过将所请求项目的密钥传递给 hiera()
功能。您的 Puppet 版本的 Puppet 文档将更多地说明数据文件的放置位置以及如何配置 Puppet 以使用它们。