5.3_Ansible中的playbook

##1.Playbook的功能##

playbook是由一个或多个play组成的列表 Playbook文件使用YAML来写的

##2.YAML##

(1)简介

是一种表达资料序列的格式,类似XML

Yet Another Markup Language

2001年首次发表

www.yaml.org 

(2)特点 

#特点#

可读性好

和脚本语言交互性好

易于实现

适用程序执行流梳理方式

可扩展性强

(3)语法简介 

#语法简介#

在文件中用[---]开始

在文件中用[...]结尾

次行一般书写文件内容

缩进严格

大小写敏感

key/value可以多行书写也可一行书写,一行书写用,隔开

value可以是个字符串,也可是list

一个play需要包括name和tasks

name 是描述

tasks 是动作

一个name只能包含一个task

扩展名称yml或者yaml

 测试:

书写一个playbook

建立一个用户名为westosuser:

id:6666   gid:6666  附加组:21  密码:westos

(4)YAML 列表 

[Linux,C++,Java,Python]
或
- Linux
- C++
- Java
- Python 

(5)YAML的字典 

字典作用存放键值
name:westos
age:12 
jobs:linux 
{name: "westos", age: "12", jobs: "linux"}

 

两种写法等价

##3.Playbook执行命令##

ansible-playbook xxx.yml ...
--check|-C      ##检测,预执行,并没有真正执行
--syntax-check  ##check language检测语法
--list-hosts    ##列出hosts
--list-tags     ##列出tag
--list-tasks    ##列出task
--limit         ##指定执行主机
-v -vv          ##详细过程
-e              ##指定变量

 ##4.Playbook的核心组件##

name     #可选,建议使用多用于说明
hosts    #受控主机列表
tasks    #任务
         #用与选择执行部分代码
 
#基本示例#
---
- name: test play book
  hosts: all
  remote_user: root

  tasks:
    - name: check hosts
      dnf:
        name=httpd
        state=latest
    - name: start httpd
      service:
        name=httpd
        state=started
        enabled=yes

##5.vim 设定技巧## 

autocmd FileType yaml setlocal ai ts=2 sw=2 et
 
setlocal   ##设定当前文件
ai         ##自动退格对齐   auto indent
ts         ##tab建长度为2空格 tabstop=2
sw         ##缩进长度为2 shiftwidth=2
et         ##把tab键变成空格  expandtab

测试:

部署好ftp服务并开启匿名用户访问权利 

测试:

部署好apache服务,设置默认发布文件为www.westos.org 

 ##6.playbook中的tags## 

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值