29、数据一致性nfs和rsync补充

1.rsync补充和总结

参数:
    -a  ##归档模式传输,等于-tropgdl
    -v  ##详细模式输出,打印速率,文件数量等
    -z  ##传输时进行压缩提高效率

    -r  ##递归传输目录以及子目录
    -t  ##保持文件属性信息
    -o  ##保持文件属主信息
    -p  ##保持文件权限
    -g  ##保持文件属组信息
    -l  ##保持软链接
    -P  ##显示同步的过程以及传输的进度等信息,和带宽速度
    -D  ##保持设备文件信息
    -L  ##保持软链接指向的目标文件
    -e  ##使用的信道协议,指定rsh的shell程序
    --exclude=PATTERN  ##指定排除不需要传输的文件模式
    --exclude-from=file  ##批量指定不需要同步的文件,写的这个文件里指定
    --bwlimit=1     ##限速传输1限速1MB/秒
    --partial   ##断点续传
    --delete    ##让目标目录和源目录保持一致,从哪来到哪去的左边是源
    --password-file=file  ##使用密码文件免密传输

--exclude=PATTERN举例:
    --exclude=2.txt不加路径只写文件名,排除2.txt
    touch /root/hsc/{1..3}.txt
    rsync -avz  /root/hsc/   172.16.1.204:/root/   --exclude=2.txt
    创建了123文件,排除2,只推过去1.txt和3.txt
--exclude-from=file举例:
    touch hsc/{1..6}.txt
    [root@web01 ~]# cat name.txt 
    1.txt
    3.txt
    5.txt
    rsync -avz  /root/hsc/   172.16.1.204:/root/   --exclude-from=/root/name.txt
    排除文件里指定的文件,文件里制定了135排除,所以传过去了246

--delete:
    rsync -avz  /root/hsc/   172.16.1.204:/root/   --delete
    从哪来到哪去,已覆盖目录的方式整个目录及以下覆盖,前面的覆盖后面的,文件内容也一起覆盖
    相当于cp -r /backup/etc   /etc

案例:

案例:
1.客户端提前准备存放的备份的目录,目录规则如下:/backup/web01_172.16.1.7_2018-09-02 date +%F
2.客户端在本地打包备份(系统配置文件、应用配置等)拷贝至/backup/web01_172.16.1.7_2018-09-02
3.客户端最后将备份的数据进行推送至备份服务器 守护进程
4.客户端每天凌晨1点定时执行该脚本
5.客户端服务器本地保留最近7天的数据,避免浪费磁盘空间


#!/bin/bash
mkdir -p /backup/`hostname`_`hostname -I | awk '{print $2}'`_`date +%F` &>/dev/null
tar zcf /backup/`hostname`_`hostname -I | awk '{print $2}'`_`date +%F`/etc.tar.gz /etc &>/dev/null
rsync -avz /backup/`hostname`_`hostname -I | awk '{print $2}'`_`date +%F`  rsync_backup@172.16.1.204::data  --password-file=/etc/rsync.password  &>/dev/null
find  /backup/  -mtime +7 | xargs  rm -rf


00 01 * * *  root  sh /root/backup.sh 

2.数据一致性nfs

怎么保证多台负载均衡服务器数据的一致性,网络挂载数据服务器解决

负载均衡服务器不存储数据

2.1.配置流程

  • 准备两台前端负载均衡服务器,一台数据服务器
  • web01,web02,data-nfs01
  • 检查三台服务器有没有nfs软件
  • 只配置数据服务器data-nfs01的nfs软件,web内网局域网 网络挂载使用即可
数据服务器data-nfs01:

1.配置数据服务器data-nfs01
data-nfs01的nfs配置文件/etc/exports
    /data/  172,16,1,0/24(rw,sync,all_squash)
    #说明:允许172,16,1网段的254个主机读写/data/,以压缩用户的方式读写all_squash
    #参数中使用的a11_squash用户的身份压缩,压缩成哪个用户就使用哪个用户的身份往/data中写数据

2.启动服务,并开机自启
    systemctl  enable  --now  nfs

3.查看压缩的用户
    cat /var/lib/nfs/etab
    根据uid查password里的用户

4.创建共享目录/data/,属主属组改为上面的用户
    mkdir /data/
    chown xxx:xxx  /data/

5.完成并用web挂载测试,数据一致性
web01:
挂载并写入开机挂载,测试
mount  -t  nfs  172.16.1.200:/data/   /img/
df-h 
172.16.1.200:/data/   /img/    nfs    defaults      0  0




web02:
同上web01

2.2指定用户配置

nfs配置文件指定uid和gid即可,但是需要先创建用户和组

1.创建一个www的组,指定组id为555
2.创建一个www虚拟用户,指定uid和gid为555
3.更改nfs配置文件
    /data/  172,16,1,0/24(rw,sync,all_squash,anonuid=555,anongid=555)

4. 其他配置步骤按照2.1即可
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇