我是靠谱客的博主 清秀棒球,最近开发中收集的这篇文章主要介绍playbook的编写,验证yaml语法,验证playbook, 运行playbook命令 ,playbook实例,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

playbook的编写

playbook是什么

playbook被大家翻译成为剧本 可以认为它是ansible自定义的一门语言,就相当于linux中的shell

基本语法
使用缩进表示层级关系
缩进时使用空格

  1. 列表:

#定义:以短横线开头 + 空格 + 具体的值

在这里插入图片描述

2.字典:

#定义 key + : + 空格 + 值 即:key: value

验证yaml语法是否正确使用:

[root@localhost opt]# ansible-playbook --syntax httpd.yaml -i hosts

playbook: httpd.yaml

验证playbook是否正确

[root@localhost opt]# ansible-playbook -C httpd.yaml -i hosts

运行playbook,httpd.yaml

[root@localhost opt]# ansible-playbook httpd.yaml -i hosts

例题一:编写一个playbook,

1.安装httpd服务 (yum)
2.编写一个简单网页测试内容 (copy)
3.启动服务并加入开机自启 (service)
4.放行firewalld对应的端口 (firewalld)

[root@localhost opt]# vi httpd.yaml 
- hosts: dbserver
  tasks:

    - name: Install httpd server
      yum: name=httpd state=present

    - name: configure httpd server
      copy: src=/opt/xjm/http.conf dest=/etc/httpd/conf/httpd.conf b
ackup=yes

    - name: configure httpd website
      copy: src=/opt/xjm.txt dest=/var/www/html/xjm.html owner=apach
e group=apache

    - name: httpd server enabled
      service: name=httpd state=started enabled=yes

    - name: service firewalld server
      service: name=firewalld state=started

    - name: configure firewalld sercer
      firewalld: zone=public port=8088/tcp permanent=yes immediate=y
es state=enabled

在浏览器打开192.168.88.129:8088/tcp 就能访问内容啦

例题二:使用ansible安装并且配置nfs服务

服务端:192.168.88.128
1.安装nfs
2.配置nfs
3.根据配置创建目录,创建用户,授权
4.启动并加入开机自启

客户端:192.168.88.129
1.准备一个空目录
2.挂载88.128上面共享的目录

- hosts: 192.168.88.128
  tasks:

    - name: install nfs server
      yum: name=nfs-utils state=present


    - name: configure nfs server
      copy: src=./exports dest=/etc/exports backup=yes

    - name: create nfs group
      group: name=www gid=666


    - name: create nfs user
      user: name=www uid=666 group=666 shell=/sbin/nologin create_home=no

    - name: create nfs data
      file: path=/data state=directory owner=www group=www recurse=yes

    - name: service nfs server
      service: name=nfs state=started enabled=yes

- hosts: 192.168.88.129
  tasks:

    - name: client create nfs data
      file: path=/nfs_tt state=directory

    - name: client mount nfs server
      mount: 
        src: 192.168.88.128:/data
        path: /nfs_tt
        fstype: nfs
        opts: defaults
        state: mounted

例题三:ansible安装并配置httpd服务,根据不同的主机配置不同的网站

[root@localhost opt]# vi http.yml
- hosts: dbserver
  tasks:
    - name: install httpd server
      yum: name=httpd state=present

    - name: configure httpd server
      copy: src=./xjm/http.conf  dest=/etc/httpd/conf/httpd.conf bac
kup=yes

    - name: create httpd group
      group: name=ttt gid=8088


    - name: create httpd user
      user: name=ttt uid=8088 shell=/sbin/nologin create_home=no


    - name: service httpd server
      service: name=httpd state=started

    - name: service firewalld server
      service: name=firewalld state=started


    - name: configure firewalld server
      firewalld:
        zone: public
        port: 8088/tcp
        permanent: yes
        immediate: yes
        state: enabled



- hosts: 192.168.88.129
  tasks:
    - name: configure web site
      copy: content='web-129...' dest=/var/www/html/index.html

验证测试

在这里插入图片描述

最后

以上就是清秀棒球为你收集整理的playbook的编写,验证yaml语法,验证playbook, 运行playbook命令 ,playbook实例的全部内容,希望文章能够帮你解决playbook的编写,验证yaml语法,验证playbook, 运行playbook命令 ,playbook实例所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部