博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ansible - playbook 概要
阅读量:5096 次
发布时间:2019-06-13

本文共 1590 字,大约阅读时间需要 5 分钟。

  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. 疑问
    1. yaml 格式
    2. playbook 感觉东西很多
      1. 慢慢来吧

转载于:https://www.cnblogs.com/xy14/p/11573109.html

你可能感兴趣的文章
【深度学习】caffe 中的一些参数介绍
查看>>
QML学习笔记之一
查看>>
App右上角数字
查看>>
小算法
查看>>
新作《ASP.NET MVC 5框架揭秘》正式出版
查看>>
WPF中实现多选ComboBox控件
查看>>
读构建之法第四章第十七章有感
查看>>
Windows Phone开发(4):框架和页 转:http://blog.csdn.net/tcjiaan/article/details/7263146
查看>>
python asyncio 异步实现mongodb数据转xls文件
查看>>
TestNG入门
查看>>
【ul开发攻略】HTML5/CSS3菜单代码 阴影+发光+圆角
查看>>
IOS-图片操作集合
查看>>
IO—》Properties类&序列化流与反序列化流
查看>>
jquery实现限制textarea输入字数
查看>>
Codeforces 719B Anatoly and Cockroaches
查看>>
ActiveMQ与spring整合
查看>>
第一阶段冲刺06
查看>>
EOS生产区块:解析插件producer_plugin
查看>>
排球积分程序(三)——模型类的设计
查看>>
HDU 4635 Strongly connected
查看>>