暂无图片
暂无图片
3
暂无图片
暂无图片
暂无图片

OceanBase管理数据库部署NFS服务端

2023-08-24
278

在选择备份介质时,建议使用 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 客户端。

  1. 登录 NFS 服务器。

  2. 执行以下命令,通过 YUM 包管理器安装 NFS。

    sudo yum install nfs-utils
    
  3. 设置 Exports。

    1. 选择一个合适的目录作为共享目录,在选择时需要考虑备份所需的空间和性能。

      例如,本文档中选择的共享目录为 /data/nfs_server/

    2. 使用 sudo vim /etc/exports 命令打开配置文件,设置以下信息。

      /data/nfs_server/ 100.xx.xx.xx/16(rw,sync,all_squash)
      

      其中,100.xx.xx.xx 表示允许访问的网段。

    3. 执行以下命令,为 nfsnobody 赋权,确保 nfsnobody 有权限访问 exports 中指定的目录。

      sudo chown nfsnobody:nfsnobody -R /data/nfs_server
      
  4. 配置 NFS 参数。

    1. 执行 sudo vim /etc/sysconfig/nfs 命令,打开配置文件。

    2. 调整如下所示参数:

      RPCNFSDCOUNT=8
      RPCNFSDARGS="-N 2 -N 3 -U"
      NFSD_V4_GRACE=90
      NFSD_V4_LEASE=90
      
    3. 执行以下命令,重新启动 NFS。

      sudo systemctl restart nfs-config
      
      sudo systemctl restart nfs-server
      
  5. 设置 Slot Table。

    1. 执行 sudo vim /etc/sysctl.conf 命令,打开 sysctl.conf配置文件,在文件中添加一行如下信息:

      sunrpc.tcp_max_slot_table_entries=128
      
    2. 执行以下命令,将同时发起的 NFS 请求数量修改为 128。

      sysctl -w sunrpc.tcp_max_slot_table_entries=128
      

      命令执行成功后,可以通过 cat /proc/sys/sunrpc/tcp_max_slot_table_entries 命令查看设置是否生效,如果返回值为 128,则说明修改成功。

    3. (可选)重启机器。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论