OpenAFS分布式文件系統(tǒng)
OpenAFS是一套開(kāi)放源代碼的分布式文件系統(tǒng),允許系統(tǒng)之間通過(guò)局域和廣域網(wǎng)來(lái)分享檔案和資源。
OpenAFS 是圍繞一組叫做 cell 的文件服務(wù)器組織的。每個(gè)服務(wù)器的標(biāo)識(shí)通常是隱藏在文件系統(tǒng)中的。從 AFS 客戶(hù)機(jī)登錄的用戶(hù)將分辨不出他們?cè)谀膫€(gè)服務(wù)器上運(yùn)行,因?yàn)閺挠脩?hù)的觀點(diǎn)來(lái)看,他們想在有可識(shí)別的 UNIX 文件系統(tǒng)語(yǔ)義的單個(gè)系統(tǒng)上運(yùn)行。文件系統(tǒng)內(nèi)容通常都是跨 cell 復(fù)制,以便一個(gè)硬盤(pán)的失效不會(huì)損害 OpenAFS 客戶(hù)機(jī)上的運(yùn)行。OpenAFS 需要高達(dá) 1 GB 的大容量客戶(hù)機(jī)緩存,以允許訪(fǎng)問(wèn)經(jīng)常使用的文件。它還是一個(gè)十分安全的基于 Kerbero 的系統(tǒng),它使用訪(fǎng)問(wèn)控制列表 (ACL) 以便可以進(jìn)行細(xì)粒度的訪(fǎng)問(wèn),這不是基于通常的 Linux 和 UNIX 安全模型。
緩 存管理器碰巧是 OpenAFS 的一部分,很奇怪,它只作為底層文件系統(tǒng)與 ext2 一起運(yùn)行。除緩存管理器之外,OpenAFS 表層的基本結(jié)構(gòu)很像現(xiàn)代的 NFS 實(shí)現(xiàn)。但是,基本架構(gòu)卻一點(diǎn)都不像,而且必須慎重看待它的任何并行。對(duì)那些仍喜歡使用 NFS,但是又想利用 OpenAFS 程序的人來(lái)說(shuō),可以使用所謂的 NFS/AFS 翻譯器。只要 OpenAFS 客戶(hù)機(jī)被配置為 NFS 服務(wù)器機(jī)器,您就應(yīng)該能夠享受這兩種文件系統(tǒng)的優(yōu)點(diǎn)。
NFS 是位置無(wú)關(guān)的,它把本地目錄映射到遠(yuǎn)程文件系統(tǒng)位置。OpenAFS 對(duì)用戶(hù)隱藏了文件位置。因?yàn)榭赡芩械脑次募家宰x寫(xiě)副本的形式保存在復(fù)制到的不同文件服務(wù)器位置上,必須保持復(fù)制的副本同步。為此要使用一項(xiàng)稱(chēng)作 Ubik 的技術(shù),它源于單詞“ubiquitous(無(wú)所不在)”,是東歐拼寫(xiě)法。Ubik 過(guò)程使 AFS 文件系統(tǒng)上的文件、目錄和卷 (volume) 保持同步,但是通常運(yùn)行三個(gè)以上文件服務(wù)器進(jìn)程的系統(tǒng)獲益最多。系統(tǒng)管理人員可以將一個(gè) AFS 站點(diǎn)的幾個(gè) AFS cell 分組 —— 這個(gè)以前的縮寫(xiě)詞 AFS 已經(jīng)被保留在 OpenAFS 文件系統(tǒng)的語(yǔ)義中了。管理人員將決定 AFS cell 的數(shù)目,以及 cell 使存儲(chǔ)器和文件對(duì)站點(diǎn)內(nèi)的其他 AFS cell 可用的程度。
