美文网首页
ansible剧本角色功能rsync

ansible剧本角色功能rsync

作者: Jzyue | 来源:发表于2019-07-06 15:32 被阅读0次

    作用:规范化配置,剧本文件名称和目录规范。

    一、目录规范

    在roles下面创建角色目录
    要求:完成备份服务器角色功能配置。

    1、创建角色目录

    cd /etc/ansible/roles
    mkdir rsync
    cd rsync

    2、在角色目录中创建规范化的子目录

    mkdir {tasks,handlers,vars,files,templates}

    • tasks:包含角色要执行的主要任务列表。
    • handlers:包含处理程序,可以由此角色使用,甚至可以再此角色之外的任何位置使用。
    • vars:角色的其他变量。
    • files:包含可以通过此角色部署的文件。
    • templates:包含可以通过此角色部署的模板。

    二、编辑角色目录剧本信息

    1、进入tasks

    [root@m01 roles]# cat rsync/tasks/main.yaml 
    - name: 01:安装部署软件
      yum: name=rsync state=installed 
    - name: 02:分发配置文件
      copy: src={{ item.src }} dest={{ Dest_dir }} mode={{ item.mode }}
      with_items:
        - {src: 'rsyncd.conf',    mode: '644'}
        - {src: 'rsync.password', mode: '600'} 
      notify: rsync_restart
      when: (ansible_hostname == "backup")
    - name: 03:创建虚拟用户
      user: name=rsync shell=/sbin/nologin create_home=no
      when: (ansible_hostname == "backup")
    - name: 04:创建备份目录
      file: path={{ item.path }} state=directory owner={{ item.owner }} group={{ item.group }}
      when: (ansible_hostname == "backup")
      with_items:
        - {path: '/backup', owner: 'rsync', group: 'rsync'}
    - name: 06:启动服务程序
      service: name=rsyncd state=started enabled=yes
      when: (ansible_hostname == "backup")
    - name: 07:检查确认服务是否启动
      shell: netstat -lntup|grep rsync
      register: port_info
      when: (ansible_hostname == "backup")
      tags: check01
    - name: 08:显示启动的端口信息
      debug: msg={{ port_info.stdout_lines }}
      when: (ansible_hostname == "backup")
      tags: check02
    - name: 01:创建密码文件
      copy: content='oldboy123' dest={{ Dest_dir }}rsync.password mode=600
      when: (ansible_hostname != "backup")
    

    说明:shell模块和其他模块书写在一个name中会产生冲突

    2、进入vars

    vim main.yaml
    Dest_dir: /etc/
    

    3、进入files

    [root@m01 files]# ll
    total 8
    -rw-r--r-- 1 root root 413 Jul  6 22:35 rsyncd.conf
    -rw-r--r-- 1 root root  23 Jul  6 22:36 rsync.password
    

    4、进入headlers目录

    vim main.yaml
    - name: rsync_restart
      service: name=rsyncd state=restarted
    

    三、目录汇总

    image.png

    相关文章

      网友评论

          本文标题:ansible剧本角色功能rsync

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