美文网首页
2019-08-27 ansible剧本

2019-08-27 ansible剧本

作者: 麟之趾a | 来源:发表于2019-08-27 20:08 被阅读0次

剧本编写扩展功能

1.剧本变量的设置
2.剧本变量注册功能
register注册变量

[root@m01 /etc/ansible]# cat test01.yml 
- hosts: web01
  tasks:
    - name: vars register
      shell: df -h
      register: oldboy
    - name: play
      debug: msg={{ oldboy.stdout_lines  }}

3.剧本编写判断功能

[root@m01 /etc/ansible]# cat test01.yml 
- hosts: oldboy
  tasks:
    - name: vars register
      shell: hostname
      register: oldboy
    - name: play
      debug: msg={{ oldboy.stdout_lines  }}
      when: (ansible_nodename == 'nfs01')
============================================================================================
when 语句判断   and  是并且关系    or 是或者关系

4.剧本编写循环功能

[root@m01 /etc/ansible]# cat test01.yml 
- hosts: oldboy
  tasks:
    - name: create directory
      file: path={{ item }} state=directory
      with_items:
        - oldboy01
        - oldboy2
============================================================================
[root@m01 /etc/ansible]# cat test01.yml 
- hosts: oldboy
  tasks:
    - name: create user
      user: name={{ item.name  }} shell={{ item.shell }}
      with_items:
        - {name: 'olg01', shell: '/sbin/nologin'}
        - {name: 'olg02', shell: '/sbin/bash'}

5.编写忽略错误功能
ignor_errors: yes

[root@m01 /etc/ansible]# cat test01.yml
- hosts: oldboy
  tasks:
    - name: test shell
      shell: ddd
      ignore_errors: yes

6.剧本编写标签功能
-t 指定标签,--skip-tags 跳过标签,tags: 使用标签

[root@m01 /etc/ansible]# cat test01.yml
- hosts: oldboy
  tasks:
    - name: test shell
      shell: df -h
    - name: create file
      file: path=/tmp/1 state=touch
      tags: oldboy

7 .剧本提高执行效率,取消剧本信息收集功能
gather_facts: no

[root@m01 /etc/ansible]# cat test01.yml 
- hosts: oldboy
  gather_facts: no
  tasks:
    - name: test shell
      shell: df -h

PS:取消信息收集功能,判断也不能执行了
总结:剧本执行慢的原因

1 .ssh远程连接优化没有配置,关闭认证功能,关闭DNS反向解析功能
2 .yum 下载软件慢,使用本地的yum库
3 .剧本执行收集信息慢
4 .剧本执行过程必须完整(即不能随便使用ctrl+c中断,特别是使用yum模块安装东西时)

8.触发器
notify,handlers

[root@m01 /etc/ansible]# cat test01.yml 
- hosts: backup
  tasks:
    - name: copy config
      copy: src=/file/rsyncd.conf dest=/etc
      notify: restart rsyncd
    - name: boot server
      service: name=rsyncd state=started
  handlers:
    - name: restart rsyncd
      service: name=rsyncd state=restarted
=============================================================================
触发器实是在所有任务执行完毕后执行

9.批量添加剧本

方式一: include_tasks: f1.yml
- hosts: all
      remote_user: root
      tasks:
        - include_tasks: f1.yml
        - include_tasks: f2.yml
方式二: include f1.yml
 - include:f1.yml   
 - include:f2.yml
方式三: import_playbook 推荐
[root@m01 ansible-playbook]# cat main.yml 
    - import_playbook: base.yml     
    - import_playbook: rsync.yml    
    - import_playbook: nfs.yml 

相关文章

  • 2019-08-27 ansible剧本

    剧本编写扩展功能 1.剧本变量的设置2.剧本变量注册功能register注册变量 3.剧本编写判断功能 4.剧本编...

  • Linux_316_Ansible之playbook剧本介绍

    ansible剧本ansible核心的功能,作用就是进行配置管理ansible需要编写的playbook剧本需要遵...

  • 综合架构之ansible(角色相关内容)

    补充: ansible剧本编写方式: 角色 规范ansible程序目录结构汇总剧本中有定义的主机3.将任务分开实现...

  • ansible-剧本编写-格式

    ansible剧本编写格式 ansible-playbook编写格式剧本开头,可以不写这两项必须要写:格式:- h...

  • 2019-08-27 ansible角色及http开头

    ansible 剧本循环功能with_items/loopansible剧本角色功能说明 1 .让剧本配置更加规范...

  • Ansible剧本

    第一章 使用ansible模块实现安装rsync服务 01.服务端操作 第一步:安装软件 第二步:编写文件 第三步...

  • Ansible剧本

    第一章 使用ansible模块实现安装rsync服务 01.服务端操作 第一步:安装软件 第二步:编写文件 第三步...

  • 综合架构ansible之playbook

    ansible批量管理剧本概念 可以将多个批量操作模块功能整合简化运维工作复杂度 ansible ansible剧...

  • ansible的隐喻

    开发人员:编剧 playbook:剧本 ansible:导演 inventory:演员 ansible拿着开发人员...

  • ansible

    简介 架构 原理 组成 ANSIBLE PLAYBOOKS:任务剧本(任务集),编排定义Ansible任务集的配置...

网友评论

      本文标题:2019-08-27 ansible剧本

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