WELCOME

2009年12月4日 星期五

OS FreeNAS

仲想自己寫,不過人家比我寫得更好,還是轉貼把Orz:

轉自http://tw.network01.net/modules/newbb/viewtopic.php?topic_id=94&forum=8

打造免費的全能型NAS - 安裝教學

筆者在很久之前就試用過一套免費的Open Source軟體-FreeNAS來 架設一台NAS網路存儲伺服器。無奈當時FreeNAS才發展到0.1X的版本,功能少又不穩定,再加上設定不人性化,所以已很久沒去碰它了!但在今日各 家廠商所推出的NAS功能越來越多,速度又能越來越快的時候,筆者心裡想著是否有辦法可以手動打造一台免費的NAS來跟"要花錢買"的NAS比美呢? 結果在網路上搜尋了一下後,又回到了FreeNAS的懷抱。至於為什麼這次筆者又相中了FreeNAS呢,因為它目前的功能已發展到可以跟主流NAS廠商 的產品比美的地步了(支援PHP網頁伺服服器,加密型FTP,BT下載,UPNP,iTune等等),甚至有部份只出現在企業用高階產品的功能(如 iSCSI),FreeNAS都已包含其中,所以筆者不得不好好的再重新對FreeNAS來一次大評測!



不 過,雖然說現在FreeNAS已不是當年的陽春玩具,而且主要功能都專精在企業NAS的應用上,但是卻甚少看到真正有企業把FreeNAS應用到 Production Site上,頂多就是個別部門自己使用而已,歸根究底,還是一個"責任"問題!原則上,NAS是歸IT部門管理的,但是IT部門的價值在台灣並沒有被認真 的看待,一般老板的認知就是公司IT相關的東西不出任何問題是應該的(老板大都不理解一個穩定的系統是MIS或IT花了多少心血在上面),一但出現任何問 題就把問題怪在MIS或IT人員的頭上,IT部門可以說在很多企業中是個吃力不討好的部門。這也就造成了這樣一個局面︰雖然很多免費的Open Source防火牆,NAS,路由器等功能及穩定性都不錯,但是都沒有被應用在企業環境中!原因無它,如果您是IT人員,用免費的東西,不出事的話老板通 常是不會感謝您為公司節省了開支,但是一出事,鐵定就是您"貪小便宜"的錯!而且...花錢買廠商昂貴的設備也不是花您自己口袋裡的錢,反正是花公司的, 而且出了事只要一通電話叫廠商或SI過來處理就好,何樂而不為呢~ 最後,就是這樣造成了空有好的Open Source產品卻無法普及的情況~

好吧~ 吐了一些IT人的心聲後,開始切入正題,要想自己打造一台全功能的NAS系統,第一件事就是找一台電腦,要真正使用的話建議找台新的電腦,不然一般的中古舊電腦也就可以勝任了!
筆者找了一下,在牆角處發現了一台已退役的準系統~ 好吧,外型也蠻像一台專業的NAS設備,就選它吧~



看起來好像很新的樣子,方方正正



原來都已生銹了~ 要先好好打開檢查一下還能不能用



如 果只是想試玩一下FreeNAS,其實用VMware等虛擬機器軟體就可以了,如果真的要找台電腦把它變成NAS使用,最好就像筆者一樣先打開來看看主機 板上的電容有沒有"爆漿"(看電容的頂端有沒有裂開或流出爆狀液體)! 如果發現主機板上有"爆漿"的電容就代表你的電腦能打開也不一定會穩定工作了,用這樣的電腦當NAS,無疑就是跟儲存在上面的資料"過不去",而且如果你 還跑RAID,很可能在某一次當機重開後就甚麼都消失了~



這台電腦果真舊,上面還插了一張10Mbps的網卡 >.<



好多灰塵喔~ 還是先清一清比較好,電容倒是都好好的,沒有找到"爆漿"電容!



一切都檢查好沒有問題後,就可以去官網下載程式回來了! http://www.freenas.org



直接"殺"它的最新版LiveCD,V0.69b4



點擊Download後就會被導到SOUCEFORGE.NET開始下載



下載完成後是一個ISO,當然就是要把它燒錄到一片CD上~



燒錄中,一下子時間就好了~



燒好後就拿它來開機就可以了(如果沒辦法用光碟開機,可以先進BIOS確定有優先從光碟機開機,再來看看是不是燒錄失敗了)



開機到一半後會進入一個選單,這裡直接選1或甚麼都不動,等10秒它也會自動選1繼續跑下去的~



開機完成後就會停在這個畫面,因為是第一次安裝,所以選9 (Install...)



安裝的方式有分3大類,可以把系統裝在CF或USB Disk上,也可以把它直接安裝在第一顆硬碟中,然後在同一顆硬碟中再切一個分割區來當NAS的資料儲存區使用,這裡選擇3就是這種安裝方式~



它會警告您說這樣做的話硬碟上原本的資料就會被清掉...



接下來會要求您選擇從哪一台光碟機來進行安裝,現在一般每台電腦應該都只有一台光碟機了~ 所以就是它...不用選了



選擇安裝到那個硬碟,筆者的這台電腦也只有一顆IBM的20G硬碟,所以也就是它!



這邊就用預設的128MB便可~



接下來又會回到黑黑的畫面中開始進行安裝,過程中會要求你按一下"Enter"



完成後就點"Exit"離開安裝程式



最後選7,重新開機就可以了!這時候也可以把安裝光碟退出來了!



確認重開~



筆者特別把以上整個的過程錄成一段Video給大家參考用~



重新開機後,這次就算沒放安裝光碟進去,也可以正常開機並進入這個選單畫面了!這次也是一樣,選1或等10秒



等到系統停在這個選單畫面時,其實已開機完成!除非你的電腦有多於1張網卡或想改掉預設的IP位置(選擇1跟2設定),否則現在就可以透過同網段中的其它電腦連上它的網頁管理介面(WebGUI)做設定了!



先以另一台電腦PING PING看看預設的192.168.1.250通不通~



確定192.168.1.250有通後,就可以打開瀏覽器輸入 http://192.168.1.250 ,並輸入預設的使用者名稱及密碼(admin/freenas)



一切正常的話您就可以看到新的FreeNAS設定介面了!(以前舊的介面是用M0N0的,比較不好用)



FreeNAS有支援多國語言,不管正體中文或簡體中文均在支援之列!不過接下來的教學及評測我們仍然使用英文介面,順便可以學學英文嘛~ 哈哈



這是目前FreeNAS有支援到的功能!很多不同需求的功能也均在支援之列了!不錯吧~


接下來的下一篇文章,我們會測試它的iSCSI功能,也會跟SAMBA比較一下看看各自的效能表現如何~

SCSI(Small Computer System Interface)大家可能以前已聽過,回想當年是民用IDE,企業用SCSI的時代,那條排線就硬是比人家的IDE寬很多,速度又快!SCSI的相關 產品可是當年很多人流口水想要玩玩的東西。不過這回我們不是要研究SCSI,而是要試試iSCSI,一種技術及通訊協定把SCSI指令包在IP封包中來傳 送資料。iSCSI(又稱為IP-SAN)簡單來說可以想成以一般的網路線來當成SCSI的傳輸線傳資料~

(圖片出處: 鳥哥的Linux網站)


透 過這種神奇的東西~ 一台iSCSI伺服器上的硬碟可以被作業系統"誤認"為本機硬碟!利害吧~ 被"誤認"為本機硬碟後,您可以對它做的事就多了,設定權限,把它格式化成不同的檔案系統,壓縮硬碟,或作為了資料庫的儲存裝置等等)...這都是 SAMBA把一個分享(Share)掛載(Mount)成一個Driver所無法提供的優點。

(圖片出處: IBM網站)


而 且最重要的是,用SAMBA來傳檔其實是不太穩定,如果你傳的東西又多又小,那十之八九會傳送到一半的時候跟你說出現問題中斷。其中原因,就是因為 SAMBA是以File level來運作,而iSCSI卻是以Block Level來運作!效能上也會比SAMBA來得好!所以,iSCSI其實是常見於大型企業的環境中,iSCSI在個人或中小企業的環境中是甚少會發現的, 除非是一些動畫設計的中小企業,否則一般是沒有需要用到iSCSI這個東西的!iSCSI的目的就是要為X貴的FC-SAN (Fibre Channel - Storage Area Network)提供另一種相對便宜的選擇,現在除了速度跟穩定性方面還未能追上FC-SAN以外,其實IP-SAN是非常有優勢的!

iSCSI的導入成本相比FC-SAN真的是非常的便宜,首先是可以省掉一張上萬元的HBA(Host Bus Adapters)卡

(圖片出處: adaptec網站)


又 不用特別的SAN Switch,一堆光纖線跟不便宜的Tranceiver也可以省下來!簡單使用iSCSI的話其實只要有乙太網路交換機(Ethernet Switch)、網路線跟電腦上的網卡就可以了,而且現在新的伺服器作業系統大多已內建了iSCSI的驅動程式(iscsi initialator),使用上可以說比FC-SAN方便多了,技術門檻也比較低!

現在要開始設定了,回到 FreeNAS的Web GUI中。因為在上一篇文章-打造免費的全能型NAS - 安裝教學安裝好系統時,並沒有完成相關硬碟設定的作業,所以接下來就是先把我們的硬碟及儲存空間準備好給FreeNAS使用!先點一下"Disks",再點一下"Management"就可以進入到硬碟管理頁面~



再來點一下圖中的"+"號新增硬碟給系統使用



因為筆者的電腦只安裝了一顆IBM的20G硬碟,所以在DISK的地方也只偵測到一顆硬碟,這裡有一個地方要注意的是"Preformatted File System"要選UFS!,其他設定依您個人需求就可以了~



這邊的設定方式還是跟FreeNAS的前身M0N0防火牆一樣,設定後都要點一下"Apply Changes"來讓設定生效!



完成後就可以看到上一張畫右下角的狀態(Status)已從"Initializing"變成"ONLINE"了,這樣這一步設定就代表成功了!



硬碟準備好後,接下來就是要把儲存區掛載到系統上去,這時候點Disks->Mount Point



也是一樣,點一下圖中的"+"號來新增一個掛載區



因為我們之前是選擇系統及資料分割區存在同一顆硬碟上,所以記得設定"Partition"的地方要選2,也順便把這個掛載區設一個SHARE名稱



最後設定完成點了"Apply Changes"後看看Status的地方是不是顯示"OK","OK"就代表這一步也成功了!



為了可以突顯iSCSI優勝的地方,就必須要有比較,這就來跟我們常用的SAMBA比比看。所以要來這邊先把SAMBA設好,點"Service"->"CIFS/SMB"



由於只是要測測效能而不是要真實使用,所以認證(Authentication)的部份就設成"Anonymous",也就是不需認証,連上就可以用。還有右上角的"Enable"別忘了打勾喔~



SAMBA被起用後,就可以來設定網路分享資料夾了,也是點一下"+"新增



這半年來很多NAS廠商都新增了網路分享資料夾的"資源回收筒"功能(Recycle Bin),當然在FreeNAS上也沒有缺席~



設定完成!(記得有"Apply Changes"時都要點下去喔)



現 在就打開另一台電腦,透過"網路芳鄰"的方式來連看看FreeNAS的SAMBA伺服器,方式很簡單,打開檔案總管後輸入\\192.168.1.250 便可!(如果您的FreeNAS沒在用預設的IP 192.168.1.250,就輸入"\\您FreeNAS所設定的IP"),完成後就會看到我們剛剛新增的網路分享資料夾"N01Share"



這台老電腦的CPU為AMD Authlon 1600+ (1.4G),內建一張100M的網卡,測試一下,傳個大檔案上去FreeNAS,結果表現算是不過不失,平均都有超過10MB/s (100Mbps網路的理論極速為12.5MB/s)



而CPU使用率方面,果真也用不光,平均在30%~50%間跳動!筆者相信如果改成一張1G的網卡,效能上還有不少的成長空間!



SAMBA 的簡單測試結果有了,接下來就要開始設定iSCSI了~ 因為Windows Vista已直接內建了iSCSI的驅動程式(iscsi initialator),所以Vista要使用iSCSI是非常方便的,而XP卻要自己另外安裝iscsi initialator,不過微軟也有兔費提供下載!
要啟用Vista的iSCSI服務,要先進入控制台後點左下角的"設定iSCSI啟動器",接下來選"是"就可以了~



接下來就會自動進入到設定的頁面!啟動器名稱會由系統自動產生,它是一個唯一(unique)的名稱



接 下來就可以回到FreeNAS的GUI中,進入"Services"->"iSCSI"後需要先新增一個"Extent",而"Extent"可以 直接找一台硬碟以1:1對應的方法或建立一個虛擬檔案的方式來達成!筆者這次就以虛擬檔案的方式來建立一個5G的"Extent",虛擬檔案的好處就是應 用彈性比較高,但是CPU使用率也會來得相對高一些~



建完"Extent"後還需要新增一個"target"(使用剛才建立好的extent0),這邊也可以設定"只允許"那一個subnet可以使用這台iSCSI伺服器



當Extent跟Target均設定完成後,記得要打勾右上角的"Enable"後點"Save and Restart"套用!不過要注意使用iSCSI的話你的"舊"電腦必須至少要有256MB的RAM或以上~



到目前為止FreeNAS上iSCSI的設定都已完成,接下來就可以開始試看看把那台Vista的電腦連上我們的FreeNAS iSCSI伺服器!回到之前iSCSI啟動器的那個設定畫面,上面點選"探索"後點"新增入口",然後輸入iSCSI伺服器的IP



輸入完成後從上面的"探索"切到旁邊的"目標",就會發現已出現了一個iSCSI伺服器目標,但是狀態還是在"非使用中",所以需要作"登入"的動作



點一下"登入"後狀態就會變成"已經連線",代表一切順利



現在可以打開"電腦管理",您就會發現您的電腦多了一台5G左右的不明磁碟,其實這就是iSCSI連上的那個5G的target,現在已變成好像本機的一台硬碟了~



想用這顆虛擬硬碟,我們必須要先用滑鼠右鍵點一下"不明磁碟1",再點一下"初始化磁碟"進行初始化



完成初始化後這顆5G的"硬碟"就可以使用了~ 筆者把它設為Z:



它就像一台本機的磁碟機一樣,也可以進行重組



也可以自由設定相關的windows權限~



在"裝置管理員"中也可以看到這顆磁碟機,弄得好像跟真的一樣~



不過事實上這個硬碟是由FreeNAS上一個檔案(extent0)所模擬出來的~



接下來我們就試試看iSCSI的表現,傳一個大檔到Z:上,由於筆者的舊電腦(FreeNAS)是在用一張100Mbps的網卡,所以極速會被限在100Mbps(12.5MB/s)上。而FreeNAS上CPU的使用率的確也比使用SAMBA時高,現在平均約為50%



傳大檔一般是測極速用,測又多又密的小檔時效能可能就會掉很多了~ 現在來看看以Block Level來運作會不會受到多大的影響?果然,複製11307個檔案上去(約98MB),平均的速度就只剩1MB/s左右了!不過相對的,CPU使用率也降低很多~



覺 得iSCSI在傳送小檔的表現慢很多嗎 ?其實這算還好,請大家再看看複製相同的東西時SAMBA的表現~ iSCSI一分多鐘就傳完的東西,SAMBA要花上十幾分鐘才有機會傳完,平均速度只有220KB/s,而且網路如果有一點點不穩,很可能會傳到一半就死 掉~ 這也是SAMBA多年來為人詬病的地方!(大家如果有經驗透過VPN來使用SAMBA或"網路上的芳鄰"來傳東西就知道了,通常都是到一半就傳送失敗)



相信現在大家對iSCSI的優點都已有目共睹了,有興趣的話也可以自己裝一台FreeNAS來玩玩,相信如果換成Giga網路的話會更"刺激"~

接下來,我們將對FreeNAS架站及BT下載這2個功能進行簡單的介紹~


看完上一篇 (打造免費的全能型NAS - iSCSI攻略) 這個企業級應用的iSCSI功能後,現在我再回來看看一些比較普通又比較多人想要的功能!沒錯,就是Web Server(網頁伺服器)及BT下載,這2個功能目前是沒有被FreeNAS強調,可能還在Beta的階段吧。另外FreeNAS上的網頁伺服器不是使 用我們常聽到的Apache,而是使用另一套更輕巧的lighttpd,雖然有支持PHP但還是沒有辦法直接架一些動態的網站,像討論區等等,因為目前 FreeNAS中沒有內建任何的資料庫(Database),像最常用的MySQL並沒有內建在內(但是相信高手應該有辦法自行把MySQL安裝到 FreeNAS上),所以沒有辦法架一些PHP+MySQL的網站,不過還是可以寫些php的小程式或其他不會用到資料庫的網站,或成為一個HTTP下載 中心也不錯,讓別人把FTP上或其它存在FreeNAS中的檔案透過HTTP的方式下載,方便又實用!

要啟用FreeNAS的網頁伺服 器,點Service -> Webserver,因為FreeNAS的網頁管理介面(WebGUI)已用掉標準的HTTP 80 PORT,所以這邊需要再另外指定一個PORT給Web Server(如88PORT),或您也可以把FreeNAS的網頁管理介面的PORT從80換成別的,這邊就可以使用80 PORT了!最後設定完別忘了要把右上角的"Enable"打勾,再點"Save and Restart"便可~



這邊是上一步提到,把FreeNAS的網頁管理介面的PORT從80換成別的PORT的方法,進入System -> General Setup後把圖中紅框原本的PORT 80改成別的PORT即可



為了驗證FreeNAS的Web Server可以正常跑HTML跟PHP,我們就在Web Server的資料夾中放上2個檔案,一個HTML,一個PHP,看看是否都可以被正常執行



結果HTTP的檔案可以正常透過瀏覽器顯示



PHP也可以正常透過瀏覽器正常執行並顯示結果,並發現原來這版FreeNAS上跑的PHP版本為V5.2.6



當然,有用Web Server的使用者通常都習慣以FTP來上傳網站的檔案及資料,那FreeNAS的FTP又有哪些功能呢?現在來簡單的看一下~



有支援FXP(雖然不安全,但是可以把資料從一個FTP站直接搬到另一個FTP站,這卻是十分的方便),另外FTP的安全性方面也支援SSL/TLS加密法,只是憑證的部份要自己產生,有點麻煩 >.<



最後也算是萬眾矚目的一個功能,BT下載~現在市面上大部份的NAS都已內功這個功能,就算是沒有支援,也有一堆高手針對Linux的機種提供自己DIY加裝BT的方法。
要 啟用FreeNAS上的BT功能,可以進入"Services" -> "BitTorrent",把一些基本的東西設定好後,把"Enable"打勾後點"Save and Restart"便大功告成! 但是要注意BT下載的GUI跟FreeNAS是分開的,它的預設網址是http://"您FreeNAS的IP":9091



進入BT的GUI後發現還蠻單純的~



聽說有支援BT的DHT網路,也有支援BT加密的協定



加入了一個中文的torrent後,居然看到亂碼...不過老實說...這也在預期之內,FreeNAS才加入BT的功能沒多久,不太可能一次就十分完善吧~



結果再多加入一個中文torrent後,發現原來不是完全不支援中文的torrent,而是部份有問題,部份又可以正常顯示~ 不過老實說,這對下載是完全沒有影響!點一下右上角的"Inspector"還可以看到torrent的一些資訊



也可以看到目前進度的詳細資料~



最後,就是下載速度的部份,個人覺是一般一般,不過要認真比較的話得在同一個ISP下,同時再開一台電腦來下載同樣的torrents,這樣比較起來才會比較有意義!


不過如果是組一台Intel ATOM的小電腦裝FreeNAS來當動物機(雖然目前還沒有支援eMule...),下載比電腦慢一點也可以接受啦~ 全文完,謝謝收看!

沒有留言:

張貼留言