通过剧本部署rsync,lsync,nfs服务

1.创建rsync的配置文件

[root@master-61 /server]# vim /rsyncd.conf
[root@master-61 /server]# cat /rsyncd.conf 
uid = www 
gid = www 
port = 873
fake super = yes
use chroot = no
max connections = 200
timeout = 600
ignore errors
read only = false
list = false
auth users = rsync_backup
secrets file = /etc/rsync.passwd 
log file = /var/log/rsyncd.log
#####################################
[backup]
comment =  about rsync
path = /backup

2.创建rsync的密码文件

[root@master-61 /server]# vim /rsync.passwd
[root@master-61 /server]# cat /rsync.passwd 
rsync_backup:123456

3.创建lsync的配置文件

[root@master-61 /server]# vim /lsyncd.conf
[root@master-61 /server]# cat /lsyncd.conf 
settings {
    logfile      ="/var/log/lsyncd/lsyncd.log",
    statusFile   ="/var/log/lsyncd/lsyncd.status",
    inotifyMode  = "CloseWrite",
    maxProcesses = 8,
    }

sync {
    default.rsync,
    source    = "/nfs-data",
    target    = "rsync_backup@172.16.1.41::backup",
    delete= true,
    exclude = {".*"},
    delay=1,
    rsync     = {
        binary    = "/usr/bin/rsync",
        archive   = true,
        compress  = true,
        verbose   = true,
        password_file="/etc/rsync.passwd",
        _extra={"--bwlimit=200"}
        }
    }

4.创建lsync的密码文件

[root@master-61 /server]# vim /server/rsync.passwd
[root@master-61 /server]# cat /server/rsync.passwd 
123456

5.创建nfs的配置文件

[root@master-61 /server]# vim /etc/exports
[root@master-61 /server]# cat /etc/exports 
#共享目录1
/nfs-data  172.16.1.0/24(rw,sync,all_squash)

6.编写剧本,一键部署

[root@master-61 /server]# cat install_all.yaml 
- hosts: nfs
  tasks: 
    - name: 01安装nfs-utils,rpcbind,lsyncd
      yum: 
        name: "{{ item }}"
        state: present
      loop: 
        - nfs-utils
        - rpcbind
        - lsyncd
    - name: 02发送nfs-utils配置文件
      copy:
        src: /etc/exports
        dest: /etc/exports
      notify: 
        - 重启nfs
    - name: 03发送lsyncd密码文件
      copy: 
        src: /server/rsync.passwd
        dest: /etc/rsync.passwd
        mode: 600
    - name: 04发送lsyncd配置文件
      copy: 
        src: /lsyncd.conf
        dest: /etc/lsyncd.conf
      notify:
        - 重启lsyncd
    - name: 05创建共享目录
      file:
        path: /nfs-data
        state: directory
        owner: nfsnobody
        group: nfsnobody
    - name: 06启动服务
      systemd: 
        name: "{{ item }}" 
        state: started
      loop: 
        - rpcbind
        - nfs
        - lsyncd
  handlers:
    - name: 重启nfs
      systemd: 
        name: nfs
        state: restarted  
    - name: 重启lsyncd
      systemd: 
        name: lsyncd

- hosts: rsync
  tasks: 
    - name: 01安装rsync软件
      yum: 
        name: rsync
        state: present
    - name: 02发送配置文件
      copy: 
        src: /rsyncd.conf
        dest: /etc/rsyncd.conf
      notify: 
        - 重启rsync
    - name: 03发送密码文件
      copy: 
        src: /rsync.passwd
        dest: /etc/rsync.passwd
        mode: 600
    - name: 04创建www用户
      user:
        name: www
        create_home: no
        shell: /sbin/nologin
    
    - name: 05创建共享目录
      file:
        path: /backup
        state: directory
        owner: www
        group: www
    - name: 启动rsync服务
      systemd: 
        name: rsyncd
        state: started
  handlers:
    - name: 重启rsync
      systemd: 
        name: rsyncd
        state: restarted

- hosts: web
  tasks: 
    - name: 01安装nfs-utils
      yum: 
        name: nfs-utils
        state: present
    - name: 02挂载共享目录
      mount: 
        src: 172.16.1.31:/nfs-data
        path: /nfs_test
        fstype: nfs
        state: mounted
[root@master-61 /server]# ansible-playbook install_all.yaml 

PLAY [nfs] ***********************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************
ok: [172.16.1.31]

TASK [01安装nfs-utils,rpcbind,lsyncd] **********************************************************************************************
ok: [172.16.1.31] => (item=nfs-utils)
ok: [172.16.1.31] => (item=rpcbind)
ok: [172.16.1.31] => (item=lsyncd)

TASK [02发送nfs-utils配置文件] *********************************************************************************************************
changed: [172.16.1.31]

TASK [03发送lsyncd密码文件] ************************************************************************************************************
ok: [172.16.1.31]

TASK [04发送lsyncd配置文件] ************************************************************************************************************
changed: [172.16.1.31]

TASK [05创建共享目录] ******************************************************************************************************************
ok: [172.16.1.31]

TASK [06启动服务] ********************************************************************************************************************
ok: [172.16.1.31] => (item=rpcbind)
ok: [172.16.1.31] => (item=nfs)
changed: [172.16.1.31] => (item=lsyncd)

RUNNING HANDLER [重启nfs] **********************************************************************************************************
changed: [172.16.1.31]

RUNNING HANDLER [重启lsyncd] *******************************************************************************************************
ok: [172.16.1.31]

PLAY [rsync] *********************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************
ok: [172.16.1.41]

TASK [01安装rsync软件] ***************************************************************************************************************
ok: [172.16.1.41]

TASK [02发送配置文件] ******************************************************************************************************************
ok: [172.16.1.41]

TASK [03发送密码文件] ******************************************************************************************************************
ok: [172.16.1.41]

TASK [04创建www用户] *****************************************************************************************************************
ok: [172.16.1.41]

TASK [05创建共享目录] ******************************************************************************************************************
ok: [172.16.1.41]

TASK [启动rsync服务] *****************************************************************************************************************
ok: [172.16.1.41]

PLAY [web] ***********************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************
ok: [172.16.1.7]
ok: [172.16.1.8]
ok: [172.16.1.9]

TASK [01安装nfs-utils] *************************************************************************************************************
ok: [172.16.1.7]
ok: [172.16.1.8]
ok: [172.16.1.9]

TASK [02挂载共享目录] ******************************************************************************************************************
ok: [172.16.1.9]
ok: [172.16.1.7]
ok: [172.16.1.8]

PLAY RECAP ***********************************************************************************************************************
172.16.1.31                : ok=9    changed=4    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
172.16.1.41                : ok=7    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
172.16.1.7                 : ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
172.16.1.8                 : ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
172.16.1.9                 : ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值