博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一键化部署rsync和nfs服务,挂载web服务器到nfs,实现共享目录和备份
阅读量:5954 次
发布时间:2019-06-19

本文共 1903 字,大约阅读时间需要 6 分钟。

使用ansible服务,实现批量管理

第一步,先分发公钥,实现ansible无密码进行控制
#!/bin/bash

#mk key 2

rm -f /root/.ssh/id*
ssh-keygen -t dsa -f /root/.ssh/id_dsa -P "" -q

#fenfa

for ip in 41 7 31

do
echo ================fs host 172.16.1.$ip======================
sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no root@172.16.1.$ip"
echo ================fs end 172.16.1.$ip=====================
done

第二步,编写剧本,实现安装rsync,nfs,以及挂载nfs共享目录并且实时备份

#安装相应软件

  • hosts: yxd
    tasks:
    • name: yum rsync,nfs and rpcbind
      yum: name=rsync,nfs-utils,rpcbind state=installed
      #配置rsync服务
  • hosts: 172.16.1.41
    tasks:
    • name: rsync conf
      copy: src=/etc/ansible/ansible_playbook/rsyncd.conf dest=/etc/rsyncd.conf
    • name: mk user
      user: name=rsync shell=/sbin/nologin createhome=no
    • name: mk dir
      file: path=/backup mode=0755 owner=rsync group=rsync state=directory
    • name: passfile
      shell: echo 'rsync_backup:123456' >/etc/rsync.password && chmod 0600 /etc/rsync.password
    • name: server on
      shell: rsync --daemon && echo 'rsync --daemon' >>/etc/rc.local
      #部署NFS并且配置密码文件,实现推数据无密码
  • hosts: 172.16.1.31
    tasks:
    • name: passfile
      shell: echo '123456' >/etc/rsync.password && chmod 0600 /etc/rsync.password
    • name: rsync
      shell: /usr/bin/rsync -az /etc/hosts rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
    • name: mk nfsdir
      file: path=/nfs state=directory owner=nfsnobody group=nfsnobody
    • name: nfs.conf
      copy: src=/etc/ansible/ansible_playbook/nfs.conf dest=/etc/exports backup=yes
    • name: rpcbind on
      service: name=rpcbind state=started enabled=yes
    • name: nfs on
      service: name=nfs state=started enabled=yes
    • name: sersync backup
      copy: src=/tmp/sersync/ dest=/sersync/
    • name: sersync on
      shell: chmod +x /sersync/bin/sersync && /sersync/bin/sersync -dro /sersync/conf/confxml.xml
      #挂载客户端到nfs共享目录
  • hosts: 172.16.1.7 172.16.1.8
    tasks:
    • name: mount nfs
      mount: state=mounted fstype=nfs src='172.16.1.31:/nfs' path=/mnt

转载于:https://blog.51cto.com/12928749/2067884

你可能感兴趣的文章
【Linux】Linux 在线安装yum
查看>>
oracle 管理操作 (转)
查看>>
DEV 等待窗口
查看>>
VS2017发布微服务到docker
查看>>
lombok
查看>>
Dev-FAT-UAT-PRO
查看>>
Android开发学习总结(五)——Android应用目录结构分析(转)
查看>>
[PHP]PHP rpc框架hprose测试
查看>>
Atom 编辑器系列视频课程
查看>>
C#三种定时器
查看>>
范数 L1 L2
查看>>
协同过滤及大数据处理
查看>>
Java8 本地DateTime API
查看>>
jQuery 增加 删除 修改select option
查看>>
[原][osgearth]osgearthviewer读取earth文件,代码解析(earth文件读取的一帧)
查看>>
springboot 常用插件
查看>>
一个基于特征向量的近似网页去重算法——term用SVM人工提取训练,基于term的特征向量,倒排索引查询相似文档,同时利用cos计算相似度...
查看>>
[转]Newtonsoft.Json高级用法
查看>>
Spring+SpringMVC+MyBatis+easyUI整合基础篇(一)项目简述及技术选型介绍
查看>>
DFI、DPI技术
查看>>