最近在搞實驗室集群環(huán)境,需要把存儲服務(wù)器用起來,兩臺存儲服務(wù)器大概12T的大小,想實現(xiàn)使其他的8個計算節(jié)點都能像訪問本地目錄一樣訪問存儲服務(wù)器,類似windows下的文件共享,因此使用了NFS服務(wù)。
NFS介紹和原理
NFS 是Network File System的縮寫,即網(wǎng)絡(luò)文件系統(tǒng)。是一種使用于分散式文件系統(tǒng)的協(xié)定,功能是讓客戶端通過網(wǎng)絡(luò)訪問不同主機(jī)上磁盤里的數(shù)據(jù),主要用在類Unix系統(tǒng)上實現(xiàn)文件共享的一種方法。
NFS使用RPC,即遠(yuǎn)程過程調(diào)用 (Remote ProcedureCall) ,它能使客戶端執(zhí)行其他系統(tǒng)中的程序。NFS本身是沒有提供信息傳輸?shù)膮f(xié)議和功能的,但NFS卻能讓我們通過網(wǎng)絡(luò)進(jìn)行資料的分享,這是因為NFS使用了一些依賴RPC的傳輸協(xié)議。可以簡單理解RPC和NFS的關(guān)系:NFS是一個文件系統(tǒng),而RPC負(fù)責(zé)信息的傳輸。

詳細(xì)配置
1. 前期配置
關(guān)閉服務(wù)端和客戶端的防火墻和selinux,這里的服務(wù)端指需要共享出去的存儲服務(wù)器,客戶端指其他的8個計算節(jié)點。以下所有命令是在centos7環(huán)境下
1.1 關(guān)閉防火墻
systemctl stop firewalld
1.2 把selinux設(shè)置為許可模式(或者關(guān)閉)
etenforce 0
(如果想要禁用,需要更改配置文件,把SELINUX設(shè)置成disabled,重啟生效)
2.服務(wù)端配置
2.1 安裝需要的軟件包(使用yum)
yum install -y rpc-bind nfs-utils
2.2 創(chuàng)建想要共享的文件夾,例如 /datas
mkdir /datas
2.3 把共享目錄的權(quán)限設(shè)定為所有用戶都可讀可寫權(quán)限
chmod -R 777 /datas
2.4 修改NFS服務(wù)的主配置文件 /etc/exports
vim /etc/exports
#添加如下規(guī)則
/datas *(rw,sync)
規(guī)則說明:/datas代表共享的文件,*代表所有主機(jī)都可以訪問,rw指讀和寫的權(quán)限,sync表明使用同步方式。
其他更為精確的可選配置如下:

2.5 開啟NFS服務(wù)
systemctl start nfs
至此服務(wù)端的nfs配置完畢,回想一下,我們主要做了:
關(guān)閉防火墻和selinux
將我們創(chuàng)建的目錄/datas通過nfs主配置文件/etc/exports共享出去
開啟nfs服務(wù)
Ps:如果想共享服務(wù)器的某個硬盤,只需要將/datas目錄使用mount命令掛載到該硬盤即可。
查看硬盤和掛載情況的命令為:
df -h
例如將硬盤設(shè)備/dev/sdd 掛載到/datas
mount /dev/sdd /datas
接下來配置客戶端
3.客戶端配置
3.1 關(guān)閉防火墻和selinux
同上
3.2 安裝NFS
同上
3.3 將服務(wù)端的共享目錄掛載到本機(jī)的 /data-nfs目錄上,我這里的ip是IB卡的的ip,沒有IB驅(qū)動的可以直接使用內(nèi)網(wǎng)ip,/data-nfs是我自定義的目錄。
mount -t nfs 12.12.12.29:/datas /data-nfs
至此,客戶端配置完畢,訪問/data-nfs目錄就相當(dāng)于訪問服務(wù)端的/datas目錄
ps:以上配置重啟機(jī)器后會出問題,建議設(shè)置開機(jī)啟動執(zhí)行。
《Linux就該這么學(xué)》https://www.linuxprobe.com/






