美文网首页
day40课堂笔记(playbook 剧本)

day40课堂笔记(playbook 剧本)

作者: 五月_w | 来源:发表于2019-04-27 14:41 被阅读0次

    第一章、一键完成以下项目

    1.1、各一键完成rsync服务端和客户端。

    - hosts: rsync_s
      tasks:
    - name: 服务端创建用户
      user:
        name: rsync
    - name: 创建目录以及授权
      file:
        name: backup
        owner: rsync
        group: rsync
        state: directory
    - name: 服务端设置密码文件
      copy:
        content: rsync_backup:oldboy
        mode: 0600
        dest: /etc/rsync.password
    - name: 重启服务并设置开机自启动
      systemd:
        name: rsyncd
        state: started
        enabled: yes
    - hosts: rsync_c
      tasks:
    - name: 客户端设置密码文件
      copy:
        content: export RSYNC_PASSWORD=oldboy
        dest: /etc/bashrc
    - name: 推送测试
      shell: rsync -az /etc/hosts rsync_backup@172.16.1.15::backup
    
    image.png

    1.2、各一键完成nfs服务端和客户端。

    - hosts: nfs_s
      tasks:
    - name: 安装nfs和rpcbind
      yum:
        name: nfs-utils,rpcbind
        state: installed
    - name: 启动并设置开机启动
      systemd:
        name: nfs
        name: rpcbind
        enabled: yes
        state: started
    - name: 创建虚拟用户并指定UID
      user:
        name: www
        uid: 1111
    - name: 配置配置文件
      shell: echo '/data 172.16.1.0/24(rw,sync,all_squash,anonuid=1111,anongid=1111)' >>/etc/exports
    - name: 平滑重启
      systemd:
        name: nfs
        state: reloaded
    - name: 挂载
      command: mount -t nfs 172.16.1.14:/data /opt
    - hosts: nfs_c
      tasks:
    - name: 安装nfs和rpcbind
      yum:
        name: nfs-utils,rpcbind
        state: installed
    - name: 启动并设置开机启动
      systemd:
        name: nfs
        name: rpcbind
        enabled: yes
        state: started
    - name: 挂载
      command: mount -t nfs 172.16.1.14:/data /opt
    
    image.png

    1.3、各一键完成sersync服务端和客户端。

    - hosts: nfs_s
      tasks:
    - name: 启动sersync服务
      shell: /application/sersync/bin/sersync -do /application/sersync/conf/confxml.xml
    
    image.png

    第三章、playbook

    3.1、什么是playbook?

    把所有操作按照ansible编程语法,放在文件里执行就是playbook
    
    image.png

    3.2、playbook的优势

    1)功能比ad-hoc更全
    2) 能很好的控制先后顺序,以及依赖关系
    3)语法展现更加的直观
    4)ad-hoc无法持久使用,playbook可以持久使用
    

    3.2、ansible剧本编写格式说明

     ansible剧本PYyaml语法规则进行缩写,yaml文件基本编写规则
           规则1:缩进
              yaml使用一个固定的缩进风格表示数据层结构关系,需要每个缩进级别有两个空格组成。
           规则2:冒号
                每个冒号后面一定要有一个空格(以冒号结尾不需要空格,表示文件路径的模板可以不需要空格)
           规则3:短横线
                想要表示列表项,使用一个短横杠加一个空格,多个项使用同样的缩进级别作为同一个列表的一部分
    

    3.3、playbook 替代方案

    playbook替代方案1:

    判断、循环可以用脚本实现
    测试:  ansible-playbook -C /etc/ansible/yaml/p1.yml
    执行: ansible-playbook  /etc/ansible/yaml/p1.yml
    
    image.png

    playbook替代方案2:脚本写通用

    image.png

    第四章、ansible实践

    实践1、echo oldboy linux >/tmp/oldboy.log

    cd /etc/ansible/
    mkdir yaml
    cd /etc/ansible/yaml
    vim p1.yml
    ansible-playbook -C /etc/ansible/yaml/p1.yml
    ansible-playbook   /etc/ansible/yaml/p1.yml
    
    image.png
    image.png

    实践2、touch /tmp/oldboy1

    image.png
    image.png

    实践3、删除/tmp/oldboy1

    image.png
    image.png

    相关文章

      网友评论

          本文标题:day40课堂笔记(playbook 剧本)

          本文链接:https://www.haomeiwen.com/subject/btragqtx.html