playbook常见的变量分类与变量优先级
playbook常见的变量分类
在Playbook中常用的几种变量包含一下几种情况:
- 在Playbook中用户
自定义的变量
。—var*|other - 用户无需自定义,Ansible会在执行Playbook之前去全程主机上搜集的关于远程节点
系统信息的变量
。—ansible setup模块 - 在文件模版中,可以直接使用上述两种变量
- 把task的运行结果作为一个变量来使用,这个变量叫做
注册变量
。—register - 为了使Playbook更灵活、通用性更强,允许用户在执行的时候传入变量的值,这个时候就需要用到
额外变量
。
Ansible变量优先级(由高到低)
extra vars (在命令行中使用 -e)优先级最高:ansible-playbook -e var=value
task变量
block变量
role中定义的变量和include变量
set_fact
registered变量
vars_files
var_prompt
play变量
host facts
playbook中设置的host_vars
playbook中设置的group_vars
inventory中设置的host_vars
inventory中设置的group_vars
inventory变量
role中defaults/main.yml中定义的变量
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 GO TO NEW WORLD!
评论