美文网首页
ansible-playbook 01 变量

ansible-playbook 01 变量

作者: xlgao | 来源:发表于2020-09-18 13:32 被阅读0次

    ansible 环境变量优先级

    ansible 变量优先级

    命令行指定变量 > yaml文件中的变量> 主机清单中的变量

    ansible变量具体使用方法

    1. ansible命令行中指定变量
    ansible-playbook -e 'pkgname=httpd' file.yaml
    
    1. yml文件中指定变量
    ---
    - hosts: k8s
      remote_user: root
      vars:
        - pkgname1: httpd
        - pkgname2: vsftpd
     tasks:
        - name: install {{ pkgname1 }}
          yum: name={{ pkgname1 }}
        - name: install {{ pkgname2 }}
          yum: name={{ pkgname2 }}
    
    1. 在ansible清单文件中定义变量
    • 针对单个主机定义变量
    [k8s]
    172.16.6.190 host_name=master
    172.16.6.191 host_name=node1
    172.16.6.192 host_name=node2
    172.16.6.193 host_name=node3
    172.16.6.195 host_name=harbor
    
    • 针对组定义变量
    [k8s]
    172.16.6.190 host_name=master
    172.16.6.191 host_name=node1
    172.16.6.192 host_name=node2
    172.16.6.193 host_name=node3
    172.16.6.195 host_name=harbor
    
    [k8s:vars]
    nodename=www
    domainname=123.com
    
    tasks:
      - name
        hostname: name={{nodename}}{{host_name}}.{{domainname}}
    
    1. 定义单独存放变量的文件
    ~] cat var1.yml
    var1:httpd
    var2:vsftpd
    
    ---
    - hosts: all
      remote_user: root
      vars_file:
        - var1.yml
    
      tasks:
        - name: install pkg
          yum: name={{ var1 }}
        - name: create file
          file: name=/tmp/{{ var2 }} state=touch
    

    相关文章

      网友评论

          本文标题:ansible-playbook 01 变量

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