DIY“FreeNAS”超私有雲架設之術 / 騰雲駕霧 雲端儲物

221-freenas-0

在這多螢多裝置的時代,電腦所儲存的數位檔案重要性已不可言喻,要如何妥善保存數位資料,僅只有「多備份」這再簡單不過的法則,傳統的備份載具都需與備份裝置直接連接,但時至今日網路儲存設備已相當成熟,只需透過網路就能輕鬆串起眾多裝置,並將數位檔案集中管理儲存並備份。

市場中網路儲存伺服器的品牌,有著群暉、威聯通、華芸與色卡司…等產品可以挑選,除此之外還有著開放原始碼的「FreeNAS」伺服器系統,讓玩家可以將手邊汰舊換新的電腦,改裝成網路儲存功能的伺服器來使用;此次筆者便以編輯部的舊電腦,來實裝FreeNAS系統並測試,來與各位讀者分享,DIY NAS與品牌廠商販售的NAS,在硬體、軟體等各方面有何不同,讓各位玩家在評估NAS時,更能了解品牌所推出的NAS與自行DIY的差異,就看各位客官是要花錢買服務?還是花時間研究技術?

 

NAS我知 何為FreeNAS

在開始FreeNAS的介紹之前,我們先把儲存類型看過一遍,讓各位讀者更能了解NAS的前世今生。NAS其英文為Network Attached Storage若依據英文原意翻譯後,應該稱之為「網路附接儲存」,但現今NAS儼然已成為網路儲存伺服器,不僅只提供儲存之功能,更包辦了大大小小的伺服器應用。

 

儲存解決方案NAS、DAS、SAN與iSCSI

NAS原為企業儲存解決方案之一,除了NAS之外還有DAS、SAN與iSCSI,這四類都是在企業伺服器領域,所使用的儲存架構技術。

DAS(Direct Attached Storage, 直連式儲存):是直接連接在伺服器的擴充埠之下,提供陣列式的儲存系統,因此本身不具備儲存用之作業系統,運作需倚賴伺服器來操作,DAS設備通常採用SCSI等纜線,連接至伺服器端接收I/O請求;在一般家用市場中,頗具知名的「喬鼎資訊 PROMISE」有著許多DAS、NAS企業級產品,其中也有透過Thunderbolt 2所連接的硬體RAID儲存解決方案,對於Apple MAC電腦的使用者來說,DAS兼具速度與RAID儲存的硬體設備,讓影片工作者可以即時編輯龐大的影音檔案。

而另一種儲存解決方案SAN(Storage Attachment Network, 儲存區域網路),則是透過光纖網路進行連線,因此Server端須具備HBA卡以及光纖交換器,讓連接在SAN架構上的Server都可存取儲存伺服器,但SAN架構成本較高,因此只有在企業的領域中能使用到;而iSCSI(Internet Small Computer System Interface)則是透過網際網路協定,所發展的資料儲存設備的介面,也俗稱IP-SAN,它具備著SAN的高擴充性,但又不需要昂貴的光纖設備,且能直接在NAS系統上實作,透過IP傳送SCSI協定指令,支援區塊儲存的特性,讓它可以成為伺服器端最易用的儲存解決方案。

而本節的重點NAS,則是將獨立主機加上陣列式儲存技術,並有著獨立作業系統,透過網頁介面進行操作,NAS從最原始的網路儲存為基礎,如今在NAS上頭建立起諸多應用,使得NAS漸漸走入家用市場,提供使用者一個便利儲存、備份與分享的使用體驗。

而現今NAS的作業系統,各家都是採用Linux做為系統之核心,並自行開發出更便利的應用,來滿足不同層面的使用需求,在了解儲存類型之後,接著在與各位聊聊本篇的主題「FreeNAS」。

221-freenas-1
↑ NAS、SAN、DAS架構圖,DAS連接無須透過網路,而NAS與SAN都需經過網路,但NAS有自己的File System或稱作OS也行,而SAN則是直接透過伺服器的File System處理資料。

 

221-freenas-1a
↑ PROMISE Pegasus2 R6,具備Thunderbolt 2技術,可提供高達20Gbps的速度,可以說是MAC的最佳拍檔,但同樣相容於Windows環境的工作電腦。

 

Open Source Free NAS系統

一旦提及Linux這故事可長可短,眾所皆知Linux是開放原碼軟體發展中最著名的例子,只要遵循「GNU通用公眾授權條款」(GPL)任何個人與機構,都能自由地使用Linux核心與原始碼,像是群暉、威聯通與華芸,只要在Google搜尋中,使用廠商的英文名 + GPL授權,都能找到各廠商在Sourceforge網站中,所建立的原碼專案。

雖說,各廠商都提供了相同授權的原碼,但想要執行完整建置、運行起來,實在有些難度,因此想要自行DIY組裝NAS系統,則必須採用開放原碼的免費版本,在網路上搜尋DIY Free NAS,可以找到數款免費提供的作業系統,而其中又以「FreeNAS」這套最受歡迎。

FreeNAS是一套基於FreeBSD作業系統核心的開放原碼網路儲存伺服器系統,初期由Olivier Cochard-Labbe與Volker Theile在 2005年時所發起此專案,同時身兼FreeNAS專案的核心開發成員。但在2009年12月時,主要開發成員Olivier Cochard-Labbe發表聲明,將在FreeNAS 0.7版停止新功能之開發,僅提供系統Bug維護,也因為如此後續由iXsystems公司接手,此公司主要提供開源作業系統的硬體解決方案,並在接手之後替FreeNAS進行了架構上進行翻新,日後推出的版本命名,則與FreeBSD 作業系統版本命名的方式相同,採用相同的BSD授權,目前最新版為Free NAS 9.3;而iXsystems公司,不僅持續開發FreeNAS系統,並推出FreeNAS Mini包含硬體的套裝NAS伺服器。

簡而言之,FreeNAS網路儲存伺服器系統,是開源且免費提供給使用者,自行安裝使用的免費NAS系統之一,而接下來就準備進行FreeNAS的安裝步驟囉。

221-freenas-2
↑ 在Google搜尋引擎中,鍵入廠商的英文名稱與GPL授權,都能找到在Sourceforge網站中,所建立的開源計畫,有興趣的朋友可以將原始碼下載回來研究研究。

 

221-freenas-3
↑ 由iXsystems公司所推出的FreeNAS Mini機種,採用FreeNAS系統與Intel Atom處理器、16GB DDR3 ECC記憶體、雙Gigabit網路,硬體規格相當豪華的機種。

 

DIY FreeNAS硬體解析

不論要DIY電腦或者FreeNAS,都要先從硬體著手,FreeNAS系統對於硬體的支援與FreeBSD相同,而在FreeNAS 9.3之後,僅支援64位元的AMD Athlon 64、Opteron與Intel Xeon、Core 2、Pentium、Celeron等處理器,至於硬體方面的網路、SATA、USB等控制器支援,則可參考「FreeBSD 9.3-RELEASE Hardware Notes」中所詳細提及的硬體支援,或者乾脆點直接裝上FreeNAS就知道支不支援了。

筆者此次將編輯部閒置的硬體,來實際安裝FreeNAS系統,處理器採用Intel Celeron G1830,主機板則搭配Gigabyte GA-B85N Phoenix,以及Kingston HyperX Savage DDR3 4GB*2kit記憶體,此外在說明中建議,FreeNAS安裝最少8GB記憶體,硬碟儲存方面,筆者則是選用兩顆WD RED 6TB硬碟。

而FreeNAS硬體較特別之處在於,可以將FreeNAS直接安裝在CF卡、USB隨身碟上,或者是一般的傳統硬碟、固態硬碟,但是當作系統碟的多餘空間,將無法用來儲存資料,換句話說若用120GB SSD當作系統碟,剩下的空間是不能用來挪作儲存資料使用,因此筆者選擇Kingston DT micro 3.1 32GB當作系統碟。

而對於大部分嘗試FreeNAS的使用者,都是因為家中多出了閒置的舊電腦設備,還未壽終正寢只是汰舊換新,遂安裝FreeNAS來玩玩,因此筆者在測試FreeNAS時同樣是在裸測架上完成,若有需要機殼的朋友,可以參考銀欣CS01與DS380或者聯力PC-Q26…等NAS機殼,這類機殼都有著多硬碟空間與小型化的設計,因此在挑選時除了要注意,可安裝的主機板尺寸之外,使用的電源是否能直上ATX或者需要SFX的電源供應器,也是挑選時需要注意的重點之一。

221-freenas-4
↑ 銀欣CS01-HS,筆者相當喜歡這機殼的設計,煙囪垂直式的設計,具備6組硬碟托架、120mm穿甲彈風扇、iTX主機板、SFX電源,若是自用筆者挺想挑這殼來DIY。

 

221-freenas-5
↑ 聯力PC-Q26在外型上就像一般電腦,但內部預留的硬碟空間多得嚇人,至多10組硬碟安裝空間,支援iTX主機板與ATX電源,讓FreeNAS也能超強悍。

 

電腦DIY測試平台
處理器:Intel Celeron G1830
主機板:Gigabyte GA-B85N Phoenix
記憶體:Kingston HyperX Savage DDR3 4GB*2
系統碟:Kingston DT micro 3.1 32GB
儲存硬碟:WD RED 6TB 3.5吋SATA3
電源供應器:FSP AURUM V 450W
作業系統:FreeNAS 9.3

 

FreeNAS的安裝術

硬體準備好之後,接下來就準備進行FreeNAS的系統安裝,需先至FreeNAS網站(www.freenas.org)下載最新的可開機映像檔(.iso),映像檔可直接燒至DVD光碟上安裝,也可以使用Win32DiskImager程式,將映像檔燒錄至USB隨身碟當中,在進行系統的安裝。

準備好可開機隨身碟之後,就需要進入BIOS調整開機裝置順序,以及將BIOS的「安全啟動」給關閉,主機板出貨時這預設都會是開啟,安全啟動開啟之後,只有受認證的韌體、作業系統才能進行開機程序,而我們安裝的FreeNAS系統不在此限,因此需要將安全啟動給關閉,或者將Windows Feature設定成Other OS即可,如此一來就能使用製作好的FreeNAS隨身碟進行開機,就能成功啟動GRUB選單,並開始執行FreeNAS Installer程序,由於以下皆為步驟操作,因此則以圖帶文的方式進行一步一步教學。

221-freenas-6
Step 1. 先至freenas.org網站中,下載最新的FreeNAS-9.3-RELEASE.iso映像檔案,並選擇是要使用光碟燒錄,或者再準備一隻隨身碟進行開機碟的製作。

 

221-freenas-7
Step 2. 筆者選擇使用USB隨身碟當作安裝載具,因此需透過「Win32 Disk Imager」程式,將第1步下載的iso檔案,燒錄至USB隨身碟中,燒錄成功之後,這支隨身碟在Windows系統中,會被判定需要格式化才能使用,但這只是格式不同所致,因此可直接當作開機碟來使用。

 

221-freenas-8
Step 3. 接著先進入預安裝電腦的BIOS中,將Windows 8 Features或者安全啟動的功能關閉,並選擇Other OS的選項。

 

221-freenas-9
Step 4. 並將開機啟動優先權設定為,具有開機功能的FreeNAS-9.3安裝碟,而第二優先權則可以選擇,另一隻要當作系統碟的隨身碟。

 

221-freenas-10
Step 5. 設定完畢後按下F10儲存BIOS,並插入FreeNAS-9.3安裝碟重新開機,系統會自動進入GNU GRUB的開機選單,這時直接選擇FreeNAS Installer即可。

 

221-freenas-11
Step 6. 接著系統會進入FreeNAS 9.3-RELEASE Console Setup選單,選擇1 Install/Upgrade選項。

 

221-freenas-12
Step 7. 下一步會需要指定安裝的磁碟,這邊就直接選擇USB或者CF卡來安裝,畢竟現在一顆HDD或者SSD容量都相當大,直接拿來當作系統碟實在不明智,使用空白鍵標示安裝碟,選擇後再按下OK進行安裝。

 

221-freenas-13
Step 8. 再下一步則有提醒視窗,這步驟會清除分割磁區與資料,且這磁碟無法用來儲存資,並再三提醒建議安裝在隨身碟,而不是一般的硬碟,了解之後請按下OK按鈕。

 

221-freenas-14
Step 9. 再來需要在安裝時,就指定root最高權限的密碼,這組密碼請妥善保存,輸入完畢後請按下OK按鈕。

 

221-freenas-15
Step 10.緊接著就是一連串的安裝程序,這過程並不會太久,若安裝成功會跳出提示訊息,顯示已經在da0裝置上安裝成功,請移除安裝隨身碟並重新開機的指令。

 

221-freenas-16
Step 11.重開機之後,系統會自動從安裝系統的隨身碟進行開機,開機成功後會進入FreeBSD的Console setup,而下方會列出可連線的IP位址,若系統已自動連接上網路,接下來即可透過網頁來操作,若無法連網或者有特殊連線設定,則可以透過Console來操作,安裝到這步就已完成。

 

FreeNAS的應用術

電腦DIY編輯室的區域網路,都是透過路由器的DHCP自動分配,因此只要連上網路即可操作,若開機時無法使用網路有幾種可能,第一種是該環境需要特別設定固定IP、子遮罩網路或者DNS,因此需透過Console進行操作,另一個可能是不支援該網路晶片硬體,這就可能要查主機板使用的網路IC,在網路中搜尋有無提供給FreeBSD的驅動,並執行安裝起來,但就筆者測試下來,大部分的裝置支援性都很好,除非用了最新的晶片、平台,可能還是有些支援性的問題,若遇到問題可至FreeNAS論壇(forums.freenas.org)尋求協助。

在初始化時較特別的是,FreeNAS採用ZFS檔案系統,ZFS由Sun Microsystems.所開發,具備檔案系統、磁區管理、快照、寫入同時複製、複製等特性,具備軟體RAID-Z技術,提供RAID 10、RAID Z2、RAID Z1與RAID 0型態,RAID 10需要至少4顆硬碟,有著最佳效能與容量具備容錯機制,而相對的RAID 0則是最大容量與最快速度,但無容錯備援機制,而RAID Z2則建議用來當作備份使用,但需要至少4顆硬碟,而RAID Z1則需要三顆硬碟,這兩種型態都具備容錯機制,只差在容錯的硬碟數量而已,在選擇時可以依據使用需求與硬碟數量來調整。

FreeNAS安裝成功也知道連線IP之後,就可以直接透過瀏覽器來操作NAS系統了,接下來可以透過初始化精靈,對系統進行操作,幾個步驟就能讓FreeNAS開始工作。

 

初始化FreeNAS

221-freenas-17
Step 1. 在瀏覽器中輸入FreeNAS的網址之後,就能開啟FreeNAS的登入頁面,預設的帳號為root而密碼則是安裝時自行輸入的密碼,登入後會有初始化精靈,接著跟著精靈一步一步操作FreeNAS初始化功能。

 

221-freenas-18
Step 2. 初始化第一步,會先設定系統語言、Console Keyboard與時區:FreeNAS支援繁體中文,因此可以選擇Traditional Chinese、Console Keyboard無須調整、而時區選擇Asia/Taipei。

 

221-freenas-19
Step 3. 接著會需要定義Pool Name,所謂Pool Name即是系統的儲存池與其型態,可以選擇RAID 10、RAID Z2、RAID Z1與RAID 0,可依據使用需求與硬碟量自行調整。

 

221-freenas-21
Step 4. 在初始化時,可以直接將FreeNAS加入現有使用者目錄,支援微軟Active Directory、LDAP、NIS與NT4等目錄,若無需加入網域,則可以不填入任何資訊,按下下一步即可跳過此步驟。

 

221-freenas-22
Step 5. 接著需要替FreeNAS加入共享目錄,但須選擇是要Windows CIFS、Mac OS X AFP或者通用的NFS與iSCSI都可在這步新增,這步就看自己使用的需求來設定即可。

 

221-freenas-23
Step 6. 在新增共享目錄時,可以按下Ownership設定權限,也可以之後再進行設定。

 

221-freenas-24
Step 7. 最後設定則是管理者的訊息通知,需輸入E-Mail帳密、伺服器等資訊,當FreeNAS出現異常時,會自動透過E-Mail發出通知。

 

221-freenas-25
Step 8. 設定完畢後,會需要讓初始化精靈執行設定,如此一來就大功告成FreeNAS的基本設定。

 

應用FreeNAS

架設NAS最需要的功能,莫過於網路芳鄰的共享資料夾,在初始化時已建立完畢,但還需要替區網內的使用者建立帳號,可在FreeNAS的操作介面中,找到[新增使用者]的功能,新增時需輸入帳號、密碼、全名與電子郵件,其餘的進階設定可使用預設,若對細部設定有興趣的朋友,可以參考doc.freenas.org中有詳細的設定功能介紹。

建立好使用者,就可以透過Windows的Samba進行連線,如此一來就能使用共用資料夾的功能,讓區網內的電腦都能透過FreeNAS來儲存資料取得檔案,如此一來建立NAS的第一需求就已能滿足。

除了共享資料之外,NAS基本的管理功能像是使用者、網路、儲存、共享功能與服務,在FreeNAS上都可以直接進行設定與使用,但若要使用一些家用、娛樂的功能,則要來到「Plugings」這邊,除了可自行上傳Pluging之外,也有FreeNAS整理的可相容列表,只要按下想安裝的插件,就能自動下載與安裝,像是Transmission、PlexMediaServer等插件,下載之後再已安裝的頁面中可以啟動插件,在左手邊則會多出插件的選單,即可開始使用插件所提供的功能。

但大多數功能,除了安裝、啟用之外,都還需要一些基礎設定,才能讓插件正常使用,這也是DIY FreeNAS的一個部分,省錢花時間研究技術,FreeNAS在網路上的資源、教程相當的豐富,但需要花費時間研究與實作,若對於有UNIX、FreeBSD基礎的朋友來說,絕對是駕輕就熟,但對於初入門的使用者來說,只要肯花時間啃資料,完成基本功能的建置也不會太難,就看是要省錢還是省時間練技術。

221-freenas-26
↑ FreeNAS網頁管理介面,主要設定功能都列在左側邊欄上,上方也有功能應用與子選項,透過網頁就能對FreeNAS進行完整設定。

 

221-freenas-27
↑ 建立好FreeNAS的共用資料夾與使用者權限之後,就能再網路芳鄰中找到FreeNAS的共用資料夾,如此一來就能就能利用FreeNAS進行備份、儲存與共享的目的。

 

221-freenas-28
↑ FreeNAS預設非常多Built-in User,這些基本上不太需要調整,而新增使用者時,記得選好使用群組,在到儲存介面中針對共享資料夾設定權限群組。

 

221-freenas-28a
↑ 設定共享資料夾權限時,是透過所有者(群組)進行區分,因此設定時需將使用者加入該群組,這樣新的使用者才有權限使用共享資料夾的功能。

 

221-freenas-28b
↑ 而儲存區中則有提供Snapshots快照的功能,讓用戶可針對需要備份的磁區進行快照動作,快照不僅快速且不影響磁區工作,可以說是相當好用的本地備份工具。

 

221-freenas-29
↑ Plugings頁面,讓用戶可自行安裝插件,FreeNAS也羅列眾多可使用的插件,讓用戶可以直接下載安裝並啟動,但諸多功能還是需要花點時間研究設定,才能讓插件正常的運作。

 

221-freenas-30
↑ 在已安裝的頁籤中,可以啟用、關閉或者刪除插件,而且啟用插件之後,在左側邊欄則會出現插件的連結,透過新的頁面來開啟插件提供的功能與應用。

 

221-freenas-31
↑ FreeNAS也提供線上檢查更新的功能,讓用戶無須透過Console進行操作,也能替系統進行升級。FreeNAS 9.0的基本功能已相當完善,若無太多特殊應用,FreeNAS可以說是相當好用的系統。

 

221-freenas-32
↑ 系統中也提供CPU、磁碟、記憶體、網路、Partition、系統與ZFS的報表,供使用者查看,若只是當作檔案系統來說,CPU Usage都不會太高,大多數時間都在閒置。

 

221-freenas-33
↑ FreeNAS也提供完整的程序執行列表,讓使用者觀看目前系統中執行的程序狀況,8GB的系統記憶體,對於一般應用來說非常足夠。

 

效能測試

基本功能測試完畢,不免俗的來比較下傳輸效能,筆者透過Samba將FreeNAS的共享資料夾,新增成網路磁碟,並在Gigabit網路環境中進行測試,測試軟體則使用CrystallDiskMark對FreeNAS的Public共享資料夾進行測試,測得讀取116.7 MB/s、寫入111.9 MB/s,換成iSCSI的方式在進行測試,也獲得同樣的數據,不過本次使用的主機板,由於只有單一網路埠,因此並無法實做Link Aggregations的功能,但就以效能方面,肯定能滿足玩家對NAS的需求。

在耗電量上,筆者DIY的這組平台閒置時耗電60瓦,而在進行資料傳輸時約在70瓦左右,耗電量會比市售的還要高出一些,提供給有興趣的玩家們參考。

221-freenas-35
↑ 使用CrystallDiskMark軟體進行測試,讀取116.7 MB/s、寫入111.9 MB/s。

 

金錢 時間 技術的三方角力

經過此番測試,總要給個結論,究竟是要選購廠商推出的NAS系統,還是乾脆自行DIY裝一套FreeNAS更省錢呢?就筆者自行測試來看,這問題就像是DIY電腦與套裝電腦一樣,若玩家自行去光華自行挑選零件來組裝DIY電腦,與直接購買品牌廠商推出的套裝電腦,其實最大差異莫過於系統與售後服務。

套裝電腦,讓你帶回家接上電就能使用,並且提供了作業系統的授權,與完整的售後服務與保固;而DIY電腦,則是捨棄這些,玩家帶回家需自行安裝系統、保固則是依據產品而非整台主機,若遇到問題時則需要自行想辦法解決,或者上網問功夫。這道理與DIY FreeNAS與購買套裝NAS系統一樣,DIY FreeNAS雖然省下一筆硬體費用(淘汰舊電腦直接改裝),但第一次都需要花時間研究FreeNAS如何安裝、設定與操作,而套裝的NAS系統則是買回來接上電,有著精美的操作介面設計,簡單幾個步驟就能架設好NAS,並且有著廠商大力開發各式各樣的應用在NAS上,對於使用者來說,就是要花金錢省時間,還是省錢花時間研究技術,這抉擇就讓客官自行決定。

2015-12-04_104909

 

附錄 – 參考資料

臉書留言