介紹一下NFS的安裝,以及共享文件html
NFS(Net File System),經過使用NFS,能夠像使用本地文件同樣訪問遠程文件。
它主要解決了數據共享的問題,能夠備份容災。node
安裝配置linux
1.以linux ubuntu爲例,作nfs server的機器和 nfs client的機器分別安裝ubuntu
"nfs server"ssh
1oop |
sudo apt-get install nfs-kernel-serverspa |
"nfs client"rest
1orm |
sudo apt-get install nfs-commonserver |
2.配置nfs須要共享的目錄,在 /etc/exports 最下面添加須要共享的目錄 /home/hadoop/yxlShare
/etc/exports
1 |
/home/hadoop/yxlShare *(rw,sync,no_root_squash) |
3.重啓 portmap和 nfs server
1 |
sudo /etc/init.d/portmap restart |
4.運行一下命令,查看一下能夠被掛載的狀況
1 |
showmount -e |
5.此時,在客戶端上,將一個本地目錄掛載到nfs的共享目錄上,把它視爲本地目錄。
能夠再添加fstab,讓linux開機自動掛載
用法: sudo mount nfsServer的ip:共享目錄 本地目錄
示例
1 |
sudo mount 192.168.1.111:/home/hadoop/.ssh /home/hadoop/.ssh |
4.此時,不管在client上仍是server上,對這個目錄的修改,都能反映出來,這樣多臺機器就共享了一個目錄。
實例
1.共享hadoop ssh受權文件
當整個hadoop集羣,共享一個authorized_keys,以便ssh跳轉。就能夠將本地目錄 ~/nfs_share/ ,掛載在nfs上。
而後創建軟鏈接,這樣就實現了共享。
1 |
ln -s ~/nfs_share/authorized_keys ~/.ssh/authorized_keys |
2.namenode HA 元數據保存
你們都知道hadoop的namenode是單點。但結合zookeeper和nfs,就能夠實現自動切換的功能。
將namenode的元數據保存在nfs,當namenode這臺機器掛掉了,利用zookeeper再找一個替補機器,而後替補機器讀取nfs上的元數據,即成爲了namenode。
這裏有一個圖,說明了狀況. 引用自http://www.cnblogs.com/commond/archive/2009/07/28/1533223.html