VMware ESXi5.5主機無法掛載RHEL6.5 存儲該怎么處理,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
公司主營業(yè)務:成都網(wǎng)站制作、成都網(wǎng)站建設、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出凌源免費做網(wǎng)站回饋大家。
系統(tǒng)環(huán)境
系統(tǒng)平臺:RHEL LINUX 6.5
NFS Server IP:192.168.2.19
共享目錄:/mnt/parastor
VMWARE EXSI:5.5
問題描述:在VMWARE EXSI5.5上的DATASTORE里掛載一臺RHEL Linux5.5虛擬機NFS服務器里的共享目錄,提示如下:
錯誤堆棧
在 vCenter Server“VM-1”上調(diào)用對象 “datastoreSystem-29”的“HostDatastoreSystem.CreateNasDatastore” 失敗。
NFS 掛載 192.168.2.19:/mnt/parastor 失敗: NFS 服務器通過 TCP 不支持 MOUNT 版本 3。
(對應英文版提示為NFS server does not support MOUNT version 3 over TCP)
這是由于NFS服務器上的服務用的是默認的UDP協(xié)議方式傳輸,而VMware要求必須用TCP,因此修改配置文件/etc/nfsmount.conf,取消Defaultproto=tcp行注釋即可。當然有的時候,如果你修改了這項還不能成功掛載的話,請檢查如下:
一、防火墻是否關閉
service iptables stop
chkconfig iptables off
二、nfs服務是否啟動
chkconfig nfs on
service nfs start
三、檢查exports文件
cat /etc/exports
/mnt/parastor 192.168.110.*(rw,sync,no_root_squash)
四、修改/etc/nfsmount.conf
將如下幾行的注釋去掉(默認是udp,esxi需要使用tcp,esxi需要使用mount v3)
Defaultproto=tcp
Proto=tcp
mountproto=tcp
mounvers=3
五、然后重啟如下服務:
service rpcbind start
service nfs restart
最后發(fā)現(xiàn)掛載nfs存儲成功。
注意:RPC必須先啟動。RPC即Remote Procedure Call Protocol(遠程過程調(diào)用協(xié)議),RPCBIND用于取代舊版本中的portmap組件。 簡單說,RPCBIND就是為了將不同服務與對應的端口進行綁定,以便支持機器間的互操作。原理補充:RPC 最主要的功能就是指定每個 NFS 功能所對應的 port number ,並且回報給用戶端,讓用戶端可以連結(jié)到正確的端口上去。 當服務器在啟動 NFS 時會隨機取用數(shù)個端口,并主動的向 RPC 注冊,因此 RPC 可以知道每個端口對應的 NFS 功能,然后 RPC 通過固定使用 port 111 來監(jiān)聽用戶端的請求并回報用戶端正確的端口,來確保NFS連接的成功!
另外關于FSID參數(shù)的解釋:
要通過NFS共享一個目錄,首先需要在/etc/exports文件中定義這個目錄,并且使用fsid=0的參數(shù)。(使用fsid=0選項的時候只能共享一個目錄,這個目錄將成為NFS服務器的根目錄。)
參看如下英文原版解釋:
fsid=num
This option forces the filesystem identification portion of the file handle and file attributes used on the
wire to be num instead of a number derived from the major and minor number of the block device on which the
filesystem is mounted. Any 32 bit number can be used, but it must be unique amongst all the exported
filesystems.
This can be useful for NFS failover, to ensure that both servers of the failover pair use the same NFS file
handles for the shared filesystem thus avoiding stale file handles after failover.
Some Linux filesystems are not mounted on a block device; exporting these via NFS requires the use of the
fsid option (although that may still not be enough).
The value 0 has a special meaning when use with NFSv4. NFSv4 has a concept of a root of the overall
exported filesystem. The export point exported with fsid=0 will be used as this root.
NFS需要標志每一個導出的文件系統(tǒng)。通常使用文件系統(tǒng)的UUID(如果該文件系統(tǒng)有的話),或者使用存儲該文件系統(tǒng)的設備的設備號(如果該文件系統(tǒng)存儲在設備上)。并不是所有的文件系統(tǒng)都存儲在設備上,也并不是所有的文件系統(tǒng)都有UUID,NFS需要精確標識文件系統(tǒng),就需要使用fsid選項。
對于NFSv4,有一個杰出的文件系統(tǒng),它是所有導出的文件系統(tǒng)的根目錄。通過fsid=root或fsid=0來標識。標識其他文件系統(tǒng),可以使用一個小的整數(shù)(任何32位數(shù)字都可以使用,但它在所有導出的文件系統(tǒng)中必須是唯一的),或者任意一個包含32個十六進制數(shù)字和標點符號的UUID。
Linux內(nèi)核2.6.20版本及更早版本不支持UUID的設置。
背景知識:
NFS 是Network File System的縮寫,即網(wǎng)絡文件系統(tǒng)。一種使用于分散式文件系統(tǒng)的協(xié)定,由Sun公司開發(fā),于1984年向外公布。功能是通過網(wǎng)絡讓不同的機器、不同的操作系統(tǒng)能夠彼此分享個別的數(shù)據(jù),讓應用程序在客戶端通過網(wǎng)絡訪問位于服務器磁盤中的數(shù)據(jù),是在類Unix系統(tǒng)間實現(xiàn)磁盤文件共享的一種方法。
NFS 的基本原則是“容許不同的客戶端及服務端通過一組RPC分享相同的文件系統(tǒng)”,它是獨立于操作系統(tǒng),容許不同硬件及操作系統(tǒng)的系統(tǒng)共同進行文件的分享。
NFS在文件傳送或信息傳送過程中依賴于RPC協(xié)議。RPC,遠程過程調(diào)用 (Remote Procedure Call) 是能使客戶端執(zhí)行其他系統(tǒng)中程序的一種機制。NFS本身是沒有提供信息傳輸?shù)膮f(xié)議和功能的,但NFS卻能讓我們通過網(wǎng)絡進行資料的分享,這是因為NFS使用了一些其它的傳輸協(xié)議。而這些傳輸協(xié)議用到這個RPC功能的??梢哉fNFS本身就是使用RPC的一個程序?;蛘哒fNFS也是一個RPC SERVER。所以只要用到NFS的地方都要啟動RPC服務,不論是NFS SERVER或者NFS CLIENT。這樣SERVER和CLIENT才能通過RPC來實現(xiàn)PROGRAM PORT的對應??梢赃@么理解RPC和NFS的關系:NFS是一個文件系統(tǒng),而RPC是負責負責信息的傳輸。
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。