段 勇
(天津海河傳媒中心 天津 300072)
隨著信息時(shí)代的到來(lái),科技的進(jìn)步推動(dòng)著廣電行業(yè)的技術(shù)革新,節(jié)目制作的方式與計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的聯(lián)系越來(lái)越緊密,虛擬化、5G、4K等高新技術(shù)越來(lái)越多地被應(yīng)用于電視節(jié)目制作。云架構(gòu)的非編制作網(wǎng)是節(jié)目制作的主要工具,而從網(wǎng)絡(luò)架構(gòu)上來(lái)講,存儲(chǔ)是非編制作網(wǎng)的核心,媒體文件、包裝素材和數(shù)據(jù)庫(kù)信息都保留在存儲(chǔ)上。因此,存儲(chǔ)的讀寫(xiě)速度和安全性就成為了重中之重。天津廣播電視臺(tái)的新聞云系統(tǒng)和綜合云系統(tǒng)均部署了EMC公司的Isilon x410集群存儲(chǔ),多節(jié)點(diǎn)的冗余設(shè)計(jì)保證了讀取的帶寬和數(shù)據(jù)的安全性,SnapShot(快照)機(jī)制更是在邏輯層面提高了保險(xiǎn)系數(shù)。下文將對(duì)Isilon x410存儲(chǔ)的安全機(jī)制、SnapShot的數(shù)據(jù)保護(hù)機(jī)制和系統(tǒng)運(yùn)維中的情況加以論述。
天津廣播電視臺(tái)的新聞云和綜合云系統(tǒng)均部署了EMC公司的Isilon x410集群存儲(chǔ),由11個(gè)存儲(chǔ)節(jié)點(diǎn)組成,設(shè)計(jì)為8+3的冗余模式。11個(gè)存儲(chǔ)節(jié)點(diǎn)內(nèi)部由infiniband交換機(jī)級(jí)聯(lián),保證數(shù)據(jù)和冗余校驗(yàn)信息在節(jié)點(diǎn)之間交互,每個(gè)節(jié)點(diǎn)都可通過(guò)萬(wàn)兆光纖線連接核心服務(wù)器和站點(diǎn),提高了訪問(wèn)速度,也在硬件層面上保證了數(shù)據(jù)的安全性。SnapShot快照鏡像機(jī)制則在文件系統(tǒng)層面對(duì)數(shù)據(jù)形成保護(hù),避免了人為誤刪除操作和數(shù)據(jù)交互時(shí)的錯(cuò)誤信息。
EMC的OneFS體系中SnapShot快照就是在集群存儲(chǔ)的特定位置存放數(shù)據(jù)的邏輯指針,它指向集群上所有的數(shù)據(jù)目錄及其子目錄[1]。如果集群存儲(chǔ)中的數(shù)據(jù)被修改,即用戶對(duì)數(shù)據(jù)進(jìn)行讀/寫(xiě)/刪等操作,則 快照文件所對(duì)應(yīng)的物理副本也會(huì)被修改??煺瘴募膭?chuàng)建規(guī)則是OneFS系統(tǒng)(集群存儲(chǔ)管理系統(tǒng))自動(dòng)生成或用戶根據(jù)實(shí)際使用情況預(yù)先設(shè)定好,若要?jiǎng)?chuàng)建和管理快照,則必須在系統(tǒng)中激活SnapShotIQ(快照管理模塊)授權(quán),但部分應(yīng)用在不激活SnapShotIQ的情況下也可正常運(yùn)行,只不過(guò)無(wú)法啟用數(shù)據(jù)恢復(fù)功能。通常在集群存儲(chǔ)中的快照文件是系統(tǒng)自動(dòng)創(chuàng)建的,且根據(jù)預(yù)設(shè)的Operation Jobs(系統(tǒng)作業(yè))可自動(dòng)刪除,節(jié)省磁盤(pán)空間。每一個(gè)快照文件都由OneFS自動(dòng)分配數(shù)字標(biāo)識(shí)符。
OneFS快照具有高度可擴(kuò)展性,通常只需不到1s的時(shí)間即可完成創(chuàng)建,且無(wú)論文件系統(tǒng)是什么級(jí)別、數(shù)據(jù)和目錄是什么量級(jí)都不會(huì)過(guò)多消耗磁盤(pán)和網(wǎng)絡(luò)資源。相對(duì)于傳統(tǒng)的拷貝方式備份數(shù)據(jù),快照文件是引用數(shù)據(jù)的指針,并不是實(shí)體文件的1∶1拷貝,更新快照時(shí)僅記錄數(shù)據(jù)文件的變化量,從而保證了高效的備份效率和存儲(chǔ)利用率。只有當(dāng)數(shù)據(jù)發(fā)生改變時(shí),如刪除、修改、重命名等,快照文件的大小才會(huì)發(fā)生變化,快照將存儲(chǔ)原始數(shù)據(jù)的只讀副本。用戶通過(guò)訪問(wèn)隱藏目錄/.snapshot來(lái)讀取快照文件。數(shù)據(jù)從一個(gè)物理設(shè)備遷移至另一個(gè)物理設(shè)備所需的時(shí)間取決于所遷移的數(shù)據(jù)量,同時(shí)快照文件是即時(shí)創(chuàng)建的,以保證數(shù)據(jù)的絕對(duì)安全。應(yīng)注意快照是針對(duì)數(shù)據(jù)指針進(jìn)行操作,如果由于硬件故障或文件系統(tǒng)故障導(dǎo)致數(shù)據(jù)丟失,則快照不能用于恢復(fù)數(shù)據(jù)。因此,快照機(jī)制只對(duì)文件系統(tǒng)層面之上的數(shù)據(jù)安全有效[2]。OneFS系統(tǒng)針對(duì)不同場(chǎng)景的數(shù)據(jù)變化使用CoW(寫(xiě)時(shí)復(fù)制)和RoW(寫(xiě)時(shí)重定向)2種策略來(lái)實(shí)現(xiàn)差分快照功能,并根據(jù)數(shù)據(jù)的變化方式動(dòng)態(tài)選擇最優(yōu)解決方案。CoW應(yīng)用最為普遍,主要用于少量數(shù)據(jù)變化,而RoW 則是在數(shù)據(jù)刪除和大量順序?qū)懭氲倪^(guò)程中獲得最大收益。
快照機(jī)制的優(yōu)點(diǎn)有:①快照是在目錄級(jí)別而不是卷級(jí)別創(chuàng)建的,因而備份的顆粒度很小;②支持Windows卷快照管理,Windows客戶端可以恢復(fù)到之前的版本;③OneFS系統(tǒng)中不需要為快照分配空間,快照機(jī)制可以根據(jù)數(shù)據(jù)的變化量使用盡可能少的文件系統(tǒng)空間;④OneFS采用靈活的策略和計(jì)劃任務(wù)可以輕松管理快照;⑤使用SmartPools(智能存儲(chǔ)池)可在物理磁盤(pán)上同時(shí)存儲(chǔ)快照和原始數(shù)據(jù);⑥每個(gè)目錄最多可以創(chuàng)建1024個(gè)快照,且沒(méi)有存儲(chǔ)或文件系統(tǒng)的限制。
天津廣播電視臺(tái)新聞云和綜合云系統(tǒng)的Isilon存儲(chǔ)都啟用了SnapShot快照功能,可自動(dòng)備份存儲(chǔ)中被修改的文件的物理副本,同時(shí)在計(jì)劃任務(wù)中設(shè)定快照文件的生成和刪除任務(wù),預(yù)設(shè)為每日22:00自動(dòng)刪除原有快照文件。當(dāng)存儲(chǔ)上的數(shù)據(jù)發(fā)生更改時(shí)又會(huì)創(chuàng)建一個(gè)新的快照文件,如圖1和圖2所示。
圖1 SnapShot快照文件Fig.1 SnapShot file
圖2 Operation Job計(jì)劃任務(wù)Fig.2 Operation Job schedule tasks
1.2.1 創(chuàng)建快照文件
可以使用SnapShotIQ來(lái)創(chuàng)建快照,也可以手動(dòng)創(chuàng)建快照文件或通過(guò)預(yù)先設(shè)定的快照計(jì)劃來(lái)自動(dòng)創(chuàng)建。用戶可以運(yùn)行isi snapshot schedules create命令來(lái)創(chuàng)建一個(gè)快照計(jì)劃,同時(shí)可以運(yùn)行isi snapshot snapshots create命令創(chuàng)建一個(gè)快照文件。這里需注意快照計(jì)劃中快照文件的生成頻率必須間隔24h[3]。天津廣播電視臺(tái)的新聞云和綜合云系統(tǒng)均設(shè)置為根據(jù)快照計(jì)劃自動(dòng)創(chuàng)建快照文件。每晚22:00進(jìn)行文件分析作業(yè),然后刪除上一個(gè)時(shí)間點(diǎn)的快照文件,再創(chuàng)建一個(gè)新的快照文件。
數(shù)據(jù)采集模塊采集制造數(shù)據(jù)并存放在擴(kuò)展名為.log的文件中。在進(jìn)行離線分析時(shí),首先要對(duì)文件進(jìn)行分析,提取出關(guān)鍵參數(shù)并存放到數(shù)據(jù)庫(kù)中。文件部分格式如下:
1.2.2 快照文件的管理
根據(jù)實(shí)際業(yè)務(wù)需求,一般來(lái)說(shuō)參照存儲(chǔ)的應(yīng)用類(lèi)型、使用頻率和網(wǎng)絡(luò)帶寬等因素,用戶可以對(duì)快照進(jìn)行查看、刪除或修改名稱、別名和持續(xù)時(shí)間等屬性。但由于快照文件是只讀屬性,不可以修改快照所包含的任何數(shù)據(jù)。
快照文件的大小指的是釋放存儲(chǔ)空間量的上限值,當(dāng)同一個(gè)目錄或文件生成了多個(gè)快照時(shí),若只刪除一個(gè)快照并不能釋放預(yù)期的存儲(chǔ)空間,只會(huì)刪除當(dāng)前快照所占的很小一部分空間。若要全部釋放存儲(chǔ)空間,必須刪除此目錄生成的全部快照文件。我們知道快照文件保存的是目錄的改變情況,但如果用戶刪除目錄再重新創(chuàng)建,就算新創(chuàng)建的目錄和之前的目錄沒(méi)有變化,快照文件也將記錄此次數(shù)據(jù)改變情況,并且是整個(gè)目錄的改變。同時(shí)在存儲(chǔ)空間的釋放量上,刪除同一個(gè)目錄的多個(gè)快照比不同目錄的多個(gè)快照要大。針對(duì)同一目錄生成的快照文件,刪除時(shí)間點(diǎn)較早的快照文件更能釋放存儲(chǔ)空間。刪除快照文件可以通過(guò)SnapShotDelete作業(yè)(快照刪除作業(yè))來(lái)進(jìn)行,即通過(guò)運(yùn)行isi job jobs start snapshotdelete命令來(lái)執(zhí)行。也可以手動(dòng)刪除特定快照,即通過(guò)運(yùn)行isi snapshot snapshots delete +快照名的命令來(lái)執(zhí)行。
查看快照文件可以通過(guò)運(yùn)行isi snapshot snapshots list命令實(shí)現(xiàn),輸出內(nèi)容包括快照ID、快照名稱和快照路徑信息。若要查看用戶指定快照的詳細(xì)信息,則可以通過(guò)運(yùn)行isi snapshot snapshots view +快照名的命令來(lái)實(shí)現(xiàn)。
1.2.3 快照數(shù)據(jù)的恢復(fù)
用戶可以通過(guò)快照目錄來(lái)恢復(fù)數(shù)據(jù),可以克隆和拷貝快照目錄中的文件,可以通過(guò)Windows資源管理器或Unix命令來(lái)訪問(wèn)快照目錄。我們可以在特定目錄創(chuàng)建SnapRevert(快速恢復(fù))域,然后運(yùn)行isi snapshot snapshots view命令來(lái)查看快照信息,最后運(yùn)行isi job jobs start snaprevert–快照ID命令來(lái)恢復(fù)快照。
我們可以從快照中克隆文件,首先通過(guò)任意節(jié)點(diǎn)的SSH(安全shell)協(xié)議連接到集群管理系統(tǒng),然后通過(guò)“cd”命令進(jìn)入快照所在目錄和通過(guò)“l(fā)s”命令查看快照內(nèi)容,最后通過(guò)“cp”命令拷貝所需文件。
1.2.4 快照文件的刪除
快照計(jì)劃是OneFS系統(tǒng)管理快照文件的有效手段,可設(shè)定快照文件的生成時(shí)間、命名規(guī)則和刪除機(jī)制。對(duì)快照計(jì)劃的任何更改僅對(duì)新創(chuàng)建的快照文件有效,不會(huì)影響現(xiàn)有快照。我們可以對(duì)快照計(jì)劃進(jìn)行修改、刪除和查看操作。
1.3.1 修改快照計(jì)劃
對(duì)快照計(jì)劃的修改只會(huì)影響之后生成的快照文件,不會(huì)對(duì)當(dāng)前快照文件產(chǎn)生任何影響。例如當(dāng)用戶修改了快照計(jì)劃的別名后,則此別名會(huì)分配給新生成的快照文件使用,而不會(huì)改變之前快照文件的別名,之前的快照的別名可以手動(dòng)修改。我們可以通過(guò)運(yùn)行命令isi snapshot schedules modify來(lái)對(duì)快照計(jì)劃進(jìn)行修改,包括刪除快照文件的期限等信息。
1.3.2 刪除快照計(jì)劃
首先明確的是刪除快照計(jì)劃不會(huì)影響快照文件,不會(huì)刪除在此快照計(jì)劃之前生成的任何快照文件。我們可以通過(guò)運(yùn)行isi snapshot schedules delete命令來(lái)刪除快照計(jì)劃。
1.3.3 查看快照計(jì)劃
用戶可以通過(guò)運(yùn)行isi snapshot schedules list命令來(lái)查看快照計(jì)劃的屬性,包括快照計(jì)劃的ID和名稱。也可以通過(guò)運(yùn)行isi snapshot schedules view命令來(lái)查看特定快照計(jì)劃的詳細(xì)屬性。
日常運(yùn)行維護(hù)操作中用戶可以通過(guò)對(duì)快照計(jì)劃的配置來(lái)分配別名給最新的快照文件,當(dāng)然也可以手動(dòng)分配別名。
1.4.1 配置快照計(jì)劃中的快照別名
如果配置快照計(jì)劃的別名,則此別名只對(duì)新生成的快照文件起作用,對(duì)此時(shí)間點(diǎn)之前的快照文件無(wú)效,我們可以通過(guò)運(yùn)行isi snapshot schedules modify命令來(lái)實(shí)現(xiàn)。
1.4.2 為快照分配別名
可以通過(guò)運(yùn)行isi snapshot aliases create +別名的命令來(lái)實(shí)現(xiàn)。
1.4.3 查看快照別名
用戶只能使用CLI(命令行界面)來(lái)完成,通過(guò)運(yùn)行isi snapshot aliases list查看快照別名列表,然后運(yùn)行isi snapshot aliases list命令來(lái)查看特定的信息。
在SnapShotIQ配置中用戶可以選擇快照的創(chuàng)建方式和訪問(wèn)快照文件的方法??梢酝ㄟ^(guò)運(yùn)行isi snapshot settings view命令來(lái)查看SnapShotIQ的配置,然后運(yùn)行 isi snapshot settings modify命令配置SnapshotIQ設(shè)置。
天津廣播電視臺(tái)新聞云和綜合云已經(jīng)穩(wěn)定運(yùn)行了4年,Isilon存儲(chǔ)在數(shù)據(jù)的穩(wěn)定讀寫(xiě)和安全性上均表現(xiàn)良好??煺諜C(jī)制有效保障了數(shù)據(jù)的安全性,且快照計(jì)劃的自動(dòng)化管理也使得存儲(chǔ)空間得到了合理利用,由于無(wú)需過(guò)多的人工干預(yù),從軟件層面上徹底避免了數(shù)據(jù)丟失的情況發(fā)生。文章詳述了Isilon存儲(chǔ)的快照保護(hù)機(jī)制,供相關(guān)行業(yè)專業(yè)技術(shù)人員參考。