zoukankan      html  css  js  c++  java
  • ansbile-playbook 常用操作

    ansible-playbook 模板

    • 执行模板
    - name: use vars define variables
      hosts: 192.168.64.124
      tasks:
        - name: add line before Listen 80
          lineinfile:
            dest: /etc/hosts
            line: '192.168.200.8 test.com'
    
    
    • 套一个文件内部变量的模板
    [root@localhost mysql]# cat test_services.yaml 
    test_services:
     - httpd
     - mariadb
    
    
    [root@localhost mysql]# cat install_pkgs.yaml 
    - name: feile hosts
     hosts: 192.168.64.124
     vars_files:
       - test_services.yaml
     tasks:
       - name: start services group
         service:
           name: "{{ item }}"
           state: started
         loop: "{{ test_services }}"
    
    
    • yum 和启动 以及更新包
    [root@localhost mysql]# cat s7.yaml 
    ---
    - name: Install vim
      hosts: webservers
      vars: 
        packeages:
        - lrzsz
      tasks:
        - name: install yum packeage
          yum:
            name: "*"
            state: latest
            #update_cache: yes
        - name: Instal Packages
          yum:
            name: "{{ packeages }}"
            state: latest
            #update_cache: yes
        - name: httpd httpd start
          service:
            name: httpd
            state: restarted
            enabled: yes
    
    
    • 替换行内文字
    [root@localhost mysql]# cat s5.yaml 
    - name: use vars define variables
      hosts: 192.168.64.124
      tasks:
        - name: add line before Listen 80
          lineinfile:
            dest: /etc/hosts
            line: '192.168.200.8 test.com'
    [root@localhost mysql]# cat s4.yaml 
    - name: use vars define variables
      hosts: 192.168.64.124
      tasks:
        - name: add line before Listen 80
          lineinfile:
            dest: /etc/hosts
            regex: '^192.168.200'
            state: absent
    
    
    • 判断路径
    [root@localhost mysql]# cat if_test.yaml
    - hosts: webservers
      vars:
        testpath: /home
      tasks:
        - debug: 
            msg: "file exist"
          when:  testpath is exists # 路径存在
          #when: not testpath is exists # 路径不存在
    
    • 判断结果返回
    sucess或succeeded:通过任务执行结果返回的信息判断任务的执行状态,任务执行成功则返回true
    failure或failed:任务执行失败则返回true
    change或changed:任务执行状态为changed则返回true
    skip或skipped:任务被跳过则返回true
    
    [root@localhost mysql]# cat s8.yaml 
    - hosts: webservers
      gather_facts: no 
      vars: 
        doshell: true
      tasks:
        - shell: 'cat /tmp/text.txt'
          when: doshell
          register: result
          ignore_errors: true
        - debug:
            msg: "success"
          when: result is success
        - debug: 
            msg: "failed"
          when: result is failure
        - debug:
            msg: "changed"
          when: result is change
        - debug:
            msg: "skip"
          when: result is skip
    
    
  • 相关阅读:
    msbuild error
    windows 切换 默认 jdk 版本
    CI MSBuild env 2
    CI MSBuild env 1
    mstsc 修改密码
    MVC MSBuild
    gitolite
    OpenCV Visual Studio
    程序员!这5种让人郁闷的程序注释方式千万要避开!
    C语言基础丨运算符之条件运算符(七)
  • 原文地址:https://www.cnblogs.com/zoulixiang/p/14072581.html
Copyright © 2011-2022 走看看