需求:
在多个不同机器上部署同一个tomcat做服务器负载均衡(nginx),每个tomcat实例都有上传静态自己的功能(比如图片)。但是对外访问的时候,需要一个统一的出口。所以这里使用NFS文件共享服务。
搭建过程如下:
NFS文件共享服务搭建
1.环境:
NFS服务器地址:192.168.0.100
tomcat1地址:192.168.0.101
tomcat2地址:192.168.0.102
2.安装NFS服务器(192.168.0.100): sudo apt-get install nfs-kernel-server
3.配置NFS服务器的共享目录:
sudo vim /etc/exports
在最后面添加一行:/nfs *(insecure,rw,sync,no_root_squash,no_subtree_check)
(/nfs为root目录下新建的一个文件夹,这个文件夹就是nfs服务对外的共享目录,名字可以随便。
,注意如果当前登录用户不是root那么这个目录必须要在root目录下,不可以是当前登录用户的根目录)
启动nfs服务器(前提关闭防火墙):sudo service nfs-kernel-server start|restart|stop
到此NFS服务器就搭建完成了。
4.配置NFS客户端(192.168.0.101,192.168.0.102)
假设tomcat1,tomcat2实例会上传文件到各自的/home/pan/upload目录下(两台机器都有这个目录)
对这个目录要执行:chmod 777 /home/pan/upload命令
这个时候就需要通过NFS共享服务将这两台服务器里/home/pan/upload目录的内容挂载到NFS的共享服务目录下。
配置有3种,这里以最简单的那种:
sudo mount -t nfs 192.168.0.100:/nfs /home/pan/upload
若不出问题就可以查看是否挂载了
sudo showmount -e 192.168.0.100
到此客户端挂载NFS服务配置就可以了。
5.测试
在任意一台tomcat所在机器的/home/pan/upload目录下新建一个文件/文件夹
然后去192.168.0.100的NFS服务器上查看/nfs目录下是否已经存在同样的文件/文件夹
注意:nginx访问的时候,可以配置一个访问静态资源的server,然后root指向这个NFS的共享文件夹
本文出自 “重新来学JAVA” 博客,请务必保留此出处http://3131854.blog.51cto.com/3121854/1684433
原文地址:http://3131854.blog.51cto.com/3121854/1684433