NFS 數據共享工具


2018年11月5日

16:22

NFS=network fi  server

網絡文件系統

什么式NFS

主要式通過網絡(一般式局域網)讓不同的主機系統之間可以共享文件或目錄

 共享服務器通過tcp/ 掛載到所有用戶上從而達到共享的功能

 互聯網集群構架后端常用NFS進行數據共享

負載均衡器

NFS在企業中的應用場景

在企業集群架構的工作場景中,NFS網絡文件系統一般用來存儲共享視頻,圖片附件等靜態資源文件。通常網站用戶上傳都會放到NFS共享里

集群:多台服務器共同作用,來達到分散壓力的目的

壓力:用戶訪問過多內存和CPU占用太多

 

 

 

負載均衡器:

1負載均衡(又稱為負載分擔),英文名稱為Load Balance,其意思就是將負載(工作任務)進行平衡、分攤到多個操作單元上進行執行,例如Web服務器、

FTP服務器、企業關鍵

應用服務器和其它關鍵任務服務器等,從而共同完成工作任務。

 

 

2.需要說明的是:

負載均衡設備不是基礎網絡設備,而是一種性能優化設備。對於網絡應用而言,並不是一開始就需要負載均衡,當網絡應用的訪問量不斷增長,單個處理單元無法滿足負載需求時,網絡應用流量將要出現瓶頸時,負載均衡才會起到作用。

 

負載均衡有兩方面的含義:首先,單個重負載的運算分擔到多台節點設備上做並行處理,每個節點設備處理結束后,將結果匯總,返回給用戶,系統處理能力得到大幅度提高,這就是常說的集群(clustering)技術。第二層含義就是:大量的並發訪問或數據流量分擔到多台節點設備上分別處理,減少用戶等待響應的時間,這主要針對Web服務器、FTP服務器、企業關鍵應用服務器等網絡應用。通常,負載均衡會根據網絡的不同層次(網絡七層)來划分。其中,第二層的負載均衡指將多條物理鏈路當作一條單一的聚合邏輯鏈路使用,這就是

鏈路聚合(Trunking)技術,它不是一種獨立的設備,而是交換機等網絡設備的常用技術。現代

負載均衡技術通常操作於網絡的第四層或第七層,這是針對網絡應用的負載均衡技術,它完全脫離於交換機、服務器而成為獨立的技術設備。這也是將要討論的對象。近幾年來,四到七層

網絡負載均衡首先在電信、移動、銀行、大型網站等單位進行了應用,因為其網絡流量瓶頸的現象最突出。這也就是為何每通一次電話,就會經過負載均衡設備的原因。另外,在很多企業,隨着企業關鍵網絡應用業務的發展,負載均衡的應用需求也越來越大了。

 

3.四個分類

/硬件

軟件負載均衡解決方案是指在一台或多台服務器相應的操作系統上安裝一個或多個附加軟件來實現負載均衡,如DNS Load Balance,CheckPoint Firewall-1 ConnectControl等,它的優點是基於特定環境,配置簡單,使用靈活,成本低廉,可以滿足一般的負載均衡需求。[2]

軟件解決方案缺點也較多,因為每台服務器上安裝額外的軟件運行會消耗系統不定量的資源,越是功能強大的模塊,消耗得越多,所以當連接請求特別大的時候,軟件本身會成為服務器工作成敗的一個關鍵;軟件可擴展性並不是很好,受到操作系統的限制;由於操作系統本身的Bug,往往會引起安全問題。

硬件負載均衡解決方案是直接在服務器和外部網絡間安裝負載均衡設備,這種設備通常稱之為負載均衡器,由於專門的設備完成專門的任務,獨立於操作系統,整體性能得到大量提高,加上多樣化的負載均衡策略,智能化的流量管理,可達到最佳的負載均衡需求。

負載均衡器有多種多樣的形式,除了作為獨立意義上的負載均衡器外,有些負載均衡器集成在交換設備中,置於服務器與Internet鏈接之間,有些則以兩塊網絡適配器將這一功能集成到PC中,一塊連接到Internet上,一塊連接到后端服務器群的內部網絡上。

一般而言,硬件負載均衡在功能、性能上優於軟件方式,不過成本昂貴。

本地/全局

負載均衡從其應用的地理結構上分為本地負載均衡(Local Load Balance)和全局負載均衡(Global Load Balance,也叫地域負載均衡),本地負載均衡是指對本地的服務器群做負載均衡,全局負載均衡是指對分別放置在不同的地理位置、有不同網絡結構的服務器群間作負載均衡。

本地負載均衡能有效地解決數據流量過大、網絡負荷過重的問題,並且不需花費昂貴開支購置性能卓越的服務器,充分利用現有設備,避免服務器單點故障造成數據流量的損失。其有靈活多樣的均衡策略把數據流量合理地分配給服務器群內的服務器共同負擔。即使是再給現有服務器擴充升級,也只是簡單地增加一個新的服務器到服務群中,而不需改變現有網絡結構、停止現有的服務。

全局負載均衡主要用於在一個多區域擁有自己服務器的站點,為了使全球用戶只以一個IP地址或域名就能訪問到離自己最近的服務器,從而獲得最快的訪問速度,也可用於子公司分散站點分布廣的大公司通過Intranet(企業內部互聯網)來達到資源統一合理分配的目的。

全局負載均衡有以下的特點:

實現地理位置無關性,能夠遠距離為用戶提供完全的透明服務。

除了能避免服務器、數據中心等的單點失效,也能避免由於ISP專線故障引起的單點失效。

解決網絡擁塞問題,提高服務器響應速度,服務就近提供,達到更好的訪問質量。

4.部署方式

負載均衡有三種部署方式:路由模式橋接模式、服務直接返回模式。路由模式部署靈活,約60%的用戶采用這種方式部署;橋接模式不改變現有的網絡架構;服務直接返回(DSR)比較適合吞吐量大特別是內容分發的網絡應用。約30%的用戶采用這種模式。

路由模式(推薦)

路由模式的部署方式如上圖。服務器的網關必須設置成負載均衡機的LAN口地址,且與WAN口分署不同的邏輯網絡。因此所有返回的流量也都經過負載均衡。這種方式對網絡的改動小,能均衡任何下行流量。

橋接模式

 

 

負載均衡橋接模式配置簡單,不改變現有網絡。負載均衡的WAN口和LAN口分別連接上行設備和下行服務器。LAN口

不需要配置IP(WAN口與LAN口是橋連接),所有的服務器與負載均衡均在同一邏輯網絡中。參見下圖:

由於這種安裝方式容錯性差,網絡架構缺乏彈性,對廣播風暴及其他生成樹協議循環相關聯的錯誤敏感,因此一般不推薦這種安裝架構。

服務直接返回模式

如上圖,這種安裝方式負載均衡的LAN口不使用,WAN口與服務器在同一個網絡中,互聯網的客戶端訪問負載均衡的虛IP(VIP),虛IP對應負載均衡機的WAN口,負載均衡根據策略將流量分發到服務器上,服務器直接響應客戶端的請求。因此對於客戶端而言,響應他的IP不是負載均衡機的虛IP(VIP),而是服務器自身的IP地址。也就是說返回的流量是不經過負載均衡的。因此這種方式適用大流量高帶寬要求的服務。

秘密通道VPN:

跳板機:

1.概念

跳板機是開發者登錄到網站分配給應用服務器的唯一途徑。開發者必須首先登錄跳板機,再通過跳板機登錄到 應用服務器

2.跳板機認證方式及帶來的影響

為了保護業務 機器的安全,將原有的使用固定密碼登錄跳板機的方式升級為“證書+固定密碼+動態驗證碼”三重認證方式。 

新的認證方式通過 證書避免身份偽造,通過動態token避免證書丟失后的身份假冒,能夠最大程度保證安全。

 

企業生產集群為什么需要共享存儲角色

企業生產集群沒有NFS共享存儲訪問的示意圖。下圖是企業生產集群有NFS共享存儲的情況

 

 

 

企業生產集群沒有NFS共享存儲訪問的示意圖。下圖是企業生產集群有NFS共享存儲的情況

 

 

 

 NFS系統原理介紹

NFS系統掛載結構圖解與介紹

下圖是企業工作中的NFS服務器與客戶端掛載情況結構圖

 

 

 

 

 

 

  • 可以看到NFS服務器端/video共享目錄掛載到了兩台NFS客戶端上。在客戶端查看時,NFS服務器端的/video目錄就相當於客戶端本地的磁盤分區或目錄,幾乎感覺不到使用上的區別,根據NFS服務端授予的NFS共享權限以及共享目錄的本地系統權限,只要在指定的NFS客戶端操作掛載/v/video或者/video的目錄,就可以將數據輕松地存取到NFS服務器端上的/video目錄中了。

 

  • 從掛載信息來看,和本地磁盤分區幾乎沒什么差別,只是文件系統對應列的開頭是以IP滴噢址開頭的形式了。
  • 經過前面的介紹,我們知道NFS系統是通過網絡來進行數據傳輸的(所以叫做網絡文件系統)因此,NFS會使用一些端口來傳輸數據,那么,NFS到底使用哪些端口來進行數據傳輸呢?
  • NFS在傳輸數據時使用的端口會隨機選擇。可能有同學會納悶,既然這樣,NFS客戶端是怎么知道NFS服務端使用的哪個端口呢?
  • 答案就是通過RPC(中文意思遠程過程調用,英文Remote Procedure Call簡稱RPC)協議/服務來實現,這個RPC服務的應用在門戶級的網站有很多

 

 

NFS的RPC服務最主要的功能就是記錄每個NFS功能所對應的端口號,並且在NFS客戶端請求時將該端口和功能對應的信息傳遞給請求數據的NFS客戶端,從而確保客戶端可以連接到正確的NFS端口上去,達到實現數據傳輸交互數據目的。這個RPC服務類似NFS服務端和NFS客戶端之間的一個中介。

 

 

 

 

 

 

 

 

  • 當NFS服務端啟動服務時會隨機取用若干端口,並主動向RPC服務注冊取用的相關端口及功能信息,如此一來,RPC服務就知道NFS每個端口對應的NFS功能了,然后RPC服務使用固定的111端口來監聽NFS客戶端提交的請求,並將正確的NFS端口信息回復給請求的NFS客戶端,這樣一來,NFS客戶端就可以與NFS服務端進行數據傳輸了。
  • 在啟動NFS SERVER之前,首先要啟動RPC服務(CentOS5.x下為portmap服務,CentOS6.x下為rpcbind服務,下同),否則NFS SERVER就無法向RPC服務注冊了。另外,如果RPC服務重新啟動,原來已經注冊好的NFS端口數據就會丟失,因此,此時RPC服務管理的NFS程序也需要重新啟動以重新向RPC注冊。要特別注意的是,一般修改NFS配置文件后,是不需要重啟NFS的,直接在命令行執行/etc/init.d/nfs reload或exportfs -rv即可使修改的/etc/exports生效

 

 

 

 

 

 

 

 

 

實例:

實現網絡文件共享

1.要部署NFS

需要在服務端添加一下命令包rpcbind nfs-utile

Yum -y install rpcbind nfs-utils

Rpcbind/ 監聽111接口

 sunrpc portmap rpcbind Sun RPCPortMapper/Rpcbind。訪問portmapper(端口映射器

)是掃描系統查看允許哪些RPC服務的最早的一步。常見RPC服務有:pc.mountd, NFS, rpc.statd, rpc.csmd, rpc.ttybd, amd等。入侵者發現了允許的RPC服務將轉向提供 服務的特定端口測試漏洞。記住一定要記錄線路中的daemon, IDS, 或sniffer,你可以發現入侵者正使用什么程序訪問以便發現到底發生了什么。

 

nfs

 

 

 

 2.啟動rpcbind/服務, rpcinfo/查看rpc/

 

 

 

NFS配置文件

默認root降權模式

Vim /etc/exports

 

 

 

 NFS配置權限設置常用參數說明

rw

Read-write,表示可讀寫權限

ro

Read-only,表示只讀權限

sync

(同步,實時)請求或吸入數據時,數據同步寫入到NFS Server的硬盤后才返回

async

(異步)寫入時數據會先寫到內存緩沖區,只到硬盤有空檔才會寫入磁盤,這樣可以提升寫入速率!風險為若服務器掛掉或不正常關機,會損失緩沖區中未寫入磁盤的數據

no_root_squash

訪問NFS Server共享目錄的用戶如果是root,它對該共享目錄具有root權限。

root_squash

如果訪問目錄的是root,則它的權限將被壓縮成匿名用戶。

all_squash

不管訪問共享目錄的用戶身份如何,它的權限都被壓縮成匿名用戶。

anonuid

指定共享文件夾里文件所有者的uid號:例如:(rw,squash,anonuid=12306,anongid=12306)

anongid

指定共享文件夾里文件所有者的gid號:例如:(rw,squash,anonuid=12306,anongid=12306)

3

Mkdir  /data 共享目錄

Id nfsnobody

本地掛載共享目錄

 

.Showmount/查看網絡文件能否掛載

參數-e locahost/本地掛載

 

遠程掛載:格式mount+IP號這台機器下的某個目錄或文件

 

netfs服務   強制二次讀取fstab文件

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM