NFS文件系统简介及原理
生活随笔
收集整理的這篇文章主要介紹了
NFS文件系统简介及原理
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
什么是文件系統(tǒng),NFS文件系統(tǒng)又是什么?
簡單的說,文件系統(tǒng)就是通過軟件對磁盤上的數(shù)據(jù)進行組織和管理的一種機制,對其的一種封裝或透視。
NFS,Network File System。顧名思義,網(wǎng)絡文件系統(tǒng),即通過網(wǎng)絡,對在不同主機上的文件進行共享。
為什么需要使用NFS呢? 在生產(chǎn)環(huán)境,我們很少使用單機部署應用,因為單機存在單點故障,一旦宕機,將無法為前端業(yè)務提供服務,這是客戶無法容忍的。現(xiàn)在提倡的高可用及7*24服務,是我們追求的目標。 對于一些小的應用,雙機成為了主流。我們來看一種簡單集群場景, 應用分別部署在A及B上, 前端通過F5或著web服務器訪問應用。如下圖:
那么當客戶端發(fā)出一個請求時,F5根據(jù)一定的機制進行轉(zhuǎn)發(fā),有可能有A服務器進行響應,也有可能 由B服務器進行響應。 而在web應用中上傳一些靜態(tài)文件是很常見的一種功能,如圖片。假設用戶在某一時間,上傳了一張照片到A服務器上,那么下次訪問時,被F5路由到了B服務器上,由于B服務器上并沒有存儲上傳的照片,所以將造成用戶無法看到自己上傳的照片。
那么很容易想到,是不是可以把文件上傳到一個公用的服務器上呢? 這樣不管訪問的是A還是B,讀、取文件都只存在一份。答案是肯定的,這個公用的服務器我們也稱之為文件服務器。上面的架構就演變成了下面的架構:
說了這么多,跟NFS又有什么關系呢? NFS提供了一種機制,可以讓A、B訪問C中的一個共享目錄,就像是操作本地文件一樣。既然NFS有這么牛逼的能力,又有什么原因不去深入了解一下呢? 注:此處當然也可以通過sftp或ftp進行文件上傳和下載。
NFS的原理: 我們用一個圖來進行說明:
首先:NFS包括兩部分,服務端及客戶端
由于NFS服務功能很多,會有很多端口,這些端口還有可能不固定,那么客戶端就無法與服務器進行通信,因為程序間通信必須通過端口(tcp/udp都是端到端通信),那么就需要一個中間的橋接機制,RPC進程即充當這樣一個角色,RPC的端口是一定的(111),當NFS啟動時,會向RPC進行注冊, 那么客戶端PRC就能與服務器RPC進行通信, 從而進行文件的傳輸。?
當客戶端用戶打開一個文件或目錄時,內(nèi)核會判斷,該文件是本地文件還是遠程共享目錄文件,如果是遠程文件則通過RPC進程訪問遠程NFS服務端的共享目錄,如果是本地文件,則直接打開。 為了更好的并發(fā),RPC進程及NFS進程都有多個。
為什么需要使用NFS呢? 在生產(chǎn)環(huán)境,我們很少使用單機部署應用,因為單機存在單點故障,一旦宕機,將無法為前端業(yè)務提供服務,這是客戶無法容忍的。現(xiàn)在提倡的高可用及7*24服務,是我們追求的目標。 對于一些小的應用,雙機成為了主流。我們來看一種簡單集群場景, 應用分別部署在A及B上, 前端通過F5或著web服務器訪問應用。如下圖:
那么當客戶端發(fā)出一個請求時,F5根據(jù)一定的機制進行轉(zhuǎn)發(fā),有可能有A服務器進行響應,也有可能 由B服務器進行響應。 而在web應用中上傳一些靜態(tài)文件是很常見的一種功能,如圖片。假設用戶在某一時間,上傳了一張照片到A服務器上,那么下次訪問時,被F5路由到了B服務器上,由于B服務器上并沒有存儲上傳的照片,所以將造成用戶無法看到自己上傳的照片。
那么很容易想到,是不是可以把文件上傳到一個公用的服務器上呢? 這樣不管訪問的是A還是B,讀、取文件都只存在一份。答案是肯定的,這個公用的服務器我們也稱之為文件服務器。上面的架構就演變成了下面的架構:
說了這么多,跟NFS又有什么關系呢? NFS提供了一種機制,可以讓A、B訪問C中的一個共享目錄,就像是操作本地文件一樣。既然NFS有這么牛逼的能力,又有什么原因不去深入了解一下呢? 注:此處當然也可以通過sftp或ftp進行文件上傳和下載。
NFS的原理: 我們用一個圖來進行說明:
首先:NFS包括兩部分,服務端及客戶端
由于NFS服務功能很多,會有很多端口,這些端口還有可能不固定,那么客戶端就無法與服務器進行通信,因為程序間通信必須通過端口(tcp/udp都是端到端通信),那么就需要一個中間的橋接機制,RPC進程即充當這樣一個角色,RPC的端口是一定的(111),當NFS啟動時,會向RPC進行注冊, 那么客戶端PRC就能與服務器RPC進行通信, 從而進行文件的傳輸。?
當客戶端用戶打開一個文件或目錄時,內(nèi)核會判斷,該文件是本地文件還是遠程共享目錄文件,如果是遠程文件則通過RPC進程訪問遠程NFS服務端的共享目錄,如果是本地文件,則直接打開。 為了更好的并發(fā),RPC進程及NFS進程都有多個。
總結
以上是生活随笔為你收集整理的NFS文件系统简介及原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用dns解析来实现网站的负载均衡
- 下一篇: java信息管理系统总结_java实现科