转自:http://www.cnblogs.com/lemon-le/p/6862788.html
先看看debug模块的使用:
msg:输出调试信息
var:将某个任务执行的输出作为变量传给debug模块,debug模块将其打印输出
verbosity:debug的任务级别
 
1:在playbook中直接使用      
---
- hosts: db
vars:
vvv: china tasks:
- name: test var
debug: msg="The variable ‘vvv‘ is {{ vvv }}"
输出结果:

 
2:在文件中定义
---
- hosts: db vars_files:
- vars.yml tasks:
- name: test var in file
debug: msg="The variable ‘kk‘ is {{ kk }}"
变量文件:
---
kk: lile
执行结果:

 
3:在hosts文件中定义 
/etc/ansible/hosts  中定义组变量或者单个主机的变量
[db]
10.0.0.147 pp=ppppppp [db:vars]
mm=heiheihei
---
- hosts: db tasks:
- name: test hosts group var
debug: msg="The Variable ‘mm‘ is {{ mm }}"
- name: test singer var
debug: msg="The Variable ‘pp‘ is {{ pp }}"
执行结果:

 
4:在/etc/ansible目录下创建group_vars与hosts_vars
      mkdir /etc/ansible/group_vars
      mkdir /etc/ansible/hosts_vars
 
想定义组变量时,以组的名字命名创建一个文件,然后把变量写在里面
如:定义db组的变量  在/etc/ansible/group_vars这里创建db文件 vim db           
    ---
tt: yyyyyyyyyyyyy

然后就可以使用了

---
- hosts: db tasks:
- name: test /etc/ansible/group_vars
debug: msg="The variable ‘tt‘ is {{ tt }}"
执行结果:

 
5:在host_vars中是同样的,只有一需要定义变量的那台主机命名就可以。
 
6:hostvars从一台远程主机获取另一台远程主机的变量 
 
方式一:
---
- hosts: db tasks:
- debug: msg="Variable ‘tt‘ is set to {{ hostvars[‘10.0.0.146‘][‘ttt‘] }}"
输出结果:

 
方式二:
---
- hosts: db tasks:
- name: test hostvars
debug: var=hostvars[‘10.0.0.146‘][‘ttt‘]
输出结果:

 
 
 
 
      
 

Ansible中playbook的变量的更多相关文章

  1. 二、Ansible中playbook的变量

    先看看debug模块的使用: msg:输出调试信息 var:将某个任务执行的输出作为变量传给debug模块,debug模块将其打印输出 verbosity:debug的任务级别   1:在playbo ...

  2. ansible中playbook使用

    palybook使用 ####yaml语法ansible中使用的yaml基础元素:变量Inventory条件测试迭代 playbook的组成结构InventoryModulesAd Hoc Comma ...

  3. ansible官方文档翻译之变量

    Ansible变量 在使用ansible变量的时候,主要是因为各个系统的不同,从而需要使用不同的变量来进行设置,例如在设置一些配置文件的时候,有大部分内容是相同的,但是一部分内容是和主机的ip地址或者 ...

  4. Ansible之playbook的使用总结 - 运维笔记

    之前详细介绍了Ansible的安装, 配置, 以及Ansible常用模块的使用. 下面对Ansible的playbook用法做一小结. 为什么引入playbook?一般运维人员完成一个任务, 比如安装 ...

  5. ansible中的playbook详解

    首先简单说明一下playbook,playbook是什么呢?根本上说playbook和shell脚本没有任何的区别,playbook就像shell一样,也是把一堆的命令组合起来,然后加入对应条件判断等 ...

  6. ansible中定义变量的若干方法

    Ansible支持十几种定义变量的方式 根据优先级排序的定义方式: Inventory变量 Host Facts变量 Playbook变量 Playbook提示变量 变量文件 命令行变量 1.Inve ...

  7. Ansible进阶--playbook的使用

    一.什么是playbooksplaybooks是ansible的脚本.如同shell脚本一样,它是控制远程主机的一系列命令的集合,通过YAML语言编写.执行一些简单的任务,我们可以使用ad-hoc命令 ...

  8. Ansible之Playbook详解、案例

    什么是playbook playbooks是一个不同于使用Ansible命令行执行方式的模式,其功能更强大灵活.简单来说,playbook是一个非常简单的配置管理和多主机部署系统,不同于任何已经存在的 ...

  9. devops工具-Ansible进阶playbook&roles

    一.playbook介绍     playbook 是 Ansible 管理配置.部署应用的核心所在,一个playbook由有多“play组成”,而一个play实际就是一个task,每个task是由多 ...

随机推荐

  1. redmine 开机自动运行

    想要redmine在centos上开机自动运行,于是就在 /etc/rc.local里面加上了一行脚本 #!/bin/shecho "start redmine:"/usr/loc ...

  2. kosaraju算法

    这个是求一个图有几个强联通分量的算法 先讲一下应该流程 首先输入一个图G,创建一个反向的图GT 图G 对图进行dfs遍历,纪录每个点结束搜索的时间p[i] p[1]=2  p[2]=1  p[3]=5 ...

  3. [ 9.13 ]CF每日一题系列—— 340A GCD & LCM

    Description: [ 着实比较羞愧,都想着去暴力,把算法(方法)也忘了] A只涂x,2x,3x……,B只涂y,2y,3y……问你A和B共同涂的墙的个数 Solution: 就是求x和y的lcm ...

  4. Linux命令行获取本机外网IP地址

    问题: 服务器地址为net映射地址,本机ifconfig无法直接获取映射的公网地址. 方法: [root@TiaoBan- nidongde]# curl http://ifconfig.me 50. ...

  5. 二、基于kubernetes构建Docker集群环境实战

    kubernetes是google公司基于docker所做的一个分布式集群,有以下主件组成 etcd: 高可用存储共享配置和服务发现,作为与minion机器上的flannel配套使用,作用是使每台 m ...

  6. Rabbit MQ 入门指南

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. Ra ...

  7. python threading模块

    #coding=utf-8 import threading from time import ctime,sleep def music(func): for i in range(2): prin ...

  8. MVC 5使用ViewData(对象)显示数据

    控制器协调处理好数据之后,是交由视图来显示数据.在控制器与视图交互有一个是ViewData.这次练习,Insus.NET就以它来做实例. 前些时间,Insus.NET实现的练习中,也有从控制器传数据给 ...

  9. PKI信息安全知识点

    1. 什么是X.509? X.509标准是ITU-T设计的PKI标准,他是为了解决X.500目录中的身份鉴别和访问控制问题设计的. 2. 数字证书 数字证书的意义在于回答公钥属于谁的问题,以帮助用户安 ...

  10. Lerning Entity Framework 6 ------ Defining Relationships

    There are three types of relationships in database. They are: One-to-Many One-to-One Many-to-Many Th ...