NFS協(xié)議的優(yōu)化設(shè)置
NFS,是網(wǎng)絡(luò)文件系統(tǒng)。這個(gè)大家是知道的。那么對(duì)于這個(gè)協(xié)議的使用,我們?cè)谇懊嬉步榻B過一部分。今天說一下NFS協(xié)議的調(diào)優(yōu)過程,這個(gè)也是比較簡(jiǎn)單的。在下面我們用了四個(gè)步驟來完成這個(gè)過程,大家可以看一下具體的內(nèi)容,進(jìn)行一下操作。
調(diào)優(yōu)的步驟:
1、測(cè)量當(dāng)前網(wǎng)絡(luò)、服務(wù)器和每個(gè)客戶端的執(zhí)行效率.
2、分析收集來的數(shù)據(jù)并畫出圖表.查找出特殊情況,例如很高的磁盤和CPU占用、已經(jīng)高的磁盤使用時(shí)間
3、調(diào)整服務(wù)器
4、重復(fù)第一到第三步直到達(dá)到你渴望的性能
與 NFS協(xié)議性能有關(guān)的問題有很多,通常可以要考慮的有以下這些選擇:
WSIZE,RSIZE參數(shù)來優(yōu)化NFS的執(zhí)行效能
WSIZE、 RSIZE對(duì)于NFS的效能有很大的影響.
wsize和rsize設(shè)定了SERVER和CLIENT之間往來數(shù)據(jù)塊的大小,這兩個(gè)參數(shù)的合理設(shè)定與很多方面有關(guān),不僅是軟件方面也有硬件方面的因素會(huì)影響這兩個(gè)參數(shù)的設(shè)定(例如LINUX KERNEL、網(wǎng)卡,交換機(jī)等等).
下面這個(gè)命令可以測(cè)試NFS協(xié)議的執(zhí)行效能,讀和寫的效能可以分別測(cè)試,分別找到合適的參數(shù).對(duì)于要測(cè)試分散的大量的數(shù)據(jù)的讀寫可以通過編寫腳本來進(jìn)行測(cè)試.在每次測(cè)試的時(shí)候最好能重復(fù)的執(zhí)行一次MOUNT和unmount.
time dd if=/dev/zero of=/mnt/home/testfile bs=16k count=16384
用于測(cè)試的WSIZE,RSIZE最好是1024的倍數(shù),對(duì)于NFS V2來說8192是RSIZE和WSIZE的最大數(shù)值,如果使用的是 NFS V3則可以嘗試的最大數(shù)值是32768.
如果設(shè)置的值比較大的時(shí)候,應(yīng)該最好在CLIENT上進(jìn)入mount上的目錄中,進(jìn)行一些常規(guī)操作(LS,VI等等),看看有沒有錯(cuò)誤信息出現(xiàn).有可能出現(xiàn)的典型問題有LS的時(shí)候文件不能完整的列出或者是出現(xiàn)錯(cuò)誤信息,不同的操作系統(tǒng)有不同的最佳數(shù)值,所以對(duì)于不同的操作系統(tǒng)都要進(jìn)行測(cè)試.
設(shè)定最佳的NFSD的COPY數(shù)目.
linux中的NFSD的COPY數(shù)目是在/etc/rc.d/init.d/nfs這個(gè)啟動(dòng)文件中設(shè)置的,默認(rèn)是8個(gè)NFSD,對(duì)于這個(gè)參數(shù)的設(shè)置一般是要根據(jù)可能的CLIENT數(shù)目來進(jìn)行設(shè)定的,和WSIZE、RSIZE一樣也是要通過測(cè)試來找到最近的數(shù)值.
UDP and TCP
可以手動(dòng)進(jìn)行設(shè)置,也可以自動(dòng)進(jìn)行選擇.
mount -t nfs -o sync,tcp,noatime,rsize=1024,wsize=1024 EXPORT_MACHINE:/EXPORTED_DIR /DIR
UDP有著傳輸速度快,非連接傳輸?shù)谋憬萏匦?但是UDP在傳輸上沒有TCP來的穩(wěn)定,當(dāng)網(wǎng)絡(luò)不穩(wěn)定或者黑客入侵的時(shí)候很容易使NFS協(xié)議的 Performance 大幅降低甚至使網(wǎng)絡(luò)癱瘓.所以對(duì)于不同情況的網(wǎng)絡(luò)要有針對(duì)的選擇傳輸協(xié)議.nfs over tcp比較穩(wěn)定,nfs over udp速度較快.在機(jī)器較少網(wǎng)絡(luò)狀況較好的情況下使用UDP協(xié)議能帶來較好的性能,當(dāng)機(jī)器較多,網(wǎng)絡(luò)情況復(fù)雜時(shí)推薦使用TCP協(xié)議(V2只支持UDP協(xié)議).在局域網(wǎng)中使用UDP協(xié)議較好,因?yàn)榫钟蚓W(wǎng)有比較穩(wěn)定的網(wǎng)絡(luò)保證,使用UDP可以帶來更好的性能,在廣域網(wǎng)中推薦使用TCP協(xié)議,TCP協(xié)議能讓NFS在復(fù)雜的網(wǎng)絡(luò)環(huán)境中保持最好的傳輸穩(wěn)定性.可以參考這篇文章:http://www.hp.com.tw/ssn/unix/0212/unix021204.asp ;
版本的選擇
V3作為默認(rèn)的選擇(RED HAT 8默認(rèn)使用V2,SOLARIS 8以上默認(rèn)使用V3),可以通過 vers= mount option來進(jìn)行選擇.
LINUX通過mount option的nfsvers=n進(jìn)行選擇.