陳雪華 孫赫 黃靜 王俊
摘? 要:網(wǎng)絡(luò)和信息化技術(shù)的發(fā)展催生了大容量存儲(chǔ)和高速數(shù)據(jù)安全共享備份需求。結(jié)合日常工作需求,在局域網(wǎng)環(huán)境下利用簡(jiǎn)易硬件設(shè)備和開(kāi)源軟件,設(shè)計(jì)了一種基于FreeNAS和NextCloud的云盤(pán)系統(tǒng),給出了詳細(xì)的搭建和部署過(guò)程,并使用第三方IO測(cè)試工具對(duì)系統(tǒng)讀寫(xiě)性能進(jìn)行了測(cè)試。測(cè)試結(jié)果表明,設(shè)計(jì)的云盤(pán)系統(tǒng)能夠滿足一般日常辦公數(shù)據(jù)共享使用,是一種業(yè)務(wù)化小型云存儲(chǔ)解決方案。
關(guān)鍵詞:FreeNAS;NextCloud;云盤(pán);云存儲(chǔ)
中圖分類號(hào):TP333 文獻(xiàn)標(biāo)志碼:A? ? ? ? ?文章編號(hào):2095-2945(2020)21-0008-04
Abstract: The development of network and information technology has given rise to the demand for large-capacity storage and high-speed data security sharing backup. According to the requirements of daily work, a cloud disk system based on FreeNAS and NextCloud is designed by using simple hardware equipment and open source software in LAN environment. The detailed construction and deployment process are given, and the third-party IO testing tools are used to test the reading and writing performance of the system. The test results show that the designed cloud disk system can meet the general daily office data sharing and use, and it is an operational small cloud storage solution.
Keywords: FreeNAS; NextCloud; cloud disk; cloud storage
隨著網(wǎng)絡(luò)和信息化技術(shù)的發(fā)展,在線網(wǎng)絡(luò)數(shù)據(jù)和離線業(yè)務(wù)數(shù)據(jù)積累迅速增多,由此催生了大容量存儲(chǔ)和高速數(shù)據(jù)共享的迫切需求。云盤(pán)是一種能夠?qū)崿F(xiàn)數(shù)據(jù)便捷存儲(chǔ)、共享、備份的新型解決方案,具有存儲(chǔ)容量大、功能豐富等特點(diǎn),在現(xiàn)實(shí)中得到了廣泛的應(yīng)用。隨著云計(jì)算技術(shù)的發(fā)展,大型互聯(lián)網(wǎng)公司和運(yùn)營(yíng)商紛紛推出基于云存儲(chǔ)的在線云盤(pán)應(yīng)用,例如百度網(wǎng)盤(pán)、天翼云盤(pán)、蘋(píng)果iCloud、Google Drive等。一方面,這些在線云盤(pán)能夠面向個(gè)人和企業(yè)用戶提供高效地存儲(chǔ)服務(wù),滿足了部分用戶需求;另一方面,依托公有云的各類存儲(chǔ)服務(wù)卻帶來(lái)了一定的網(wǎng)絡(luò)安全風(fēng)險(xiǎn)[1-3]。近年來(lái),網(wǎng)盤(pán)和云存儲(chǔ)相關(guān)的數(shù)據(jù)泄露事件頻發(fā),例如2010年蘋(píng)果公司用戶隱私數(shù)據(jù)泄露、2011年谷歌郵箱用戶數(shù)據(jù)泄露,使得用戶賬戶被重置、聊天紀(jì)錄和郵件被刪除。因此,對(duì)企業(yè)而言,涉及敏感和商業(yè)機(jī)密的數(shù)據(jù)更適合存儲(chǔ)于私有網(wǎng)盤(pán)內(nèi)。綜上,本文作者結(jié)合工作需要,利用簡(jiǎn)易硬件設(shè)備設(shè)計(jì)實(shí)現(xiàn)了一種基于FreeNAS和NextCloud的云盤(pán)系統(tǒng),能夠有效滿足大多數(shù)個(gè)人或小型公司的數(shù)據(jù)共享、同步和備份需求。
1 系統(tǒng)概述
1.1 FreeNAS
FreeNAS是一款開(kāi)源免費(fèi)的專門(mén)用于構(gòu)建NAS存儲(chǔ)服務(wù)器的專業(yè)操作系統(tǒng)。它基于FreeBSD開(kāi)發(fā),主要運(yùn)行在x86-64架構(gòu)的計(jì)算上,采用ZFS(Zettabyte File System)文件系統(tǒng)存儲(chǔ)、管理和保護(hù)數(shù)據(jù)。ZFS系統(tǒng)提供了輕量級(jí)快照、壓縮、重復(fù)數(shù)據(jù)刪除等高級(jí)功能,可以快速的將數(shù)據(jù)增量備份到其他設(shè)備,帶寬占用少,可有效幫助系統(tǒng)從故障中恢復(fù)。FreeNAS支持CIFS、AFP、NFS、iSCSI、SSH、rsync、WebDAV、FTP/TFTP等多種文件共享和傳輸協(xié)議,能夠適用于企業(yè)文件共享、為虛擬化服務(wù)提供后端存儲(chǔ)等應(yīng)用場(chǎng)景。應(yīng)用FreeNAS,辦公電腦可通過(guò)網(wǎng)絡(luò)映射等傳統(tǒng)方式訪問(wèn)其文件系統(tǒng),但FreeNAS存在缺少應(yīng)用端Web界面、可視化數(shù)據(jù)管理不方便等不足[4]。
1.2 NextCloud
NextCloud是一套用于創(chuàng)建網(wǎng)絡(luò)硬盤(pán)的客戶端-服務(wù)器開(kāi)放源代碼軟件,其功能與Dropbox相近。與Dropbox等專有服務(wù)相比,Nextcloud的開(kāi)放架構(gòu)讓用戶可以利用應(yīng)用程序的方式在服務(wù)器上新增額外的功能,用戶可以完全掌握和管理自己的數(shù)據(jù)。此外,NextCloud提供了易用的Web界面和客戶端軟件,方便用戶直觀的共享、下載和同步數(shù)據(jù),同時(shí)還具有加密和工作流管理等功能[5]。
1.3 硬件設(shè)備
搭建云盤(pán)系統(tǒng)的硬件包括EMC CX-80磁盤(pán)陣列1組、曙光300光纖通道交換機(jī)1臺(tái)、聯(lián)想P710工作站(內(nèi)存:16GB,CPU:3.4GHz)2臺(tái)。
2 設(shè)計(jì)云盤(pán)系統(tǒng)總體架構(gòu)
本文設(shè)計(jì)的基于FreeNAS和NextCloud的云盤(pán)系統(tǒng)總體架構(gòu)如圖1所示。設(shè)計(jì)系統(tǒng)的核心主要包括存儲(chǔ)平臺(tái)、云盤(pán)服務(wù)兩部分。
2.1 存儲(chǔ)平臺(tái)
存儲(chǔ)平臺(tái)向下整合硬件存儲(chǔ)資源,向上為云盤(pán)服務(wù)提供底層基礎(chǔ)支撐。它由存儲(chǔ)服務(wù)、擴(kuò)展服務(wù)、系統(tǒng)監(jiān)控組成。存儲(chǔ)服務(wù)提供卷管理、文件系統(tǒng)等功能;擴(kuò)展服務(wù)提供負(fù)載均衡、故障轉(zhuǎn)移等功能;系統(tǒng)監(jiān)控提供存儲(chǔ)故障報(bào)警和檢測(cè)功能。
2.2 云盤(pán)服務(wù)
云盤(pán)服務(wù)能夠在存儲(chǔ)平臺(tái)之上,向用戶應(yīng)用層提供友好可視化的WEB操作界面、數(shù)據(jù)同步/備份/共享、全文搜索、視頻會(huì)議、在線文檔編輯等功能。
整個(gè)系統(tǒng)的網(wǎng)絡(luò)拓?fù)淙鐖D2所示。工作站1的HBA卡和磁盤(pán)陣列均連接至光纖通道交換機(jī),其萬(wàn)兆網(wǎng)卡接入辦公業(yè)務(wù)系統(tǒng)交換機(jī)的萬(wàn)兆網(wǎng)口,通過(guò)網(wǎng)絡(luò)為云盤(pán)應(yīng)用提供存儲(chǔ)服務(wù)。工作站2的萬(wàn)兆網(wǎng)卡接入辦公業(yè)務(wù)系統(tǒng)交換機(jī)的萬(wàn)兆網(wǎng)口,為業(yè)務(wù)辦公終端提供可視化云盤(pán)應(yīng)用服務(wù)。
3 設(shè)計(jì)云盤(pán)系統(tǒng)部署實(shí)現(xiàn)
3.1 磁盤(pán)陣列設(shè)置
(1)在磁盤(pán)陣列中利用EMC Navisphere Manager軟
件,進(jìn)入磁盤(pán)陣列管理界面,如圖3所示。(2)識(shí)別工作站1的光纖接入信息,并在管理界面注冊(cè)該設(shè)備。(3)創(chuàng)建RAID組,選擇磁盤(pán)數(shù)量,形成多個(gè)RAID組,為了充分發(fā)揮磁盤(pán)陣列性能,在RAID組創(chuàng)建過(guò)程中,平均分配至磁盤(pán)陣列的兩個(gè)控制器中。(4)創(chuàng)建卷,并綁定上述RAID組。(5)創(chuàng)建Storage group,并將卷加入該RAID組。(6)在Storage group選擇連接主機(jī),將工作站1加入該RAID組。至此,磁盤(pán)陣列完成配置,并確保工作站1能夠發(fā)現(xiàn)并使用存儲(chǔ)空間。
3.2 存儲(chǔ)平臺(tái)
首先安裝FreeNAS 9.10操作系統(tǒng),并設(shè)置局域網(wǎng)IP;之后,通過(guò)“卷管理器”創(chuàng)建卷,將發(fā)現(xiàn)的“可用磁盤(pán)”納入該卷管理,并完成多路徑配置;隨后,創(chuàng)建用戶并分配不同的權(quán)限;最后,根據(jù)需求開(kāi)放FTP、NFA或SMB服務(wù)(圖4a)。此時(shí)網(wǎng)絡(luò)中的終端能夠通過(guò)目錄形式訪問(wèn)該存儲(chǔ)空間,如圖4b所示。
3.3 云盤(pán)服務(wù)
工作站2安裝Centos7.2操作系統(tǒng),通過(guò)NFS掛載FreeNAS共享的存儲(chǔ)空間。在此基礎(chǔ)上安裝NextCloud(版本為12.0.3),完成后創(chuàng)建用戶,并將NextCloud數(shù)據(jù)目錄指向上述存儲(chǔ)空間;最后,根據(jù)工作需要對(duì)NextCloud源碼進(jìn)行二次開(kāi)發(fā),完善業(yè)務(wù)應(yīng)用。安裝完成后的云盤(pán)系統(tǒng)界面如圖5所示。
4 存儲(chǔ)性能測(cè)試
通過(guò)網(wǎng)絡(luò)中的一臺(tái)服務(wù)器(內(nèi)存:32GB,CPU:Xeon(R) E5-2630 v4 @ 2.20GHz),利用第三方IO測(cè)試工具FIO對(duì)搭建云盤(pán)系統(tǒng)的存儲(chǔ)性能進(jìn)行了測(cè)試,帶寬測(cè)試結(jié)果如表1、圖6所示。
通過(guò)測(cè)試,該云盤(pán)系統(tǒng)在單線程、雙線程和四線程并發(fā)情況下,順序讀速率均超過(guò)170MB/s。受限于前端工作站性能,并發(fā)20線程后其聚合帶寬呈緩慢下降趨勢(shì)。由于業(yè)務(wù)辦公多為文檔、圖片,持續(xù)大數(shù)據(jù)量并發(fā)應(yīng)用較少,根據(jù)實(shí)際運(yùn)行情況,可支撐200余用戶數(shù)據(jù)共享使用。
5 結(jié)束語(yǔ)
給出了一種基于簡(jiǎn)易硬件設(shè)備和開(kāi)源系統(tǒng)的云盤(pán)系統(tǒng)設(shè)計(jì)方案。首先闡述了系統(tǒng)總體架構(gòu)和網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),然后結(jié)合FreeNAS和NextCloud等開(kāi)源技術(shù),詳細(xì)給出了軟硬件部署和系統(tǒng)搭建過(guò)程,并使用第三方IO測(cè)試工具FIO對(duì)不同線程讀寫(xiě)性能進(jìn)行了性能測(cè)試。測(cè)試結(jié)果表明,設(shè)計(jì)的云盤(pán)系統(tǒng)能夠滿足一般日常辦公數(shù)據(jù)共享使用。
參考文獻(xiàn):
[1]Jansen W, Grance T. Guidelines on Security and Privacy in Public Cloud Computing[J].National Institute of Standards and Technology, 2011(3):149-151.
[2]Ertaul L, Singhal S, Saldamli G. Security in cloud computing[C]. Security and Management, 2010:36-42.
[3]Takabi H, Joshi J B, Ahn G J. Security and privacy challenges in cloud computing environments[J]. IEEE Security & Privacy, 2010,8(6):24-31.
[4]https://www.getnas.com/what-is-freenas/[EB/OL].2019-12-19.
[5]https://www.getnas.com/what-is-nextcloud/[EB/OL].2019-12-11.