Playbook(RH294)

目录

格式化Ansible Playbook

Playbook编写注意事项

play是针对清单中选定的主机运行的一组有序任务

playbook是一个文本文件,其中包含由一个或多个按特定顺序运行的play组成的列表

格式化Ansible Playbook

来让我们首先来一份简单的代码

ansible -m user -a “name=newbie uid=4000 state=present” servera.lab.example.com

这里的意思就是-m调用ansible中的 user模块 -a调整参数

确保存在newbie用户在主机servera.lab.example.com上且其uid为4000

如果我们使用playbook的话就有以下的操作

---   #开始的格式- - -

- name:Configure important user consistently #单纯的取个名字

   host: servers.lab.example.com #作用在那台机子上 可使用受管主机或组

   task: #开始任务的标志

          - name: newbie exists with UID 4000 #任务的名字

                  user:

                         name: newbie #user模块的参数name 保证有这个用户

                         uid: 4000 #这个用户uid为4000

                         state: present #该命令执行的时间 立刻!

Playbook编写注意事项

1.处于层次结构中同一级别的元素必须具有相同的缩进量

2.如果该项目属于其他的子项目,那么其缩进量必须大于父项目

3.只有空格字符可以用于缩进,不允许使用制表符

4.列表:每一个列表成员前面都要有一个短横线和一个空格

5.字典:每一个成员由键值对组成,注意冒号后面要有空格

特别提示

如果是使用vi编辑 可以去往~/.vimrc 添加以下内容

autocmd FileType yaml setlocal ai ts=2 sw=2 et

调整tab键为两个空格缩进

---为playbook的开头

项目开头一般都是一个 -

运行Playbook

ansible-playbook 清单文件名  举例:ansible-playbook tasks.yml

在运行任务时会显示每个play和任务的name的值

如果想要知道更加详细的输出结果 可以添加

 简单的语法检查

ansible-playbook 提供了一个 --syntax-check选项

这个选项会提供简单的语法检查

空执行

只会告诉你运行这个玩意之后会发生什么,但不会对受管主机产生实际的影响

使用符号 -C #大C

举例 ansible-playbook -C tasks.yml

实验——编写一个playbook

 

实验开始:lab playbook-basic start

1.cd ~/playbook-basic

2.vim site.yml

3.

---

- name: install and start Apache HTTPD

  host:web

  tasks:

        - name: httpd package

          yum: #采用yum(用于安装)模块

                 name: httpd  要安装的软件为httpd

                 state: present 软件包状态设为现在

        - name: correct index html is present

          copy: #采用copy模块

                src: files/index.html  #复制的东西

                dest: /var/www/html/index.html #复制到哪里

        - name: httpd is started #用来启动httpd服务

          service: #调用service模块

                name: httpd   #要启用的软件

                state: started  #启用的动作

                enabled: true  #是否开机自启

4.进行基本的语法检查

ansible-playbook --syntax-check site.yml

5.运行

ansible-playbook site.yml

6.使用curl命令验证serverc和serverd是否都配置了HTTPD服务器

curl serverc.lab.example.com

curl serverd.lab.example.com

如果结果都是 This is a test.page

那么就是搞定啦

完成实验 lab playbook-basic finish

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值