在选择备份介质时,建议使用 OSS 作为备份的目的端,OSS 作为无状态的对象存储,比有状态的 NFS4 有更高的稳定性。
如果需要使用 NFS 作为备份目的端,可参考本节内容部署 NFS。NFS 分软件和硬件两种,建议专用的 NFS 硬件设备。
注意事项
使用 NFS 环境时,需要保证先挂载 NFS,再开启备份。如果备份期间 NFS 出现问题,需要先停止数据备份和日志归档,再解决 NFS 的问题。
由于 OceanBase 数据库备份的并发控制需依赖 NFS4 的文件锁功能,故在挂载 NFS 时,需使用 NFS 4.1 及以上版本。
在使用 NFS 作为备份介质时,必须保证所有 OBServer 都挂载了同一个服务器的 NFS。同时,为保证备份的顺利进行,务必使用本文档中建议的参数挂载 NFS。挂载 NFS 具体操作请参见 部署 NFS 客户端。
在重启 OBServer 时,需要先启动 NFS,再启动 OBServer。
添加新的机器后,在启动 OBServer 前,需要保证新的机器挂载 NFS 成功或者可以备份到其他介质。
部署 NFS 软件的服务器端
注意
如果您使用的是 NFS 硬件设备,请跳过本操作,直接部署 NFS 客户端。
登录 NFS 服务器。
执行以下命令,通过 YUM 包管理器安装 NFS。
sudo yum install nfs-utils设置 Exports。
选择一个合适的目录作为共享目录,在选择时需要考虑备份所需的空间和性能。
例如,本文档中选择的共享目录为
/data/nfs_server/。使用
sudo vim /etc/exports命令打开配置文件,设置以下信息。/data/nfs_server/ 100.xx.xx.xx/16(rw,sync,all_squash)其中,
100.xx.xx.xx表示允许访问的网段。执行以下命令,为
nfsnobody赋权,确保nfsnobody有权限访问exports中指定的目录。sudo chown nfsnobody:nfsnobody -R /data/nfs_server
配置 NFS 参数。
执行
sudo vim /etc/sysconfig/nfs命令,打开配置文件。调整如下所示参数:
RPCNFSDCOUNT=8 RPCNFSDARGS="-N 2 -N 3 -U" NFSD_V4_GRACE=90 NFSD_V4_LEASE=90执行以下命令,重新启动 NFS。
sudo systemctl restart nfs-config sudo systemctl restart nfs-server
设置 Slot Table。
执行
sudo vim /etc/sysctl.conf命令,打开sysctl.conf配置文件,在文件中添加一行如下信息:sunrpc.tcp_max_slot_table_entries=128执行以下命令,将同时发起的 NFS 请求数量修改为 128。
sysctl -w sunrpc.tcp_max_slot_table_entries=128命令执行成功后,可以通过
cat /proc/sys/sunrpc/tcp_max_slot_table_entries命令查看设置是否生效,如果返回值为 128,则说明修改成功。(可选)重启机器。




