存儲服務的部署---NFS

一、nfs 簡介

NFS是Network File System的縮寫及網絡文件系統。
主要功能是通過局域網絡讓不同的主機系統之間可以共享文件或目錄。
NFS系統和Windows網絡共享、網絡驅動器類似, 只不過windows用於局域網, NFS用於企業集羣架構中, 如果是大型網站, 會用到更復雜的分佈式文件系統FastDFS,glusterfs,HDFS。

二、服務端和客戶端安裝 nfs 和 rpc 服務

rpm -qa|grep -E "nfs|rpc"
yum install -y nfs-utils rpcbind

    提示:RPC用於遠程過程調用服務程序,只需要在服務端安裝。

三、配置 nfs 服務

1. 服務端配置方式

  1). 編寫配置文件

vim /etc/exports
man exports  #  可查看配置格式

 /data                 172.16.1.0/24    (rw,sync)
#設置數據存儲的目錄     設置網絡一個白名單(配置存儲目錄的權限信息)
NFS配置權限參數
參數信息 參數說明
rw  存儲目錄是否有讀寫權限
ro 存儲目錄是否時只讀權限
sync 同步方式存儲數據 直接將數據保存到磁盤(數據存儲安全)
async 異步方式存儲數據 直接將數據保存到內存(提高數據存儲效率)
no_root_squash 不要將root用戶身份進行轉換
root_squash(默認配置) 將root用戶身份進行轉換(默認配置)
all_squash 將所有用戶身份都進行轉換 
no_all_squash(默認配置) 不要將普通用戶身份進行轉換(默認配置)

   2). 多ip配置方式:
    第一種方法:

/data   172.16.1.0/24(rw,sync) 10.0.0.0/24(rw,sync)

    第二種方法:

/data   172.16.1.0/24(rw,sync) 
/data   10.0.0.0/24(rw,sync)

  2). 創建備份目錄並修改權限屬主屬組信息 

mkdir /data
chown nfsnobody.nfsnobody /data
chmod 755 /data

  3). 啓動服務程序

# 先啓動 rpc 服務
systemctl start rpcbind.service 
systemctl enable rpcbind.service
# 再啓動 nfs 服務
systemctl start nfs
systemctl enable nfs

   4). 查看服務狀態

systemctl status rpcbind
systemctl status nfs

2. 客戶端配置方式

   1). 實現遠程掛載共享目錄

mount -t nfs 172.16.1.31:/data  /mnt

四、rpc 使用方法

1. 語法

rpcinfo -p localhost/服務端ip  #  檢查nfs服務進程與端口註冊信息

2. 查看端口信息

# nfs服務未註冊信息:
[root@nfs01 ~]# rpcinfo -p 172.16.1.31
program vers proto   port  service
100000    4   tcp    111  portmapper
100000    3   tcp    111  portmapper
100000    2   tcp    111  portmapper
100000    4   udp    111  portmapper
100000    3   udp    111  portmapper
100000    2   udp    111  portmapper
# nfs服務註冊之後信息:
[root@nfs01 ~]# rpcinfo -p 172.16.1.31
program vers proto   port  service
100000    4   tcp    111  portmapper
100000    3   tcp    111  portmapper
100000    2   tcp    111  portmapper
100000    4   udp    111  portmapper
100000    3   udp    111  portmapper
100000    2   udp    111  portmapper
100024    1   udp  53997  status
100024    1   tcp  49863  status
100005    1   udp  20048  mountd
100005    1   tcp  20048  mountd
100005    2   udp  20048  mountd
100005    2   tcp  20048  mountd
100005    3   udp  20048  mountd
100005    3   tcp  20048  mountd

 五、客戶端 nfs 掛載卸載方法

1. 掛載方式

   1). 語法:

mount -t nfs 服務端ip:文件信息  掛載點

   2). 自動掛載:
    a. 利用rc.local

echo "mount -t nfs 172.16.1.31:/data /mnt" >>/etc/rc.local

    b. 利用fstab文件

vim /etc/fstab
172.16.1.31:/data         /mnt           nfs     defaults    0 0
文件掛載參數
參數信息 參數說明
rw(默認) 實現掛載後掛載點目錄可讀可寫
ro 實現掛載後掛載點目錄可讀可寫
suid(默認) 在共享目錄中可以讓setuid權限位生效
nosuid 在共享目錄中可以讓setuid權限位失效   提供共享目錄的安全性
exec 共享目錄中的執行文件可以直接執行
noexec 共享目錄中的執行文件可以無法直接執行 提供共享目錄的安全性
auto 可以實現自動掛載     mount -a 實現加載fstab文件自動掛載
noauto 不可以實現自動掛載
nouser 禁止普通用戶可以卸載掛載點
user 允許普通用戶可以卸載掛載點

2. 卸載方式

   1). 語法:

umount  [參數]  掛載點    

   2). 命令參數

     -l --- 不退出掛載點目錄進行卸載  
     -f --- 強制進行卸載操作

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章