多節點Tomcat利用NFS服務實現目錄共享
一、NFS應用場景
1、NFS(Network File system)是一種基於TCP/IP傳輸的網路檔案系統協議
2、通過使用NFS協議,NFS客戶機可以像訪問本地目錄一樣訪問遠端NFS伺服器中的共享資源。
3、在企業群集架構的工作場景中,特別是中小型網站公司,NFS網路檔案系統一般被用來儲存共享視訊、圖片等靜態資原始檔。列如將網站使用者上傳的檔案放到NFS共享裡面,通過網路共享,讓網路上的其他伺服器能夠掛載訪問共享目錄內的資料
二、系統環境
1、一臺Centos7作為NFS伺服器繫結同一塊網絡卡vnet1:192.168.80.100
2、兩臺Centos7分別作為Tomcat伺服器且繫結同一塊網絡卡vnet1。
對應的IP地址分別為:192.168.80.120
192.168.80.130
3、對應拓撲圖如下:
其中測試終端為win10真機,NFS伺服器上傳商城專案,tomcat掛載到NFS伺服器上,最在測試終端訪問。
三、案列部署
部署NFS伺服器
1、安裝nfs-utils、rpcbind軟體包
yum install nfs-utils rpcbind -y
2、設定共享目錄vi /etc/exports //編譯配置檔案
加入下面內容
/opt/tomcatpub *(rw,sync) //指定共享目錄的路徑和許可權
mkdir /opt/tomcatpub //新建共享目錄
chown nfsnobody /opt/tomcatpub //目錄提權
上傳商城專案tar xf SLSaleSystem.tar.gz -C /opt/tomcatpub/ //將商城專案解壓到共享目錄
3、啟動NFS服務驗證
systemctl start rpcbind //先啟動
systemctl start nfs //後啟動
部署tomcat伺服器(兩臺配置相同)
說明:
由於tomat伺服器是執行在jdk環境中,因此首先要搭建jdk環境。
1、搭建jdk環境
tar xvf jdk-8u144-linux-x64.tar.gz //解壓jdk cp -r jdk1.8.0_144/ /usr/local/java //將解壓好的jdk下的檔案複製到java目錄下 vi /etc/profile //新增jdk系統變數 export JAVA_HOME=/usr/local/java export JRE_HOME=/usr/local/java/jre export PATH=$PATH:/usr/local/java/bin export CLASSPATH=./:/usr/local/java/lib:/usr/local/java/jre/lib source /etc/profile //重新整理下檔案 java -version //檢視版本成功說明環境搭建成功
2、安裝tomcat
tar xvf apache-tomcat-8.5.23.tar.gz //解壓軟體包
cp -r apache-tomcat-8.5.23 /usr/local/tomcat8 //將解壓好包複製到tomcat8目錄下
//將tomcat啟動命令軟連結到系統命令的目錄下重新命名為tomcatup方便使用
ln -s /usr/local/tomcat8/bin/startup.sh /usr/bin/tomcatup
ln -s /usr/local/tomcat8/bin/shutdown.sh /usr/bin/tomcatdown
tomcatup //啟動tomcat
3、在tomcat伺服器上安裝nfs服務
yum install nfs-utils rpcbind -y
systemctl start rpcbind //先啟動
systemctl start nfs //後啟動
4、檢視nfs伺服器上共享目錄showmount -e 192.168.80.100
5、添加掛載點
mkdir /root/aa //新建掛載目錄
mount 192.168.80.100:/opt/tomcatpub /root/aa //將新建目錄掛載到NFS共享目錄上。
df -hT //檢視掛載是否成功
ls /root/aa //檢視掛載目錄
自身的tomcat伺服器並沒有上傳商城專案,而檔案伺服器上的商城專案出現在掛載目錄中
6、修改tomcat主配置檔案
vi /usr/local/tomcat8/conf/server.xml
在webapps站點下指定專案的路徑
<Context docBase="/root/aa/SLSaleSystem" path="" reloadable="flase"/>
tomcatdown
tomcatup //重啟tomcat伺服器
7、驗證是否成功
訪問192.168.80.120:8080