SaltStack SLS Template Variable Reference - SLS模板变量使用参考
发布日期:2021-05-20 07:23:13 浏览次数:26 分类:精选文章

本文共 984 字,大约阅读时间需要 3 分钟。

Salt模板引擎变量概述

Salt模板引擎支持多种变量,帮助管理员在模板中使用上下文功能。这些变量包含对模板生成所需的信息和功能。以下是各变量的核心作用和使用方法。

Salt变量

salt变量是 Salt Minion 可用的功能函数集合,其在所有模板中都可用。它以字典形式存在,提供了丰富的功能调用选项。

示例:遍历目录并移除文件

{% for file in salt['cmd.run']('ls -1 /opt/to_remove').splitlines() %}
/opt/to_remove/{{ file }}: file.absent
{% endfor %}

Opts变量

opts变量将Minion配置文件内容抽象到模板中。它是一个字典,适用于所有模板。

示例:访问缓存目录

{{ opts['cachedir'] }}

config.get函数也可在opts字典中搜索值,以安全设置默认值。

Pillar变量

pillar字典提供了直接可用的键值对,适用于所有模板。建议通过salt['pillar.get']函数访问,以便设置默认值和遍历字典。

示例:访问或设置键值

{{ salt['pillar.get']('key', 'failover_value') }}
{{ salt['pillar.get']('stuff:more:deeper') }}

Grains变量

grains字典包含Minion的粒粒信息,适用于所有模板。grains.get函数支持深度遍历和默认值设置。

示例:访问操作系统信息

{{ grain.get('os') }}

saltenv变量

saltenv变量仅在SLS文件中可用,用于表示当前环境。它不适用于引用文件中的其他SLS模板。

示例:访问SLS文件路径

{{ saltenv }}

Sls变量

sls变量指向当前SLS文件的参考值。仅在当前文件及引用文件中使用时有效。

示例:访问SLS引用信息

{{ sls }}

Sls路径变量

slspath变量表示当前SLS文件的路径。在Jinja包含时,路径指向当前文件;在Salt包含时,路径指向引用文件。

示例:获取SLS文件路径

{{ slspath }}

以上变量为Salt模板引擎中常用工具,帮助管理员高效处理系统管理任务并定制模板动态内容。

上一篇:SaltStack State Requisites - 状态配置中的必要性依赖条件的使用方法介绍
下一篇:SaltStack about The Top File 使用知识介绍

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年05月06日 06时06分16秒