目录
安装快照备份工具BR
tiup install br
NFS场景的快照备份与恢复
由于TiKV是以分片的方式将数据分布在各节点上,在做备份时各个节点均需将数据写入到目标存储中,因此需为BR提前建立一个各个节点均能够访问的目标存储,如AWS、S3、minio、nfs等。
为快照目录建立共享
备份源的TiDB快照和恢复数据,均需分别建立共享目录,此处一并举例,不再分别赘述。
NFS服务端配置
安装nfs服务
yum install -y nfs-utils
启动nfs服务
#启动nfs服务
systemctl start nfs
#设置nfs开机自启动
systemctl enable nfs
#查看nfs服务状态
systemctl status nfs
#重启nfs服务
systemctl restart nfs
编辑共享目录配置
vim /etc/exports
- 添加如下内容:
/datalist/backup 10.8.15.31(rw,no_root_squash,no_all_squash,sync) 10.8.15.32(rw,no_root_squash,no_all_squash,sync)
常用配置参数:
参数 |
参数说明 |
---|---|
ro |
只读访问 |
rw |
读写访问 |
sync |
所有数据在请求时写入共享 |
async |
NFS在写入数据前可以相应请求 |
secure |
NFS通过1024以下的安全TCP/IP端口发送 |
insecure |
NFS通过1024以上的端口发送 |
wdelay |
如果多个用户要写入NFS目录,则归组写入(默认) |
no_wdelay |
如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置 |
Hide |
在NFS共享目录中不共享其子目录 |
no_hide |
共享NFS目录的子目录 |
subtree_check |
如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认) |
no_subtree_check |
和上面相对,不检查父目录权限 |
all_squash |
共享文件的UID和GID映射匿名用户anonymous,适合公用目录 |
no_all_squash |
保留共享文件的UID和GID(默认) |
root_squash |
root用户的所有请求映射成如anonymous用户一样的权限(默认) |
no_root_squash |
root用户具有根目录的完全管理访问权限 |
anonuid=xxx |
指定NFS服务器/etc/passwd文件中匿名用户的UID |
anongid |
指定NFS服务器/etc/passwd文件中匿名用户的GID |
加载共享配置
exportfs -rv
NFS客户端配置
共享挂载选项
参数 |
参数说明 |
---|---|
async/sync |
执行时是否使用同步读取方式 |
auto/noauto |
mount -a时是否自动挂载,开机自动挂载 |
exec/noexec |
该文件系统中的执行文件是否允许执行 |
atime/noatime |
文件被改动时是否更新访问时间 |
dev/nodev |
是否启用这个文件系统上的设备节点文件(块和字符设备) |
suid/nosuid |
在这个文件系统上是否要启用特殊权限 |
user/nouser |
是否允许普通用户执行mount 命令 |
rw/ro |
文件系统是可读写还是只读挂载 |
default |
相当于rw,suid,dev,exec,auto,nouser,async 的组合 |
_netdev |
表明此文件系统位于网络上。用于防止网络未启用的时候就挂载 |
客户端查看服务端共享目录信息
showmount -e 10.8.15.30
共享客户端,手动挂载
mount -t nfs 10.8.15.30:/datalist/backup /datalist/backup
- 挂载完成后,可使用df命令查看挂载结果。
加入磁盘配置,实现自启动挂载
可将共享配置加入至磁盘配置文件中,使其开机自动挂载
- 编辑磁盘配置文件
vim /etc/fstab
添加如下内容:
10.8.15.30:/datalist/backup /datalist/backup nfs defaults,_netdev 0 0
- 非开机时,手动挂载
mount -a
说明:mount -a为依据/etc/fstab中的配置,进行磁盘挂载。
- 挂载完成后,可使用df命令查看挂载结果。
NFS安全配置
服务端限制可挂载地址
在进行共享目录配置时,尽可能使用限定可挂载的目标客户端,如:
/datalist/backup 10.8.15.31(rw,no_root_squash,no_all_squash,sync) 10.8.15.32(rw,no_root_squash,no_all_squash,sync)
尽可能不使用以下网段的配置方式:
/datalist/backup 10.8.15.0/24(rw,no_root_squash,no_all_squash,sync)