一、NFS的介紹
1.概念:它的主要功能是通過網絡讓不同的主機系統之間可以彼此共享文件或目錄。NFS服務器
端共享的數據文件目錄掛載到NFS客戶端本地系統中(就是某個掛載點下)。從NFS客
戶端自己的磁盤分區或者目錄一樣,而實際上是篡改段的服務器目錄。
NFS網絡文件系統的使用很像windows系統的網絡共享,安全共呢個,網絡驅動器映射,
這也和Linux里的samba服務類似。
2.NFS在企業中的應用場景
在企業集群架構的工作場景中,NFS網絡文件系統一般被用於存儲共享視頻、圖片、
附件等靜態資源文件
二、為什么需要有共享存儲
1.共享存儲解決了多台服務器需要數據同步的操作,也就是把文件存在后台的共享存儲服務器上, 通過前端網頁服務器訪問。
提示:中小型互聯網公司企業一般不會買硬件存儲太貴了,大公司如果發展很快的話,可能會 臨時買存儲頂一下網站壓力,當網站並發繼續增大后,硬件存儲擴展就相對費勁。
三、NFS掛載原理詳細介紹
提示:mount 源 目標
mount 遠端地址:/共享目錄 /掛載目錄
問題:nfs傳輸端口不固定,導致客戶端不知道那個端口進行數據傳輸
解決方案:就是RPC(中文意識就是遠程過程調用)協議/服務來實現的,
四、什么是RPC(中間人)
因為NFS支持的功能相當多,而不同的功能都會使用不同的程序來啟動,每啟動一個功能都會啟用 一些端口來傳輸數據,因此NFS的功能所對應的端口無法固定,而是隨機選取端口傳輸數據的。就需要RPC
五、客戶讀寫nfs全過程,簡單原理
1.先開啟RPC服務
2.啟動NFS服務,然后向RPC服務器注冊啟動的端口
3.客戶請求nfx服務
4.RPC返回端口給客戶端
5.客戶端拿着RPC給的端口去請求數據傳輸
六、NFS軟件
要部署nfs服務要安裝下面的軟件包
*nfs-utils:這個是NFS服務主程序
包括rpc.nfsd、rpc.mountd兩個daemons和相關的文檔說明及執行命令文件等。
*portmap:cen5下面rpc的主程序
*rpcbind是cen6下面rpc的主程序
七、NFS配置
1.首先檢查軟件包的安裝情況:
1.概念:它的主要功能是通過網絡讓不同的主機系統之間可以彼此共享文件或目錄。NFS服務器
端共享的數據文件目錄掛載到NFS客戶端本地系統中(就是某個掛載點下)。從NFS客
戶端自己的磁盤分區或者目錄一樣,而實際上是篡改段的服務器目錄。
NFS網絡文件系統的使用很像windows系統的網絡共享,安全共呢個,網絡驅動器映射,
這也和Linux里的samba服務類似。
2.NFS在企業中的應用場景
在企業集群架構的工作場景中,NFS網絡文件系統一般被用於存儲共享視頻、圖片、
附件等靜態資源文件
二、為什么需要有共享存儲
1.共享存儲解決了多台服務器需要數據同步的操作,也就是把文件存在后台的共享存儲服務器上, 通過前端網頁服務器訪問。
提示:中小型互聯網公司企業一般不會買硬件存儲太貴了,大公司如果發展很快的話,可能會 臨時買存儲頂一下網站壓力,當網站並發繼續增大后,硬件存儲擴展就相對費勁。
三、NFS掛載原理詳細介紹
提示:mount 源 目標
mount 遠端地址:/共享目錄 /掛載目錄
問題:nfs傳輸端口不固定,導致客戶端不知道那個端口進行數據傳輸
解決方案:就是RPC(中文意識就是遠程過程調用)協議/服務來實現的,
四、什么是RPC(中間人)
因為NFS支持的功能相當多,而不同的功能都會使用不同的程序來啟動,每啟動一個功能都會啟用 一些端口來傳輸數據,因此NFS的功能所對應的端口無法固定,而是隨機選取端口傳輸數據的。就需要RPC
五、客戶讀寫nfs全過程,簡單原理
1.先開啟RPC服務
2.啟動NFS服務,然后向RPC服務器注冊啟動的端口
3.客戶請求nfx服務
4.RPC返回端口給客戶端
5.客戶端拿着RPC給的端口去請求數據傳輸
六、NFS軟件
要部署nfs服務要安裝下面的軟件包
*nfs-utils:這個是NFS服務主程序
包括rpc.nfsd、rpc.mountd兩個daemons和相關的文檔說明及執行命令文件等。
*portmap:cen5下面rpc的主程序
*rpcbind是cen6下面rpc的主程序
七、NFS配置
1.首先檢查軟件包的安裝情況:
[root@localhost ~]# rpm -aq nfs-utils portamp rpcbind
2.然后安裝:
[root@localhost ~]# yum install nfs-utils portmap rpcbind -y /客戶和服務端都需要安裝
3.啟動RPC服務:
[root@nfskhd ~]# /etc/init.d/rpcbind start ****RPC默認端口10000
4.查看rpc服務進程是否存在:
[root@nfskhd ~]# ps -ef|grep rpc
5.查看rpc有沒有房源:
[root@nfskhd ~]# rpcinfo -p localhost
6.啟動NFS服務:
[root@nfskhd ~]# /etc/init.d/nfs start 然后再看RPC服務
7.設置開機自啟動RPC和NFS:
[root@nfskhd ~]# chkconfig nfs rpcbind on
8.檢查:
[root@nfskhd ~]# chkconfig --list nfs
注意****客戶端就開啟rpc服務就行***
***nfs的配置文件在/etc/exports***9.創建一個需要共享出去的文件夾:
mkdir /date
10.打開nfs配置文件:
vi /etc/exports #shard data for bbs by oldboy at 20190808 /data 192.168.157.131/24(rw,sync) #ro的話是只讀權限#async這個是寫入到緩存 共享目錄 共享的網段 (權限,同步到本地磁盤)
11.檢查一下配置文件:
cat /etc/exports
12.重啟一下nfs服務:
/etc/init.d/nfs reload
13.在本機檢查能否共享:
showmount -e localhost###這里注意被訪問的NFS服務器上的防火牆沒有添加規則,向iptables里面添加以下查看的所有端口即可
14.檢查客戶機能否查看共享:
showmount -e 192.168.157.130
15.在客戶端進行掛載:
mount -t nfs 192.168.157.130:/data /mnt
16.到/mnt下面去查看是否共享成功了
cd /mnt
ls
注意:剛才給/data的權限是共享讀寫權限但是這個文件夾本身對其他用戶不開放寫權限,如果客戶要在/data下創建文件可以把客戶端的所屬組改為服務器然后把/data文件的所屬組權限改為rw就可以了
17.如果每次開機后都想自動掛載nfs的話:
ehco "mount -t nfs 192.168.157.130:/data /mnt">>/etc/rc.local