美文网首页
Ansible变量学习

Ansible变量学习

作者: syp_xp | 来源:发表于2017-05-20 03:35 被阅读55次
  • ansible变量的分类
variables defined in inventory
variables defined in playbook
variables defined in commandline
registered variables
variables defined from included files and roles
using variables:jinja2
facts
  • 资源清单中定义
[webservers]
app1_server  http_port=80
[webservers:vars]
some_server=xxx
/etc/ansible/hosts_vars/app1_server
/etc/ansible/group_vars/webservers

/etc/ansible/group_vars/webservers定义主机组变量文件
/etc/ansible/hosts_vars/app1_server定义app1_server可以使用的变量文件
文件名称需要与资源名称一致

  • playbook中的变量
    vars
    vars_files
    vars_prompt
  • 命令行中定义变量
command_vars.yml 文件内容
-hosts:mfs_mode
 user:"{{ uservar }}"
 tasks:
  - shell:echo "{{ echovar }}"
ansible-playbook command_vars.yml -e 'uservar="root" echovar="hello"'
ansible-playbook command_vars.yml -e '{"uservar":"root" ,"echovar":"hello"}'
ansible-playbook command_vars.yml -e '@test.json'
cat test.json
uservar:root
echovar:hello
  • register vars
-hosts:mfs_mode
 tasks:
   - shell:echo "5"
     register:result
     ignore_errors:True
   - debug:msg="it failed"
     when:result|failed
   - debug:msg="{{ result.stdout }}"
   - shell:/usr/bin/bar

     when:result.rc==5

result保存了执行echo "5"命令的结果

  • roles和include不进行介绍
  • 本地变量
    可以通过在远程主机上创建/etc/ansible/facts.d/目录,在里面添加用户保存本地自定义变量的文件,文件件需要以.fact结尾
    通过setup模块和filter=ansible_local可以获取本地定义的变量
ansible hostname -m setup -a "filter=ansible_local"

相关文章

  • Ansible变量学习

    ansible变量的分类 资源清单中定义 /etc/ansible/group_vars/webservers定义...

  • ansible-playbook 01 变量

    ansible 环境变量优先级 ansible 变量优先级 命令行指定变量 > yaml文件中的变量> 主机清单中...

  • 自定义ansible模块

    准备工作 # 创建ansible模块目录 mkdir /tmp/ansible #声明全局变量,设置ansible...

  • Ansible查找ansible.cfg文件的位置及顺序

    1、ANSIBLE_CONFIG环境变量所指定的文件 2、./ansible.cfg(当前目录下的ansible....

  • ansible 模板中遍历字典

    需求: 从ansible_facts.ansible_devices变量中查找符合条件的磁盘 数据: templa...

  • Ansible-5 ansible变量

    变量命名规则 变量的名字由字母、下划线和数字组成,以字母开头。 保留关键字不能作为变量名称 变量类型 全局变量 E...

  • ansible failed_when的使用

    在正常使用了ansible剧本中的变量后,突然遇到需要在变量不符合的情况下,中断ansible的剧本。这时候就用到...

  • Ansible魔法变量

    1. 魔法变量 2. Ansible默认会提供一些内置的变量以实现一些特定的功能,我们称之为魔法变量。下面列举一些...

  • 四、Ansible 变量

    我们在PlayBook一节中,将PlayBook类比成了Linux中的shell。那么它作为一门Ansible特殊...

  • 03 Ansible 变量

    本文链接: https://www.jianshu.com/p/b348e7e5358a作者:闫立行 一、 Ans...

网友评论

      本文标题:Ansible变量学习

      本文链接:https://www.haomeiwen.com/subject/cbmuxxtx.html