1.说明

在jpaas中,我们的附件可以存储到fastdfs ,也可以存储到 文件系统,如果存储到文件系统,我们会在本地进行存储,那么在多个微服务实例部署的情况下,那么他们会分别存在自己的本地,这样,文件存储就会有问题。

解决方案是我们使用一个存储,这个存储可以共享,我们在文件保存的时候,存储到这个共享存储上面。这里我们可以使用nfs来实现。

2.实现步骤

实现步骤分为客户端和服务端。

2.1 配置NFS服务端

2.1.1 安装NFS

首先查看nfs 是否已经安装

  1. rpm -qa |grep nfs
  2. rpm -qa |grep rpcbind

如果有就会显示上图。

使用 下面的命令进行安装

yum -y install nfs-utils rpcbind

设置开机启动启动。

  1. systemctl start nfs
  2. systemctl start rpcbind
  3. systemctl enable nfs
  4. systemctl enable rpcbind

2.1.2 创建目录并共享

创建目录

  1. mkdir -p /jpaas/share
  2. chmod -R 777 /jpaas/share

实现共享

  1. //写入共享目录到 exports 文件
  2. echo "/jpaas/share 192.168.1.*(rw,sync,no_root_squash)" >> /etc/exports
  3. //使共享生效
  4. exportfs -a

检查共享目录是否设置正确

执行命令

showmount -e

调整防火墙设置 或者关闭 防火墙

调整命令

  1. firewall-cmd --add-service=nfs --permanent --zone=public
  2. firewall-cmd --add-service=mountd --permanent --zone=public
  3. firewall-cmd --add-service=rpc-bind --permanent --zone=public
  4. firewall-cmd --reload

2.2 NFS客户端

2.2.1 安装NFS

和服务端的步骤一样

2.2.2 检查共享目录是否正确

showmount -e 192.168.1.107

ip 是服务端的IP

2.2.3 挂载远程服务器NFS分区到本地挂载点

创建挂载目录

mkdir //jpaas/share

挂载

mount -t nfs -o nolock 192.168.1.107:/mnt/share /jpaas/share

2.2.4 查看是否成功

df -Th

我们可以客户端上传一个文件,可以发现数据存储到 远端文件系统了。

2.2.5 取消挂载

umound /jpaas/share

我们取消挂载,发现 /jpaas/share 目录是空的。

2.2.6 配置客户端开机自动

上面的方式,重启后挂载时回丢掉的,我们可以配置开启启动进行挂载。

编辑 /etc/fstab 文件

192.168.1.107:/mnt/share /jpaas/share nfs defaults 0 0

使用 mount -a 命令将挂载立即生效。

重启再测试挂载是否生效,发现重启后,可以直接通过路径访问到远程文件。

文档更新时间: 2021-03-03 11:21   作者:csx