zoukankan      html  css  js  c++  java
  • 二、Ansible中playbook的变量

    先看看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']
    输出结果:
     
     
     
     
          
     
  • 相关阅读:
    不知如何摧毁Kendo UI for jQuery小部件?这份指南不得不看
    MyEclipse导航代码第二弹,Java开发更便捷
    索引扫描与索引查找区别
    Chrome使用技巧
    什么是中台?所有的中台都是业务中台
    跨域资源共享CORS详解
    多线程之入门起步(三)
    聊天程序——基于Socket、Thread (二)
    多线程的相关概念(一)
    使用BCP实用工具导出导入数据
  • 原文地址:https://www.cnblogs.com/lemon-le/p/6862788.html
Copyright © 2011-2022 走看看