NFS企業(yè)級網(wǎng)絡(luò)存儲服務(wù)

1、什么是NFS娇跟?

全稱 network file system 網(wǎng)絡(luò)文件系統(tǒng)
通過網(wǎng)絡(luò)存儲和組織文件的一種方法或機(jī)制岩齿。
什么是文件系統(tǒng)?

2苞俘、為什么要用共享存儲盹沈?

前端所有的應(yīng)用服務(wù)器接收到用戶上傳的圖片、文件吃谣、視頻乞封,都會統(tǒng)一
的放到后端的存儲上做裙。
為什么要共享?所有節(jié)點服務(wù)器都需要將內(nèi)容存到存儲上肃晚,取的統(tǒng)一來取锚贱。

3、共享存儲的種類

單點存儲系統(tǒng)就是NFS关串,中小型企業(yè)拧廊,阿里云服務(wù)的NAS服務(wù),OSS對象存儲悍缠。
NFS性能不太高卦绣。
大型企業(yè)會用分布式存儲FastDFS、Ceph飞蚓、GlsterFS滤港、Mfs

大型存儲廠商:EMC、Netapp 幾十萬趴拧。
藝龍旅行網(wǎng) 存儲用的EMC 傳統(tǒng)企業(yè)溅漾。

硬件存儲:傳統(tǒng)企業(yè):穩(wěn)定、2臺 雙主機(jī)頭 幾十塊硬盤 RAID10著榴。
BAT 曾經(jīng)用硬件添履,超貴、

阿里云 去IOE Ibm Orace EMC

4脑又、NFS工作原理

NFS網(wǎng)絡(luò)文件系統(tǒng)
啟動NFS服務(wù)暮胧,而且還有啟動很多端口。
NFS功能问麸,需要很多服務(wù)往衷。每個服務(wù)都有端口,而且經(jīng)常變化严卖。
如何讓客戶端找到這些端口呢席舍?就需要一個經(jīng)紀(jì)人(rpc服務(wù))

NFS服務(wù):
1、NFS服務(wù)(有很多進(jìn)程和端口)哮笆,把自己的端口告訴RPC来颤。
2、RPC服務(wù)(對外固定端口111)

客戶端請求NFS服務(wù)稠肘,先找RPC 111福铅,查到NFS的端口,發(fā)給客戶项阴。
原理見圖:

5本讥、安裝

服務(wù)器端和客戶端都要安裝:
yum install nfs-utils rpcbind -y
rpm -qa nfs-utils rpcbind 

[root@nfs01 ~]# rpm -qa nfs-utils rpcbind
nfs-utils-1.3.0-0.61.el7.x86_64
rpcbind-0.2.0-47.el7.x86_64

啟動RPC
[root@nfs01 ~]# systemctl start rpcbind.service 
[root@nfs01 ~]# systemctl enable rpcbind.service 

看看有沒有注冊的端口
[root@nfs01 ~]# rpcinfo -p 127.0.0.1
   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 ~]# systemctl start nfs
[root@nfs01 ~]# systemctl enable nfs


[root@nfs01 ~]# rpcinfo -p 127.0.0.1
   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  44521  status
    100024    1   tcp  59204  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
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049  nfs_acl
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    3   udp   2049  nfs_acl
    100021    1   udp  55758  nlockmgr
    100021    3   udp  55758  nlockmgr
    100021    4   udp  55758  nlockmgr
    100021    1   tcp  30472  nlockmgr
    100021    3   tcp  30472  nlockmgr
    100021    4   tcp  30472  nlockmgr


[root@nfs01 ~]# netstat -lntup|egrep "rpc|nfs"
tcp        0      0 0.0.0.0:20048           0.0.0.0:*      LISTEN      9516/rpc.mountd     
tcp        0      0 0.0.0.0:59204           0.0.0.0:*      LISTEN      9463/rpc.statd      
tcp6       0      0 :::20048                :::*           LISTEN      9516/rpc.mountd     
tcp6       0      0 :::14450                :::*           LISTEN      9463/rpc.statd      
udp        0      0 0.0.0.0:44521           0.0.0.0:*                  9463/rpc.statd      
udp        0      0 0.0.0.0:20048           0.0.0.0:*                  9516/rpc.mountd     
udp        0      0 0.0.0.0:695             0.0.0.0:*                  9424/rpcbind        
udp        0      0 127.0.0.1:735           0.0.0.0:*                  9463/rpc.statd      
udp6       0      0 :::20048                :::*                       9516/rpc.mountd     
udp6       0      0 :::695                  :::*                       9424/rpcbind        
udp6       0      0 :::4835                 :::*                       9463/rpc.statd 

6、配置nfs

NFS配置文件 /etc/exports
[root@nfs01 ~]# man exports
EXAMPLE
       # sample /etc/exports file
       /               master(rw) trusty(rw,no_root_squash)
       /projects       proj*.local.domain(rw)
       /usr            *.local.domain(ro) @trusted(rw)
       /home/joe       pc001(rw,all_squash,anonuid=150,anongid=100)
       /pub            *(ro,insecure,all_squash)
       /srv/www        -sync,rw server @trusted @external(ro)
       /foo            2001:db8:9:e54::/64(rw) 192.0.2.0/24(rw)
       /build          buildhost[0-9].local.domain(rw)
       待共享的目錄    訪問的主機(jī)(權(quán)限)
1)待共享的目錄 存東西的目錄 取東西的目錄例如:/data
2)訪問的主機(jī),
   172.16.1.7(web01)    單個主機(jī)
   172.16.1.0/24 網(wǎng)段
   172.16.1.*    網(wǎng)段
   master 主機(jī)名
3)()權(quán)限 
   rw 可讀寫 read write
   ro 只讀 read only
   sync 寫到磁盤才算完成拷沸,安全 慢
   async 異步寫到遠(yuǎn)程緩沖區(qū)色查,快 不安全

實踐:

[root@nfs01 ~]# tail -1 /etc/exports
/data 172.16.1.0/24(rw,sync)

[root@nfs01 ~]# mkdir -p /data
[root@nfs01 ~]# ls -ld /data
drwxr-xr-x 2 root root 51 4月  16 10:24 /data


NFS默認(rèn)用戶nfsnobody
[root@nfs01 ~]# grep nfsno /etc/passwd
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin

[root@nfs01 ~]# chown -R nfsnobody.nfsnobody /data
[root@nfs01 ~]# ls -ld /data
drwxr-xr-x 2 nfsnobody nfsnobody 51 4月  16 10:24 /data

重啟NFS

[root@nfs01 ~]# systemctl reload nfs #《==生產(chǎn)場景必須要實現(xiàn)平滑重啟。
[root@nfs01 ~]# exportfs -r
上述二者等價撞芍,選一個即可秧了。

[root@nfs01 ~]# showmount -e 172.16.1.31
Export list for 172.16.1.31:
/data 172.16.1.0/24   #《==看到共享的目錄了

服務(wù)單本地掛載:

[root@nfs01 ~]# mount -t nfs 172.16.1.31:/data /mnt
[root@nfs01 ~]# df -h
文件系統(tǒng)           容量  已用  可用 已用% 掛載點
/dev/sda3           19G  1.8G   18G   10% /
devtmpfs           476M     0  476M    0% /dev
tmpfs              487M     0  487M    0% /dev/shm
tmpfs              487M  7.6M  479M    2% /run
tmpfs              487M     0  487M    0% /sys/fs/cgroup
/dev/sda1          253M  136M  118M   54% /boot
tmpfs               98M     0   98M    0% /run/user/0
172.16.1.31:/data   19G  1.8G   18G   10% /mnt
[root@nfs01 ~]# touch /mnt/oldboy.txt
[root@nfs01 ~]# ls /mnt/
oldboy.txt

換到web01掛載


1)安裝
yum install nfs-utils rpcbind -y
rpm -qa nfs-utils rpcbind 
2)啟動
[root@web01 ~]# systemctl start rpcbind
[root@web01 ~]# systemctl enable rpcbind

[root@web01 ~]# netstat -lntup|grep rpc
udp        0      0 0.0.0.0:775             0.0.0.0:*                           11624/rpcbind       
udp6       0      0 :::775                  :::*                                11624/rpcbind       

[root@web01 ~]# netstat -lntup|grep rpcbind
udp        0      0 0.0.0.0:775   0.0.0.0:*     11624/rpcbind       
udp6       0      0 :::775        :::*          11624/rpcbind       
[root@web01 ~]# ps -ef|grep rpcbind
rpc       11624      1  0 12:17 ?        00:00:00 /sbin/rpcbind -w

3)查看NFS服務(wù)器提供的共享目錄
[root@web01 ~]# showmount -e 172.16.1.31
Export list for 172.16.1.31:
/data 172.16.1.0/24

nt_create: RPC: Program not registered
                  程序  沒有  注冊
                  
RPC服務(wù)開啟了,但是NFS沒有告訴RPC服務(wù)端口序无。


4)掛載測試
[root@web01 ~]# mount -t nfs 172.16.1.31:/data /mnt
[root@web01 ~]# df -h
文件系統(tǒng)           容量  已用  可用 已用% 掛載點
/dev/sda3           19G  1.8G   18G   10% /
devtmpfs           476M     0  476M    0% /dev
tmpfs              487M     0  487M    0% /dev/shm
tmpfs              487M  7.6M  479M    2% /run
tmpfs              487M     0  487M    0% /sys/fs/cgroup
/dev/sda1          253M  136M  118M   54% /boot
tmpfs               98M     0   98M    0% /run/user/0
172.16.1.31:/data   19G  1.8G   18G   10% /mnt
[root@web01 ~]# touch /mnt/oldgirl.txt
[root@web01 ~]# ls /mnt/
oldboy.txt  oldgirl.txt
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末验毡,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子帝嗡,更是在濱河造成了極大的恐慌晶通,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件哟玷,死亡現(xiàn)場離奇詭異狮辽,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)巢寡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進(jìn)店門喉脖,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人抑月,你說我怎么就攤上這事树叽。” “怎么了谦絮?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵题诵,是天一觀的道長。 經(jīng)常有香客問我层皱,道長仇轻,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任奶甘,我火速辦了婚禮,結(jié)果婚禮上祭椰,老公的妹妹穿的比我還像新娘臭家。我一直安慰自己,他們只是感情好方淤,可當(dāng)我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布钉赁。 她就那樣靜靜地躺著,像睡著了一般携茂。 火紅的嫁衣襯著肌膚如雪你踩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天,我揣著相機(jī)與錄音带膜,去河邊找鬼吩谦。 笑死,一個胖子當(dāng)著我的面吹牛膝藕,可吹牛的內(nèi)容都是我干的式廷。 我是一名探鬼主播,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼芭挽,長吁一口氣:“原來是場噩夢啊……” “哼滑废!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起屈芜,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤剃执,失蹤者是張志新(化名)和其女友劉穎碱妆,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體俺陋,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年怀各,在試婚紗的時候發(fā)現(xiàn)自己被綠了倔韭。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡瓢对,死狀恐怖寿酌,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情硕蛹,我是刑警寧澤醇疼,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站法焰,受9級特大地震影響秧荆,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜埃仪,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一乙濒、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧卵蛉,春花似錦颁股、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至葡缰,卻和暖如春亏掀,著一層夾襖步出監(jiān)牢的瞬間忱反,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工滤愕, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留温算,地道東北人。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓该互,卻偏偏與公主長得像米者,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子宇智,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,060評論 2 355