超載
存儲(chǔ)文件、媒體中心、一機(jī)多用……這些難道真的要分別準(zhǔn)備諸多電腦類設(shè)備,如迷你電腦,主力電腦,NAS系統(tǒng)?其實(shí)完全不必,一臺(tái)電腦+一個(gè)UNRAID系統(tǒng)就足夠了!本質(zhì)上,UNRAID是一個(gè)基于LINUX slackware的輕量化系統(tǒng),除了具備強(qiáng)大的NAS功能外,UNRAID也具備充當(dāng)應(yīng)用程序服務(wù)器和虛擬機(jī)主機(jī)的能力(圖1)。
顧名思義,UNRAID是相對(duì)RAID而言的,簡(jiǎn)單說(shuō)它并不使用傳統(tǒng)的RAID機(jī)制用來(lái)存儲(chǔ),而是帶有校驗(yàn)盤(即容錯(cuò)功能)的JBOD。
在大多數(shù)情況下,RAID數(shù)據(jù)是比較平均地分布在RAID陣列的多個(gè)驅(qū)動(dòng)器中。因此一個(gè)文件的數(shù)據(jù)可以被分散在于多個(gè)磁盤上。無(wú)論是重視速度的RAID0還是重視數(shù)據(jù)安全的RAID1,甚至是RAID0+1等等RAID模式,都存在這樣那樣的問題,例如沒有數(shù)據(jù)備份功能、可用硬盤容量減少,很多模式下設(shè)備損壞后數(shù)據(jù)還比單盤更難以恢復(fù)(圖2)。
UNRAID的磁盤系統(tǒng)就沒有這方面的問題,它是通過添加專用的奇偶校驗(yàn)盤來(lái)管理任何磁盤設(shè)備的數(shù)據(jù)。也就是說(shuō)UNRAID在使用硬盤的時(shí)候可以隨意添加硬盤,可以是不同大小、不同速度的組合,最后整合為同一個(gè)存儲(chǔ)池。但和Windows不一樣的地方在于,它只需要額外多添加一塊硬盤(容量≥存儲(chǔ)池中任意一個(gè)硬盤)用來(lái)做奇偶校驗(yàn)即可。由于存在這樣一個(gè)用來(lái)奇偶校驗(yàn)的硬盤,UNRAID存儲(chǔ)池中任意一個(gè)硬盤壞掉也不會(huì)影響任何數(shù)據(jù)。即便極端情況下第二個(gè)硬盤損壞,也僅僅是該硬盤的數(shù)據(jù)丟失,而不是整個(gè)存儲(chǔ)池中的數(shù)據(jù)丟失。
為了簡(jiǎn)化可管理性,用戶需要?jiǎng)?chuàng)建共享來(lái)允許數(shù)據(jù)分散在多個(gè)驅(qū)動(dòng)器上,每個(gè)共享會(huì)被視為驅(qū)動(dòng)器上的頂級(jí)文件夾。也就是說(shuō)在瀏覽共享時(shí),來(lái)自參與該共享的所有驅(qū)動(dòng)器的所有數(shù)據(jù)將一起顯示。使用者根本不需要知道文件究竟位于哪個(gè)磁盤上就可以通過共享訪問(圖3)。
除了在文件上的保存、瀏覽及使用方式是UNRAID與眾不同的特點(diǎn)之外,UNRAID的作用遠(yuǎn)不止于此——它通過Docker的方式,實(shí)現(xiàn)了一個(gè)極為強(qiáng)大的虛擬機(jī)應(yīng)用系統(tǒng)。如媒體中心(Plex、Openelec等)、NAS系統(tǒng)、家庭數(shù)據(jù)中心、Linux甚至Windows。而且得益于硬件直通的設(shè)計(jì),UNRAID可以把電腦上的資源(硬件)指定給不同的虛擬機(jī),讓其發(fā)揮最佳功效。此外UNRAID還有許多插件,而且支持Docker也支持vm虛擬機(jī),甚至它有一個(gè)完善的應(yīng)用市場(chǎng),這就讓UNRAID的實(shí)用性極大提升(圖4、圖5)。
1、相比Freenas類NAS系統(tǒng),UNRAID的存儲(chǔ)方案更具靈活性、成本低、更適合家用,并且具備完善的虛擬化功能;
2、對(duì)比PVE、ESX I類的虛擬化系統(tǒng),UNRIAD成本低廉,技術(shù)門檻極低,對(duì)家用來(lái)說(shuō),可靠性也非常優(yōu)秀;
3、相比Windows、Linux類的桌面操作系統(tǒng),UNRIAD的輕量化設(shè)計(jì)更適合NAS,硬件購(gòu)置成本也非常低。
1、收費(fèi),免費(fèi)版本有30天試用時(shí)間,基礎(chǔ)版支持6硬盤,價(jià)格約為390元;高級(jí)版支持12硬盤,價(jià)格大約為590元左右;專業(yè)版沒有硬盤限制,價(jià)格也最貴,大約850元左右。而且要注意,只要在UNRAID系統(tǒng)中安裝的硬盤就被計(jì)算一個(gè),如校驗(yàn)、緩存加速的硬盤,也要計(jì)算在內(nèi);
2、全英文版,目前6.9.0測(cè)試版依舊不支持中文,據(jù)悉7.0版本有望支持中文;
總體上看,UNRAID更適合有對(duì)存儲(chǔ)能力、多系統(tǒng)等方面有明確需求,而且有較多DIY經(jīng)驗(yàn)的用戶使用,其價(jià)格相對(duì)于常見的免費(fèi)、共享軟件來(lái)說(shuō)當(dāng)然有些貴,但比專用的NAS等產(chǎn)品還是便宜得多。至于不太明確自己需求的朋友,30天的試用應(yīng)該也能讓大家確定是否需要花這個(gè)錢了。
除了一臺(tái)電腦,UNRAID在使用前還需要準(zhǔn)備什么?答案是一個(gè)超過512MB容量的USB閃存盤就夠了(當(dāng)然還是推薦4GB至8GB的USB閃存盤為宜)!首先瀏覽UNRAID官方網(wǎng)站下載制作工具(下載地址:https://unraid.net/download)。這個(gè)工具是負(fù)責(zé)制作UNRIAD系統(tǒng)的USB閃存盤安裝工具,大約為13.7MB,用于在線安裝,并且可以提前進(jìn)行部分基礎(chǔ)設(shè)置(圖6)。
第二個(gè)是離線安裝包,下拉官網(wǎng)頁(yè)面,找到并點(diǎn)擊ManualInstallation,在StableReleases里可以看到有兩個(gè)穩(wěn)定版本,分別是6.8.2和6.8.3,推薦下載6.8.3,容量大約為213MB。這個(gè)離線安裝不支持基礎(chǔ)設(shè)置,但是可以避免在線制作工具時(shí)間過于冗長(zhǎng)的問題(圖7)。
準(zhǔn)備完畢開始制做USB閃存盤。用第一種工具制作時(shí)雙擊程序運(yùn)行,點(diǎn)擊第一步的“Customize”,然后在Servername處填寫自定義的服務(wù)器名稱。接下來(lái),在Networkmode處,推薦選擇“StaticIP”設(shè)置一個(gè)固定的局域網(wǎng)地址,這要根據(jù)自己的局域網(wǎng)情況來(lái)確定(在本機(jī)運(yùn)行CMD輸入命令I(lǐng)PCONFIG即可查看到本地IP段),如192.168.1.20之類。最后注意“AllowUEFIBoot”項(xiàng),如果需要UEFI引導(dǎo),那么最好勾選這項(xiàng)(新主板多只支持UEFI引導(dǎo))。最后如果確認(rèn)無(wú)誤,點(diǎn)擊Write寫入(圖8)。
點(diǎn)擊Write后會(huì)彈出提示,點(diǎn)擊“EraseandWrite”即可開始。注意,這一操作會(huì)清楚USB閃存盤的數(shù)據(jù),所以為了避免搞混一致其他USB閃存盤數(shù)據(jù)丟失,強(qiáng)烈建議制作時(shí)只插入一個(gè)USB閃存盤(圖9)。
如果覺得在線安裝太慢,我們還可以選擇使用離線安裝包進(jìn)行安裝,不過這么做的缺點(diǎn)就是不可定制,包括服務(wù)器名稱,IP地址預(yù)設(shè)都不可以(調(diào)試階段可以修改)。我們同樣需要準(zhǔn)備一個(gè)USB閃存盤,然后右鍵點(diǎn)擊USB閃存盤圖標(biāo),選擇“格式化”(圖10)。
USB閃存盤的文件系統(tǒng)選擇“FAT32”,并且在“卷標(biāo)”處填寫名稱“UNRAID”,注意務(wù)必全部大寫,然后點(diǎn)擊“格式化”(圖11)。
格式化完畢后,解壓并復(fù)制之前下載的離線壓縮包文件到這個(gè)USB閃存盤中,找到make_bootable.bat文件,右鍵單擊,選擇“以管理員身份運(yùn)行”(圖12)。
彈出的CMD窗口中,根據(jù)提示是否設(shè)置UEFI啟動(dòng),然后根據(jù)提示按下任意鍵繼續(xù)執(zhí)導(dǎo)執(zhí)行完畢即可(圖13)。
這時(shí)候,無(wú)論哪種方式,USB閃存盤啟動(dòng)盤都制作成功了。我們只需要拔下USB閃存盤安裝到電腦上(確保電腦網(wǎng)線連接正常),開機(jī)進(jìn)入BIOS設(shè)置USB閃存盤啟動(dòng)即可,讓USB閃存盤引導(dǎo)進(jìn)入U(xiǎn)NRAID。在引導(dǎo)界面如果不進(jìn)行任何干預(yù),將自動(dòng)進(jìn)入U(xiǎn)NRAID系統(tǒng),并且此時(shí)是不帶圖形界面的,我們就可以轉(zhuǎn)移到另一臺(tái)電腦上操作了。如果是使用離線安裝包安裝的,注意在啟動(dòng)后會(huì)提示IP v4地址,記住這個(gè)IP地址即可。此外,如果臨時(shí)沒有其他電腦可用,也可以在這個(gè)引導(dǎo)界面用方向鍵選擇第二條“UnraidOS GUI Mo de”模式,UNRAID啟動(dòng)后會(huì)自動(dòng)加載一個(gè)瀏覽器窗口供調(diào)試使用(圖14)。
UNRAID安裝完畢,我們就可以通過其他電腦的瀏覽器進(jìn)行配置調(diào)整了。只需要在瀏覽器地址欄輸入剛剛安裝好的UNRAID IP地址就可以進(jìn)入主界面。注意首次登錄的時(shí)候輸入用戶名ROOT即可,無(wú)需輸入密碼。進(jìn)入主界面后,我們首先需要設(shè)置時(shí)間,點(diǎn)擊“Settings”切換選項(xiàng)卡,然后找到“Date and Time”填寫一個(gè)時(shí)間服務(wù)器,如在NTP Server 1處填寫“time.apple.com”(也可試用ntp1.aliyun.com或s1b.time.edu.cn)即可同步時(shí)間(圖15)。
然后點(diǎn)擊“TOOLS”選項(xiàng)卡,點(diǎn)擊“Get Trial KEY”就可以獲取試用版秘鑰,開始試用。注意,如果沒有設(shè)置時(shí)間同步讓UNRAID獲取正確時(shí)間,則無(wú)法獲得試用KEY申請(qǐng)(圖16)。
首先我們要配置硬盤,點(diǎn)擊“Main”進(jìn)入主設(shè)置界面,有三個(gè)部分需要注意,分別是Parity Devices校驗(yàn)磁盤,ArrayDevices存儲(chǔ)磁盤和Cache Devices緩存磁盤。其中,Array Devices就是作為存儲(chǔ)使用的硬盤,添加所需硬盤到這里即可實(shí)現(xiàn)存儲(chǔ)功能,單純這樣使用毫無(wú)問題,不過此時(shí)UNR AID下的數(shù)據(jù)是沒有任何保護(hù)的,這就需要在Parity Devices中添加硬盤作為奇偶校驗(yàn)使用。最后就是Cache Devices部分,它可以緩存磁盤讀寫,如果使用Cache Devi ces,推薦安裝并在這里選擇使用固態(tài)硬盤(圖17)。
硬盤添加完畢,下拉到“ArrayOperation”處,點(diǎn)擊Start,勾選后點(diǎn)擊FORMAT即可(圖18)。
需要注意,UNRIAD添加硬盤后,只要重啟或者重新開機(jī),都需要手動(dòng)啟用Start Array,所以我們需要設(shè)置開啟自啟,方法是點(diǎn)擊“Settings”選項(xiàng)卡,找到“Disk Settings”項(xiàng),然后將“Enable auto start”修改為“YES”,再點(diǎn)擊下方的“APPLY”就行了(圖19)。
硬盤添加完畢,根據(jù)需求設(shè)置共享文件夾(在“Shares”選項(xiàng)卡下設(shè)置)就可以將其當(dāng)做一個(gè)局域網(wǎng)內(nèi)的存儲(chǔ)服務(wù)器了。不過我們要的可不僅于此。UNRIAD具備優(yōu)秀的功能擴(kuò)展性,比如使用Docker。還是切換到“Settings”選項(xiàng)卡,找到Docker項(xiàng)點(diǎn)擊進(jìn)入,然后選擇“Enable Docker”設(shè)置為“YES”。這樣一來(lái),我們才可以進(jìn)行應(yīng)用社區(qū)的使用(圖20)。
UNRAID的應(yīng)用社區(qū)Apps非常繁榮,有許多增強(qiáng)功能值得使用,它們有的是打包封裝的Docker容器,有的是類似插件類的Apps。要想給UNRAID增加功能,就必須開啟的應(yīng)用社區(qū)。方法是點(diǎn)擊“Plugins”切換選項(xiàng)卡,點(diǎn)擊切換到“InstallPlugin”處,然后填寫地址“https://www.52help.net/ad/nas/Squidly271/community.applications/master/plugins/community.applications.plg”,再點(diǎn)擊“Install”安裝即可。安裝完成后刷新頁(yè)面,就可以看到上方選項(xiàng)卡會(huì)多出一個(gè)Apps項(xiàng)。從此,我們就可以通過這里對(duì)UNRAID進(jìn)行功能擴(kuò)展了(圖21)。
硬件直通簡(jiǎn)單說(shuō)就是將這臺(tái)裝有UNRAID的電腦中部分硬件,越過系統(tǒng)直接分配給所需要使用的虛擬機(jī),比如網(wǎng)卡、硬盤乃至顯卡等設(shè)備,這樣一來(lái),你可以實(shí)現(xiàn)一機(jī)多用,而且各司其職,互相之間性能不受干擾。當(dāng)然了,調(diào)試之前,必須先來(lái)熟悉一些基礎(chǔ)知識(shí),尤其是當(dāng)前UNRAID全英文的操作界面可能會(huì)讓人望而卻步,實(shí)際上,UNRAID的選項(xiàng)設(shè)置比較簡(jiǎn)單,筆者也將常見的選項(xiàng)設(shè)置及含義給大家奉上,方便觀察調(diào)整:
1、HVM支持是指IntelVT-x或AMD-V;
2、NotAvailable表示硬件不支持HVM;
3、Disabled表示您的硬件支持HVM,但未啟用主板BIOS中的設(shè)置;
4、Enabled表示您的硬件既支持HVM,也啟用了主板BIOS中的相應(yīng)設(shè)置;
5、IOMMU支持指的是IntelVT-d或AMD-Vi;
6、NotAvailable僅在系統(tǒng)不支持HVM時(shí)顯示;
7、Disabled表示硬件不支持IOMMU,或者未啟用主板BIOS中的相應(yīng)設(shè)置;
8、Enabled表示硬件具有IOMMU功能,并且主板BIOS中的相應(yīng)設(shè)置也已啟用。
進(jìn)入系統(tǒng)第一步,就是要檢查你的HVM和IOMMU是否為打開狀態(tài),如果沒有打開,請(qǐng)重啟進(jìn)入系統(tǒng)BIOS在CPU選項(xiàng)開啟VT-x、VT-d,這里就不在多介紹了(圖22)。
接下來(lái)就是直通的工作了,所謂直通,其實(shí)就是在輸入被直通設(shè)備的ID后,系統(tǒng)會(huì)屏蔽這個(gè)設(shè)備的驅(qū)動(dòng)加載,然后讓虛擬機(jī)來(lái)直接調(diào)用該設(shè)備。需要注意,如果要使用直通網(wǎng)卡,必須是雙網(wǎng)口以上的設(shè)備,并且要保留一個(gè)網(wǎng)口不直通,留給系統(tǒng)使用,否則UNRAID自身將無(wú)法接入網(wǎng)絡(luò),一切也就無(wú)從談起了。
在直通操作時(shí)點(diǎn)擊主頁(yè)面的“TOOLS”,找到“SystemDevices”項(xiàng)點(diǎn)擊進(jìn)入,查看全部硬件設(shè)備的代碼。一般我們要直通的,無(wú)非就是CPU、網(wǎng)卡、顯卡、硬盤這些,我們都可以通過這里找到對(duì)應(yīng)的設(shè)備列表(圖23)。
例如我們要直通的是網(wǎng)卡,可以在“PCIEDevicesandIOMMUGroups”中找到“EthernetController”字樣的設(shè)備,這便是網(wǎng)卡。記錄其中的設(shè)備ID代碼,如圖中的[8086:15b8](圖24)。
主界面點(diǎn)擊“Main”選項(xiàng)卡,點(diǎn)擊UNRAID USB閃存盤進(jìn)入(圖25)。
在“Syslinux configuration”處,找到“UNRAIDOS”下,填寫“ vfio-pci.ids= 8086:15b8”即之前記錄的硬件設(shè)備ID。如果是多設(shè)備直通,則需要用英文半角的逗號(hào)來(lái)隔開每個(gè)設(shè)備的ID(圖26)。
這樣一來(lái),硬件設(shè)備就直通成功了,后期我們建立虛擬機(jī)的時(shí)候,就可以直接使用這些直通過的設(shè)備,勾選即可(圖27)。
直通硬盤和直通PC I e設(shè)備還有些許不同,在主界面如果安裝有Unassigned Devices時(shí)可以直接看到硬盤設(shè)備,這個(gè)硬盤設(shè)備是不在UNR AID的磁盤陣列中的。然后,我們使用UNR A I D自帶的終端(類似Windows的CMD命令提示符)輸入代碼:ls /dev/disk /by-id,終端將顯示硬盤的設(shè)備ID,例如“t10.ATA_ _ _ _ _StorageWorkshop _eMLC_TAG8E2F_128G_MSATA”,我們要記住這個(gè)ID名稱。之后在建立虛擬機(jī)時(shí),添加硬盤的位置就可以選擇“Manual”然后輸入“ /dev/disk/by-id/”命令+硬盤設(shè)備ID即可(圖28)。
準(zhǔn)備就緒,我們將開始建立一個(gè)虛擬機(jī),這才是UNRAID的精髓所在,通過虛擬機(jī)的建立,加之硬件直通的功能,我們將極大化豐富UNRAID的應(yīng)用場(chǎng)景,可以做到真正的一機(jī)多用。
首先在主界面,點(diǎn)擊“VMS”選項(xiàng)卡,切換到虛擬機(jī)建立頁(yè)面(圖29)。
在頁(yè)面中分別設(shè)置虛擬機(jī)的名字、CPU調(diào)用核心數(shù)、內(nèi)存分配等等。注意如果是直通硬盤,可以在“2andvDiskLocation”處選擇“Manual”,然后填寫剛剛提到的直通硬盤命令即可。而“PrimaryvDiskLocation”處,則應(yīng)該是虛擬機(jī)的鏡像文件,并非直通設(shè)備,這一點(diǎn)要特別留意;網(wǎng)卡的直通我們之前講到過了,這里也就不在多提(圖30)。
設(shè)置完成后,我們就可以啟動(dòng)虛擬機(jī)了。當(dāng)然,部分虛擬機(jī)還需要在建立后修改XML文件的配置才可以,否則有報(bào)錯(cuò)的可能,主要集中在使用虛擬網(wǎng)卡及多網(wǎng)口網(wǎng)卡上,這部分有需求的讀者可以搜索網(wǎng)絡(luò),限于篇幅,這里就不多提及了。UNRAID的應(yīng)用方向非常多遠(yuǎn),也是今年以來(lái)非常受推崇的系統(tǒng),它的優(yōu)點(diǎn)在于集合了NAS和虛擬機(jī)專用系統(tǒng)的諸多特性,而且由于Docker的加持,變得可玩性、可用性更為豐富。