1. 概述

    1. 简单描述 ansible playbook

1. playbook

  1. 概述

    1. ansible 的 "脚本"
  2. 场景

    1. ansible

      1. 单条命令, 执行一个操作

      2. 问题

        1. 如果执行多个操作, 要怎么办
        2. 如果需要逻辑, 和其他组合, 要怎么办
      3. 解决

        1. ansible-playbook
  3. 一个简单的 playbook

    1. playbook01.yml
    ---
    - hosts: servers
    tasks:
    - name: ping test
    ping:
    1. 解释

      1. 格式

        1. 这个文本, 使用的是 yml 格式

          1. yml 格式本身不难, 但是我目前也不太熟练, 暂时就不讲解

            1. 百度很多, 一搜就出来了
      2. ---

        1. 标志开头

          1. 本身没有实际意义
          2. 如果遇到多个 ansible 脚本, 则可以标记开头, 做分割
      3. hosts: servers

        1. hosts

          1. 必填字段
          2. 目标主机
        2. servers

          1. 准备

            1. 在 inventory 文件里有描述
            2. 或者指定自己的 inventory 文件
      4. tasks

        1. 任务列表

          1. 必填字段
          2. 下面以 数组 的形式包含任务
      5. task: name

        1. 任务名称

          1. 非必填字段
          2. 目的就是注释, 在执行的时候, 会显示
      6. task: ping

        1. 模块名称

          1. ping
          2. 没有参数, 后面就为空
  4. 执行

    1. 命令

      > ansible-playbook -i hosts playbook01.yml
    2. 结果

      PLAY [servers] **********************************************************************************************************************
      
      TASK [Gathering Facts] **************************************************************************************************************
      ok: [demo] TASK [ping test] ********************************************************************************************************************
      ok: [demo] PLAY RECAP **************************************************************************************************************************
      demo : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
  5. 后续

    1. 了解 playbook 的多个属性

    2. 尝试 playbook 的其他特性

      1. 操作
      2. 模块化等
      3. 结果的返回
    3. 了解 其他模块

      1. 命令
      2. playbook
    4. 关于 Gathering Facts

      1. 结果里的一项

        1. 目前不知道是干啥的

        2. 大概是收集远端机器的 系统信息, 并放到变量里

          1. 以后可以用
        3. 默认是打开

        4. 可以关闭

          # 在 yml 里添加这个选项即可
          gather_facts: false
    5. 登录用户

      1. 默认是 root
      2. 有字段可以设置
        # 可以改成别的用户
        remote_user: root

ps

  1. ref

    1. learn ansible
    2. Intro to Playbooks
  2. 疑问

    1. yaml 格式
    2. playbook 感觉东西很多
      1. 慢慢来吧

Ansible - playbook - 概要的更多相关文章

  1. Ansible playbook API 开发 调用测试

    Ansible是Agentless的轻量级批量配置管理工具,由于出现的比较晚(13年)基于Ansible进行开发的相关文档较少,因此,这里通过一些小的实验,结合现有资料以及源码,探索一下Ansible ...

  2. ansible playbook实践(四)-如何调试写好的playbook文件

    有时,我们写了一个长长,功能很强悍的yaml文件,但是,我们有可能会担心,写的yaml文件是否正确,是否有漏洞危机,毕竟是要修改线上的机器,那么,有可能我们可以从以下几个检查维度来进行,确保在大规模应 ...

  3. ansible playbook批量改ssh配置文件,远程用户Permission denied

    最近手里的数百台服务器需要改/etc/ssh/sshd_config的参数,禁止root直接登陆,也就是说 [root@t0 ~]# cat /etc/ssh/sshd_config | grep R ...

  4. ansible笔记(11):初识ansible playbook(二)

    ansible笔记():初识ansible playbook(二) 有前文作为基础,如下示例是非常容易理解的: --- - hosts: test211 remote_user: root tasks ...

  5. ansible笔记(10):初识ansible playbook

    ansible笔记():初识ansible playbook 假设,我们想要在test70主机上安装nginx并启动,我们可以在ansible主机中执行如下3条命令 ansible test70 -m ...

  6. Ansible playbook 批量修改服务器密码 先普通后root用户

    fsckzy   Ansible playbook 批量修改服务器密码 客户的需求:修改所有服务器密码,密码规则为Rfv5%+主机名后3位 背景:服务器有CentOS6.7,SuSE9.10.11,r ...

  7. 写Ansible playbook添加zabbix被监控的对象

    本主题达到的效果是能通过编写Ansible Playbook,创建zabbix主机组,把被监控的对象加入到zabbix监控系统中,同时链接到对象的模板. 1.准备工作 在zabbix服务器上面,我们需 ...

  8. Ansible playbook基础组件介绍

    本节内容: ansible playbook介绍 ansible playbook基础组件 playbook中使用变量 一.ansible playbook介绍 playbook是由一个或多个“pla ...

  9. ansible playbook基本操作

    一.ansible playbook简单使用 相当于是把模块写入到配置文件里面 vim /etc/ansible/test.yml //写入如下内容: --- - hosts: 127.0.0.1 r ...

随机推荐

  1. CSS常用小技巧

    1.隐藏overflow滚动条 ::-webkit-scrollbar { display:none } 2.单行文字两端对齐(例:输入框前的label) // 若考虑兼容,文字间要有空格 { tex ...

  2. C++类this指针为空时的几个误区

    代码: class test{ public: static void f1(){cout<<y<<endl;} void f2(){cout<<y<< ...

  3. JS高级---正则表达式其他方法的使用

    正则表达式其他方法的使用 正则表达式中:g 表示的是全局模式匹配 正则表达式中:i 表示的是忽略大小写 var str = "中国移动:10086,中国联通:10010,中国电信:10000 ...

  4. Unable to load authentication plugin 'caching_sha2_password'

    Caused by: com.mysql.cj.core.exceptions.WrongArgumentException: Unable to load authentication plugin ...

  5. tensorflow-gpu安装

    添加清华源(输入清华仓库镜像),可以提高下载速度: conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/ ...

  6. Xampp在Mac下报403的问题

    将httpd.conf里的 User daemonGroup daemon 改为 User myusername(当前使用的用户名)Group admin

  7. PP: Reconstructing time series into a complex network to assess the evolution dynamics of the correlations among energy prices

    Purpose detect the dynamics in time series of their correlation Methodology 1. calculate correlation ...

  8. Oracle的物理结构的三种文件

    .dbf数据文件,是用于存储数据库数据的文件,例如表中的记录,索引,数据字典信息等,可以通过系统数据字典DBA_DATA_FILES查看相关信息.与逻辑角度的表空间(并不是真正的文件)对应,一个表空间 ...

  9. 接口自动化框架(Pytest,Allure,Yaml)

    框架链接:https://www.jianshu.com/p/e31c54bf15ee 目前是基于他的框架做了些改动(主要是session.action()和json格式传参). 后续优化,应该主要思 ...

  10. vue-element-admin框架快速入门

    年底了,最近公司也不是太忙,感觉今年互联网行业都遇到寒冬,不在是前两年像热的发烫的赛道.这几天完成公司项目系统的优化和升级,目前准备想开发一套前后端分离的系统.       现在java最新最火的技术 ...