ansible playbook

  ansible-playbook命令格式:

    ansible-playbook  [option]  filename(剧本名字)

     ansible-playbook 命令的常用选项:

      -C: 模拟运行

      --list-hosts: 列出剧本主机清单     

      --list-tags : 列出剧本标记

      --list-tasks: 列出剧本任务

      --syntax-check: 检测语法

  安装并且启动apache服务的剧本简单举例:

          

[root@host1 ansible]# mkdir ansible_playbook
[root@host1 ansible]# ll
total 24
-rw-r--r-- 1 root root 19980 Sep 14 04:00 ansible.cfg
drwxr-xr-x 2 root root 6 Oct 24 08:28 ansible_playbook
-rw-r--r-- 1 root root 40 Oct 9 15:04 hosts
drwxr-xr-x 2 root root 6 Sep 14 04:00 roles

[root@host1 ansible_playbook]# pwd
/etc/ansible/ansible_playbook
[root@host1 ansible_playbook]# ll
total 4
-rw-r--r-- 1 root root 210 Oct 24 08:48 apache.yaml

        

[root@host1 ansible_playbook]# more apache.yaml 
- hosts: test1
tasks:

- name: Install Httpd
yum name=httpd state=installed

- name: Configure Httpd.conf

- name: Start Httpd Service
service name=httpd state=started enabled=yes

      检测语法举例:        

        [root@host1 ansible_playbook]# ansible-playbook --syntax-check apache.yaml

        playbook: apache.yaml

      查看剧本主机清单:

        

        

[root@host1 ansible_playbook]# ansible-playbook --list-hosts apache.yaml

playbook: apache.yaml

play #1 (test1): test1 TAGS: []
pattern: [u'test1']
hosts (2):
192.168.132.163
192.168.132.162

      查看剧本任务:

        

[root@host1 ansible_playbook]# ansible-playbook --list-tasks apache.yaml

playbook: apache.yaml

play #1 (test1): test1 TAGS: []
tasks:
Install Httpd TAGS: []
Start Httpd Service TAGS: []

       模拟运行剧本:

          

    

[root@host1 ansible_playbook]# ansible-playbook -C apache.yaml

PLAY [test1] ************************************************************************************************************************

TASK [Gathering Facts] **************************************************************************************************************
ok: [192.168.132.163]
ok: [192.168.132.162]

TASK [Install Httpd] ****************************************************************************************************************
changed: [192.168.132.163]
changed: [192.168.132.162]

TASK [Start Httpd Service] **********************************************************************************************************
changed: [192.168.132.162]
changed: [192.168.132.163]

PLAY RECAP **************************************************************************************************************************
192.168.132.162 : ok=3 changed=2 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
192.168.132.163 : ok=3 changed=2 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0

出现如上情况说明剧本模拟运行正常,可以去直接执行剧本了!!

    下面是批量修改httpd的配置文件后重启httpd服务的ansible 剧本(文件):

注意: playbook核心元素常用的是hosts,tasks,handlers,其他两个有兴趣可以自己去研究!

   

      

        

     

ansible自动化运维04的更多相关文章

  1. Ansible自动化运维工具及其常用模块

    Ansible自动化运维工具及其常用模块 目录 Ansible自动化运维工具及其常用模块 一.Ansible简介 1. Ansible概述 2. Ansible作用 3. Ansible的工作模块 4 ...

  2. Ansible自动化运维工具-上

    [Ansible特点] 1)Ansible与saltstack均是基于Python语言开发的 2)安装使用简单,基于不同插件和模块实现各种软件,平台,版本的管理以及支持虚拟容器多层级的部署 3)不需要 ...

  3. ansible 自动化运维

    Ansible 自动化运维 ansible安装epel #yum list all *ansible*#yum install *ansible*#yum info ansible#rpm -ql a ...

  4. Ansible 自动化运维工具

    Ansible 自动化运维工具 Ansible是什么? Ansible是一个"配置管理工具"也是一个"自动化运维工具" Ansible 作用: Ansible是 ...

  5. ansible自动化运维03

    ansible自动化运维常用模块 常用模块实现的功能:安装软件包:修改配置文件:创建程序用户组:创建目录,并修改所属和权限:挂载:启动服务:测试. command模块: shell模块: 注意:com ...

  6. 简单聊一聊Ansible自动化运维

    一.Ansible概述 Ansible是今年来越来越火的一款开源运维自动化工具,通过Ansible可以实现运维自动化,提高运维工程师的工作效率,减少人为失误.Ansible通过本身集成的非常丰富的模块 ...

  7. Ansible自动化运维工具的使用

                                 Ansible自动化运维工具的使用       host lnventory 管理主机 ip  root账号密码 ssh端口 core mod ...

  8. Ansible 自动化运维——剧本(playbook)

    Ansible 自动化运维--剧本(playbook) 1.playbook介绍: playbook是ansible用于配置,部署,和管理被控节点的剧本.通过playbook的详细描述,执行其中的ta ...

  9. 一文详解 Ansible 自动化运维

    开源Linux 一个执着于技术的公众号 一.Ansible 概述 Ansible 是近年来越来越火的一款开源运维自动化工具,通过Ansible可以实现运维自动化,提高运维工程师的工作效率,减少人为失误 ...

随机推荐

  1. Java递归实现阶乘

    import java.util.Scanner; public class Factorial { public static void main(String[] args) { Scanner ...

  2. requests--请求头设置

    前戏 在我们进行自动化测试的时候,很多网站都会都请求头做个校验,比如验证 User-Agent,看是不是浏览器发送的请求,如果我们不加请求头,使用脚本访问,默认User-Agent是python,这样 ...

  3. 命令行编译带外部包依赖的java源文件 [以JDBC MySQL8为例]

    环境: MySQL8 JDK11(SE) 首先下载MySQL8的JDBC驱动 https://dev.mysql.com/downloads/connector/j/选 PlatForm Indepe ...

  4. redis持久化方式与优缺点

    Redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化.redis支持四种持久化方式,一是 Snapshotting(快照)也是默认方式:二是Appen ...

  5. Java中HashMap和TreeMap的区别

    什么是Map集合在数组中我们是通过数组下标来对其内容索引的,而在Map中我们通过对象来对对象进行索引,用来索引的对象叫做key,其对应的对象叫做value.这就是我们平时说的键值对. HashMap ...

  6. 微信企业号SDK

    1. 微信企业号SDK class class_wxqiye { var $corpid = CorpID; var $corpsecret = CorpSecret; var $agentid = ...

  7. python3 字符和数字(ASC码)转换

    print(ord('b')) print(ord('B')) print(chr(98)) print(chr(66)) 结果:98 66 b B 也可以数字转ASC码,原理一样,如下(结果就不输出 ...

  8. 父组件调用子组件 viewChild

    父组件调用子组件 1.在子组件的ts中声明一个变量 public  lineout:any="你好,我是被父组件调用的子组件";  2.在父组件的html中写入 (引入子组件) & ...

  9. 前端学习:学习笔记(JS部分)

    前端学习:学习笔记(JS部分) 前端学习:JS学习总结(图解)    JS的简介 JS基本语法 JS内置对象 JS的函数 JS的事件 JS的BOM JS的DOM JS的简介 新建步骤 <body ...

  10. RAID(独立磁盘冗余阵列)简介

    RAID(独立磁盘冗余阵列) 在大数据技术出现之前,人们就需要面对这些关于存储的问题,对应的解决方案就是RAID技术. RAID(独立磁盘冗余阵列)技术主要是为了改善磁盘的存储容量,读写速度,增强磁盘 ...